Unit-test a Seedance 2.5 cost estimator against six billed amounts
Your own cost estimate for Seedance 2.5 should match what Sume bills to the micro-dollar. A Python assert test with six known amounts from 480p to 1080p 30 s.

If your app shows a price before the user clicks generate, test it against known billed numbers. Sume's Seedance cost is deterministic: tokens = ceil(width x height x seconds x 24 / 1024), then the provider list micros are ceil(tokens x rate / 1000), then Sume bills that x 1.25. The list rate for seedance-2.5 is 21,400 micros per 1,000 tokens, and 23,400 at 1080p. At 9:16, 480p is 496x864, 720p is 720x1280 and 1080p is 1080x1920.
The script asserts six cases. All six passed on Python 3.14.7.
| Resolution | Ratio | Seconds | Billed (USD) |
|---|---|---|---|
| 480p | 9:16 | 5 | $1.343385 |
| 720p | 9:16 | 5 | $2.889 |
| 720p | 9:16 | 15 | $8.667 |
| 1080p | 9:16 | 5 | $7.10775 |
| 1080p | 9:16 | 15 | $21.32325 |
| 1080p | 16:9 | 30 | $42.6465 |
The test
Golden values are in integer micro-dollars, so the comparison is exact and floating-point rounding cannot hide a drift. 9:16 and 16:9 give the same token count.
import math
DIMS = {("480p", "9:16"): (496, 864), ("720p", "9:16"): (720, 1280),
("1080p", "9:16"): (1080, 1920), ("1080p", "16:9"): (1920, 1080)}
def micros(model, res, ratio, secs):
w, h = DIMS[(res, ratio)]
rate = 23400 if (model, res) == ("seedance-2.5", "1080p") else 21400
tokens = math.ceil(w * h * secs * 24 / 1024)
return math.ceil(math.ceil(tokens * rate / 1000) * 1.25)
GOLDEN = { # Sume billable USD micros, packages/provider-pricing golden-amounts
("480p", "9:16", 5): 1343385, ("720p", "9:16", 5): 2889000,
("720p", "9:16", 15): 8667000, ("1080p", "9:16", 5): 7107750,
("1080p", "9:16", 15): 21323250, ("1080p", "16:9", 30): 42646500,
}
for (res, ratio, secs), want in GOLDEN.items():
got = micros("seedance-2.5", res, ratio, secs)
assert got == want, (res, ratio, secs, got, want)
print(f"{res} {ratio} {secs:>2}s ${got / 1e6:.6f} ok")Keep it honest
A passing test only proves your formula matches these six; add a case whenever a new resolution or model appears, and re-read the pricing page, because rates change. The estimate is a preview. The next post compares it with the cost the job reports.
Sources
Related posts
More in Pricing
- Upscale 15 minutes of footage at $0.009 a second: $8.10 on Sume
Sume video upscale is $0.009 per video second: 15 minutes costs $8.10 and an hour $32.40. One $0.20 image upscale equals 22 seconds of video.
- Is a keyframe trim cheaper than an exact trim? Both are $0.02 a job
Sume video trim lists one rate per job for exact and keyframe precision. What differs is accuracy, re-encoding and the output conform fields.
- Wan 3.0 30 s at 1080p: Alibaba's $6.00 example vs $7.50 on Sume
Alibaba's Wan 3.0 launch post prices a 30 s 1080P video at $6.00 and a 480P draft at $1.50. On Sume the same clips bill $7.50 and $1.875.
- Wan 3.0 bumper prices: 2 to 6 seconds at 480p, 720p, 1080p
A 2-second Wan 3.0 bumper costs $0.125 at 480p and $0.50 at 1080p on Sume. A 6-second one costs $0.375 to $1.50.
Written by Sume