Write a 30-second Seedance 2.5 prompt as six five-second beats
One 30-second Seedance 2.5 request needs a prompt with a timeline. Split the idea into six beats, keep one subject, and send it as a single Sume job.

To get a coherent 30-second clip from Seedance 2.5, write the prompt as an ordered list of about six five-second beats, name the subject once, and keep the camera language consistent. Then send it as one seedance-2.5 job with duration: 30. ByteDance describes the model as producing 4 to 30 second clips natively, so there is no stitching step to plan around.
This post is a prompt-writing practice, not a vendor rule: the BytePlus prompt guide could not be read as plain text on 2026-10-04, so nothing here claims official syntax. Treat it as a structure to test.
Why beats instead of one long paragraph
A 30-second request gives the model far more time to wander than a 5-second one. A paragraph that describes a mood leaves the middle of the clip undefined. A beat list pins what must be on screen at roughly each five-second mark, and it gives you something to check against when you review the result.
BytePlus markets the model for "30-second cinematic narrative" work and lists film, advertising, e-commerce and previsualization among its use cases (BytePlus: Dreamina Seedance 2.5). A narrative needs a start, a turn and an end, which is what a beat sheet encodes.
A six-beat template
Keep each beat to one action and one camera instruction. Put the subject description first and do not rename it later.
- Beat 1 (0-5 s): establishing shot, subject enters, steady camera.
- Beat 2 (5-10 s): subject starts the main action, camera pushes in slowly.
- Beat 3 (10-15 s): detail close-up of the product or face, same lighting.
- Beat 4 (15-20 s): wider shot showing the result of the action.
- Beat 5 (20-25 s): second action or reaction, same location.
- Beat 6 (25-30 s): resolve on a clean final frame you could caption.
The request on Sume
On the Video Router, seedance-2.5 accepts 4 to 30 seconds at 480p, 720p and 1080p. duration is a whole number of seconds. The example below drafts the idea at 480p first; raise resolution only after the beats read well.
curl -X POST https://api.sume.com/v1/video-router/generate \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: beat-sheet-001" \
-d '{
"model": "seedance-2.5",
"prompt": "A baker in a small kitchen. 0-5s: wide shot, she enters and ties her apron. 5-10s: she kneads dough, slow push-in. 10-15s: close-up of flour on her hands. 15-20s: tray of loaves into the oven. 20-25s: she checks the oven window. 25-30s: loaves on a rack, steam rising.",
"resolution": "480p",
"duration": 30,
"aspect_ratio": "16:9",
"mode": "async"
}'What a draft costs before you commit
The price table below is computed from Sume's token-based pricing: width x height x seconds x 24 / 1024 tokens, at the Seedance 2.5 list rate, times Sume's 1.25 margin (Video Router states the 1.25 factor). Read the live number from GET /v1/video-router/models before you budget.
| Resolution | 30 s clip | 4 s probe |
|---|---|---|
| 480p | $8.06 | $1.07 |
| 720p | $17.33 | $2.31 |
| 1080p | $42.65 | $5.69 |
Review the result against the beats
Pull stills at 2.5, 7.5, 12.5, 17.5, 22.5 and 27.5 seconds with video frames (the clip must already be stored on media.sume.com, so import a downloaded MP4 first) and check one question per still: is the action of that beat visible? If beats 3 and 4 collapse into one, shorten the prompt rather than adding words.
Sume does not promise any beat will land; the model is probabilistic and the docs list no seed parameter to repeat a take. Budget a second attempt, and see the single continuous take prompt if you want no cuts at all.
Sources
Related posts
More in Developers
- Seedance 2.5 720p on fal, 1080p on Sume: read the catalog
fal lists Seedance 2.5 Image to Video at up to 720p and 30 seconds. Sume docs list seedance-2.5 at 4-30 s and 480p/720p/1080p. Check the catalog before pinning.
- Seedance 2.5 camera move test grid: six 4-second probes at 480p
Test dolly, orbit, crane, handheld, whip-pan and static camera prompts with six 4-second Seedance 2.5 probes at 480p for about $6.45 before a 30 s run.
- Seedance 2.5 vendor terms mapped to Sume request fields
How ByteDance and BytePlus terms for Seedance 2.5 map to Sume Video Router fields: references, first and last frame, audio, and the limits that differ.
- Tag Sentry events with the Sume job id and error category in Python
When a Sume job fails, set sume.job_id and sume.error_category with sentry_sdk.set_tag so one search finds the event, the job and the retryable flag.
Written by Sume