SEEDANCE25APIINDEPENDENT
FIELD NOTES / TUTORIAL

Inside Seedance 2.5's Reference System: How Image, Video and Audio References Actually Work

Seedance 2.5’s reference system is one of its most powerful and least understood features. Most people either ignore references entirely or dump files in and hope. The community cases in EvoLink’s open guide show a third way: references as a deliberate crew, each file with a job. The point isn’t to max out slots — it’s to give the model exactly the anchors it needs.

Note up front: Seedance 2.5 is pre-release and provider-mediated. The limits and behavior below reflect the expected design; verify support with your provider before you build on them. This is an independent guide — EvoLink is our recommended provider, and we are not affiliated with ByteDance.

The real reference budget

References are split by type, and each type has its own per-request ceiling:

TypeRequest fieldExpected max per request
Imageimage_urlsup to 30
Videovideo_urlsup to 10
Audioaudio_urlsup to 10

These are separate budgets, not one combined pool — spending image slots doesn’t reduce how many video or audio references you can attach. In practice most shots use far fewer than the ceiling; the headroom exists so multi-character, multi-constraint work stops being a compromise.

How references enter the prompt

References aren’t a side channel — they’re cited inline. Prompts write markers like «image_1_1» exactly where that file’s content should govern:

“…the camera steadily follows a man in a black coat (refer to «image_1_1»)…”

This is the crucial mental shift: you don’t describe the coat, the face, the location — you point at them. Words carry the direction; files carry the nouns. Prompts get shorter and outputs get more consistent at the same time. Video and audio references work the same way, using matching «video_x_y» and «audio_x_y» markers.

How to spend each budget

Across multi-reference cases, allocation follows a clear economy. Think per type:

JobTypeTypical countWhat it locks
Character identityimage2–3 per characterFace, wardrobe, proportions across the whole take
Location & setimage2–4Environment, architecture, dressing
Palette & gradeimage1–2Color world, lighting mood
Camera grammarvideo1–2 clipsThe move itself — a short clip beats a paragraph
Rhythmaudio1 filePacing, beat structure, cut timing

Notice what image references add up to for a two-character narrative scene: identity alone can eat 4–6 of the 30 image slots. That headroom is exactly what earlier, tighter budgets couldn’t offer — you can keep product, palette and mascot honest from opening gag to packshot, or carry multilingual signage so on-screen text renders as language rather than alphabet soup, all without trading one anchor for another. And because video and audio ride separate budgets, adding a camera clip or a rhythm track never costs you an image slot.

The workflow that keeps it debuggable

The mistake that burns time is loading all references at once. When a many-file generation goes wrong, every file is a suspect. A layered sequence keeps failures diagnosable, and it matches what we’ve found generating for this site:

  1. Prompt-only drafts first at a launch resolution (480p or 720p) until composition and motion are right
  2. Add image identity references and confirm characters hold
  3. Add the camera-move video clip and confirm the move transfers
  4. Add audio last — rhythm is the finishing layer, not the foundation

One layer per run means every failure has one suspect. Draft at a low resolution and short duration first, then commit references once the shot is working — Seedance 2.5 supports an expected duration range of roughly 4–30 seconds, and native audio is generated in a single pass at no extra charge.

Reference quality rules

From comparing inputs to outputs:

  • Multiple angles beat one perfect shot. Two or three views of a character locks identity far better than a single hero image — and with up to 30 image slots, you have room for them.
  • Clean references transfer clean. A camera-move clip with its own busy subject bleeds content, not just movement; the best reference clips are notably plain.
  • Don’t re-describe what you reference. Contradictions between the file and prose about the file resolve unpredictably — cite the marker and stop talking.

Try the economy yourself

Read how each marker is placed in the prompt library, then rebuild a two-character version of your own shot: say 6 image slots for identity, 3 for location, 1 for palette, plus 1 camera video clip and 1 audio track. That’s well inside every budget, with plenty of headroom on all three types. Set it up in the playground to preview before you roll, and if you’re driving this from code, the reference fields (image_urls, video_urls, audio_urls) take plain URLs — see the API guide for the request shape and the seedance-2.5-reference-to-video model id (pre-release, configurable).

Q&AQUICK ANSWERS
Q.01How many reference files can Seedance 2.5 take?
The expected per-request limits are up to 30 image references, 10 video references and 10 audio references — each type has its own budget rather than one combined pool. Most cases use only a handful; more slots only help if each one has a job. Seedance 2.5 is pre-release, so confirm limits with your provider before production.
Q.02What does the «image_x_y» notation in prompts mean?
It's how prompts cite an attached file inline — the marker slots a specific reference into a specific place in the instruction, instead of re-describing the file in words. Video and audio references use matching «video_x_y» and «audio_x_y» style markers.
Q.03Do more references make generations more expensive?
References are inputs and are not expected to carry a separate per-reference fee — billing is per second of output. Public rates are not published yet, so treat pricing as pending. The real cost of over-referencing is debuggability, not dollars.