Skip to content
RU

Seedance 2.0

Seedance 2.0 (bytedance/seedance-2.0) is ByteDance’s flagship video model: strong character consistency, frame transitions, native audio. The family also has a fast tier, Seedance 2.0 Fast (bytedance/seedance-2.0-fast) — cheaper and quicker, for drafts and iteration; the parameters and sizes are the same across tiers. Generation is asynchronous: POST /v1/videos returns a job, then you poll the status and download the mp4.

Field Description
model bytedance/seedance-2.0 (the short seedance-2.0; the alias seedance) or bytedance/seedance-2.0-fast
prompt Scene description, required
seconds One of 5, 10, 15; defaults to 5
size A WxH size from the table below; defaults to 1280x720
input_reference Image-to-video: one image as the starting frame, {"image_url": "data:image/...;base64,..."}
input_references Reference-to-video: 2 to 9 images as an array, also data: URLs only
seed Reproducibility seed: an integer in 0…2147483647. The same prompt with the same seed yields the same clip; without it the upstream picks a random one

Nine allowed sizes — three aspect ratios at three resolutions:

Aspect 480p 720p 1080p
16:9 852x480 1280x720 1920x1080
9:16 480x852 720x1280 1080x1920
1:1 480x480 720x720 1080x1080

A value outside the list returns 400 with the allowed options listed — check the sizes field in the catalog when in doubt.

import requests
job = requests.post(
"https://api.mixen.ai/v1/videos",
headers={"Authorization": f"Bearer {API_KEY}"},
json={
"model": "bytedance/seedance-2.0",
"prompt": "A girl walks through an evening market, garland lights reflected in shop windows, the camera follows alongside",
"seconds": "10",
"size": "1280x720",
},
).json()
print(job["id"], job["status"])

The image goes in as a single data: URL — external links are not accepted:

import base64
import requests
with open("scene.jpg", "rb") as f:
img = "data:image/jpeg;base64," + base64.b64encode(f.read()).decode()
job = requests.post(
"https://api.mixen.ai/v1/videos",
headers={"Authorization": f"Bearer {API_KEY}"},
json={
"model": "bytedance/seedance-2.0",
"prompt": "The camera pulls back slowly as the hero takes in the panorama, even motion",
"seconds": "5",
"size": "1280x720",
"input_reference": {"image_url": img},
},
).json()
print(job["id"], job["status"])

Two to nine references: the model assembles the scene while keeping the characters and style of the inputs. To rough out the same scene cheaper, run bytedance/seedance-2.0-fast:

{
"model": "bytedance/seedance-2.0-fast",
"prompt": "The character from the first frame gets into the car from the second, a night courtyard",
"seconds": "5",
"size": "1280x720",
"input_references": [
"data:image/png;base64,iVBORw0...",
"data:image/png;base64,iVBORw0..."
]
}

From there it is the usual loop: GET /v1/videos/{id} every 5–10 seconds until completed, then GET /v1/videos/{id}/content for the mp4. Full cycle — video guide.

Billing is per second and depends on the resolution. Seedance 2.0: 480p — 8.9922 ₽ ($0.1009) per second, 720p — 20.2144 ₽ ($0.2268), 1080p — 45.4823 ₽ ($0.5103). Fast is roughly 40% cheaper at the same parameters: 480p — 5.3948 ₽ ($0.0605), 720p — 12.1286 ₽ ($0.1361), 1080p — 27.2894 ₽ ($0.3062). You are charged actual duration × the size’s rate. Current prices — catalog.

The family also includes the budget Seedance 2.0 Mini (bytedance/seedance-2.0-mini): short clips of 4–15 seconds, seven frame formats, only 480p and 720p, with references and the first-to-last frame transition; 480p — 4.4996 ₽ ($0.0505) per second, 720p — 10.1072 ₽ ($0.1134).

  • Strong character consistency: the same hero holds up across frames and references.
  • The first-to-last frame transition is available in the web cabinet and the bot; over /v1 only the starting frame can be passed.
  • Native audio in the finished clip — no separate voiceover needed.
  • Image-to-video from a starting frame and reference-to-video from 2–9 images.
  • Three resolutions up to 1080p, but only three frame formats: 16:9, 9:16, 1:1. For the cinematic 21:9 and durations up to 30 seconds — Seedance 2.5.
  • Durations are fixed: only 5, 10, or 15 seconds — no continuous range like Seedance 2.5’s.

All models — in the catalog. The general video workflow — video guide.