9-second vertical story ad on Seedance 2.5, and the marginal second
A 9-second 9:16 Seedance 2.5 clip costs $2.42 at 480p, $5.20 at 720p and $12.79 at 1080p on Sume.

A 9-second 9:16 Seedance 2.5 clip costs $2.42 at 480p, $5.20 at 720p and $12.79 at 1080p on Sume. Seedance 2.5 is token-priced from resolution, seconds and aspect ratio (read 2026-10-09), so an odd length like 9 seconds is a straight multiple of the per-second rate.
Price of a 9-second story, by resolution
Instagram and TikTok story slots are vertical, and 9 seconds sits between the two lengths most guides price (5 and 10). Seedance 2.5 accepts every whole second from 4 to 30, so you can buy exactly the length the edit needs.
| Resolution | Rate per second (9:16) | 9 s at 9:16 | 9 s at 16:9 |
|---|---|---|---|
| 480p | $0.2687 | $2.42 | $2.42 |
| 720p | $0.5778 | $5.20 | $5.20 |
| 1080p | $1.4216 | $12.79 | $12.79 |
Submit a 9:16 clip
Set aspect_ratio to 9:16 and duration to 9. The same body works on POST /v1/videos with any of the three resolutions; only resolution changes the price by a large step.
import os, time, requests
API = "https://api.sume.com/v1/videos"
H = {"Authorization": "Bearer " + os.environ["SUME_API_KEY"]}
body = {"model": "seedance-2.5", "prompt": "Handheld shot of a barista pouring latte art, steam rising, warm window light", "duration": 9, "resolution": "720p", "aspect_ratio": "9:16"}
job = requests.post(API, headers={**H, "Idempotency-Key": "story-latte-001"}, json=body, timeout=60).json()
deadline = time.time() + 1800
while time.time() < deadline:
time.sleep(30)
job = requests.get(job["polling_url"], headers=H, timeout=60).json()
if job["status"] == "completed":
print(job["unsigned_urls"][0], job["usage"]["cost"])
break
if job["status"] in ("failed", "cancelled"):
print(job["status"], job.get("error"))
breakWhy 9 seconds, not 8 or 10
Eight seconds at 720p 9:16 costs $4.62 and ten seconds costs $5.78. Nine falls in between at $5.20. The step is $0.5778 for each added second at 720p, and $1.4216 at 1080p.
That marginal second matters when you trim a cut. If your edit runs long by one second, dropping to the next shorter length saves exactly that step, with no bucket to fall into.
A three-variant test at 480p costs $7.25. One 1080p final costs $12.79. The final is about 1.8 times the whole test round, which is why the draft stage should settle the concept first.
What to check
- 9:16 and 16:9 cost the same at 720p and 1080p for this length; 9:16 is not a discount, it is just the shape of the placement.
- Stories play on a phone, so 480p is a legitimate proof stage. Step up only for the clip you will publish.
- Going from 720p to 1080p multiplies the price by 2.46; going from 480p to 720p multiplies it by 2.15.
- A 3-second clip is below the 4-second floor and is rejected at submit with the supported list in the error details.
Sources
Related posts
More in Pricing
- Storyboard: 12 rough and 3 hero frames on three Sume image models
A 15-frame storyboard with 12 rough frames and 3 hero 4K frames costs $0.9645 on GPT Image 2.5, $1.50 on Nano Banana 2.1 and $3.375 on Nano Banana Pro.
- Image Router reserves 23 cents, catalog max $7.36: wallet needed
Sume's Image Router catalog row lists an estimate of 23 cents, a 1 cent minimum and a 736 cent maximum. What that means for wallet size and sume/auto.
- Sume video price = provider list x 1.25: Omni, H3, H3 Max, Recast
Provider list per second times 1.25 gives the Sume price: Omni 720p $0.10 becomes $0.125, H3 Max 768p $0.08 becomes $0.10. All 13 rows checked against the tool.
- 42-second talking still: image, voice, lip sync, $4.33 to $8.01
A 42-second talking still costs $4.3304 with MiniMax H3 Max Lip Sync (768p) and $8.0054 with VEED Fabric (720p), with the still and 640 characters of TTS.
Written by Sume