How to Use Seedance 2.5: Step-by-Step API & EvoLink Guide
The official Seedance 2.5 API is live. EvoLink access remains a separate provider route that requires account-level validation, so the paths below range from first-party apps to a guarded third-party API workflow. This is an independent guide and is not affiliated with ByteDance.
Route 1: first-party apps (Dreamina, CapCut)
ByteDance ships Seedance 2.5 inside its own creative apps. If you already pay for Dreamina or CapCut tiers and your region gains access, this can be the most integrated experience — generation, editing and publishing in one place. The catch: rollout is expected to be staged by region and tier, and heavy usage tends to run into tier limits quickly.
Route 2: the live EvoLink API
EvoLink is the third-party route this site recommends for Seedance 2.5. Its T2V, I2V, and R2V model IDs are live; create a key from the API quickstart, then check the current rate card and start with a short test. Keep the model configurable and retain Seedance 2.0 as rollback instead of copying its billing assumptions into 2.5.
Don’t want to write code? Two paths: set up your shot in our playground — write the prompt, pick duration and quality, and carry your settings over to EvoLink — or open any official case in the prompt library and send its full prompt and launch-tier settings straight into the EvoLink generator with one click. You can also drive it from an agent.
Pick the right workflow: what each model ID does
| Workflow | Model ID | Required inputs | Best for |
|---|---|---|---|
| Text-to-video | seedance-2.5-text-to-video | prompt | Prompt-only takes, the fastest starting point |
| Image-to-video | seedance-2.5-image-to-video | prompt + 1–2 frame images | Locking composition with a first (or first/last) frame |
| Reference-to-video | seedance-2.5-reference-to-video | prompt + at least one reference type | Character/product consistency, motion transfer, audio sync |
Two pitfalls worth knowing up front: the image-to-video prompt is required — you cannot submit frames alone — and its frame limit is 2 images. If you want more assets for consistency control, switch to reference-to-video instead of stuffing images into image-to-video.
The prompt itself caps at 10,000 tokens, with roughly 1,000 English words recommended in the route documentation — longer prompts don’t obey better, so spend the budget on precise camera language instead.
Writing the prompt: direct, don’t describe
The single biggest quality lever is prompting like a director rather than a wisher. Compare:
❌ “A beautiful city at sunset, cinematic, high quality”
✅ “Golden-hour drone pullback over a coastal city, anamorphic flare, slow dolly out over the harbor as streetlights flicker on”
The second prompt specifies camera (drone pullback, slow dolly out), light (golden hour, flare), and an event with timing (streetlights flicker on). Seedance 2.5 is expected to follow camera vocabulary well — whip-pan, rack focus, crane move, handheld shake are all worth writing explicitly.
A structure that tends to perform:
- Shot type + camera move — “macro lens push-in”, “handheld tracking shot”
- Subject + action — what happens, in sequence
- Light + atmosphere — “backlit steam”, “sodium streetlight”
- Style anchors — film stock, era, genre
Steal working examples with settings attached from the prompt library.
Using references
References are where public 2.5 product demonstrations stand out. The live reference-to-video route accepts up to 30 images, 10 videos, and 10 audio files per request — plan roles inside that budget:
| Reference type | What it locks | Documented route specs | Practical tip |
|---|---|---|---|
| Images (up to 30) | Characters, products, locations, palette | jpeg/png/webp, 300–6000px, ≤30MB each | A small approved identity set is easier to debug |
| Video clips (up to 10) | Camera moves, motion style, effects | mp4/mov, 2–30s each, ≤30s combined, ≤200MB each | Add one motion role at a time |
| Audio files (up to 10) | Tempo, rhythm, atmosphere | wav/mp3, 2–30s each, ≤30s combined, ≤15MB each | Use clean, rights-cleared source material |
References are submitted as URLs, not file uploads — make sure every link stays accessible for the task’s whole lifetime. Signed URLs that expire mid-render are one of the most common silent failure causes.
The workflow that works: start with prompt-only takes to find the shot, then add references one layer at a time — characters first, then camera move, then audio. Adding everything at once makes failures impossible to diagnose.
Duration, quality and audio: defaults and options
The route applies defaults when you omit a parameter — knowing them saves the “why is my clip 5 seconds” confusion:
| Parameter | Default | Options |
|---|---|---|
duration | 5 seconds | 4–30 seconds |
quality | 720p | 480p / 720p |
aspect_ratio | adaptive (follows input or prompt) | 16:9, 9:16, 1:1, 4:3, 3:4, 21:9, adaptive |
generate_audio | true | false outputs silent video |
content_filter | true | docs note ~10% surcharge when disabled; confirm in the console bill |
Two reminders: pass 9:16 explicitly for vertical content instead of trusting adaptive to guess, and switch generate_audio off in pipelines that dub audio in post — otherwise every take ships with a track you won’t use. Billing behavior still belongs to the console and the current documentation; keep route capabilities configurable.
Iterating without burning budget
Iterate on the live 2.5 route at its lowest-risk documented settings — short 480p drafts — and record cost per accepted output against the current console rate. Render the finished take at full length and tier only once the shot is locked, and check the rate card rather than assuming a billing formula. Seedance 2.0 stays configured as the rollback route, not the drafting route.
Common failure modes
- Morphing faces mid-take — add character reference images; don’t rely on the prompt.
- Dead camera — you didn’t specify a move. Static prompts get static shots.
- Audio out of sync with cuts — describe the sync explicitly (“lighting changes on each downbeat”) and provide the track as an audio reference.
Set up your first take in the playground, and verify provider support and pricing before you move to production.