Seedance 2.0 Fast is the faster, lower-cost variant of ByteDance's Seedance 2.0, released in February 2026 with the same request shape. It caps output at 480p and 720p and generates 4-15 second clips with optional generated audio. You can start from text, images, a first and last frame, or reference clips and audio, exactly as with the full model. The trade-offs are no 1080p or 4K and no automatic duration. It is the practical choice for drafts, previews and high-volume social content.
Best for
- Previsualizing a shot before rendering it on the full model
- Vertical social clips at 720p
- High-volume ad variations
- Testing prompts and references at lower cost
Prompting tips
- The request matches Seedance 2.0, so a draft that works can be re-rendered at higher resolution by changing only the model id.
- Set
durationexplicitly between 4 and 15; -1 is not available on Fast. - The default ratio is 16:9 here, so set 9:16 for Reels and TikTok.
- Turn
generate_audiooff when you plan to add your own soundtrack.
FAQ
How much does Seedance 2.0 Fast cost?
The rate is from $0.116 per second. Jantaris shows estimated_cost before the job runs and does not charge failed generations.
What resolution does Seedance 2.0 Fast support?
480p and 720p. For 1080p or 4K, use Seedance 2.0.
Does Seedance 2.0 Fast generate sound?
Yes. Audio generation is on by default and can be switched off with generate_audio: false.
How to call Seedance 2.0 Fast via API
curl https://jantaris.com/v1/generate?wait=60 \
-H "Authorization: Bearer $JANTARIS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "seedance-2.0-fast",
"input": {
"prompt": "A slow dolly shot through a neon-lit night market in the rain, reflections on wet asphalt, cinematic",
"aspect_ratio": "16:9",
"resolution": "720p",
"duration": 5
}
}'import os, time, requests
API = "https://jantaris.com/v1"
H = {"Authorization": f"Bearer {os.environ['JANTARIS_API_KEY']}"}
task = requests.post(f"{API}/generate", headers=H, json={
"model": "seedance-2.0-fast",
"input": {
"prompt": "A slow dolly shot through a neon-lit night market in the rain, reflections on wet asphalt, cinematic",
"aspect_ratio": "16:9",
"resolution": "720p",
"duration": 5
}
}).json()
while task["status"] in ("queued", "running"):
time.sleep(3)
task = requests.get(f"{API}/tasks/{task['id']}", headers=H).json()
print(task["status"], task["cost"], [o["url"] for o in task["output"]])const API = "https://jantaris.com/v1";
const headers = { Authorization: `Bearer ${process.env.JANTARIS_API_KEY}`, "Content-Type": "application/json" };
let task = await (await fetch(`${API}/generate`, {
method: "POST",
headers,
body: JSON.stringify({
"model": "seedance-2.0-fast",
"input": {
"prompt": "A slow dolly shot through a neon-lit night market in the rain, reflections on wet asphalt, cinematic",
"aspect_ratio": "16:9",
"resolution": "720p",
"duration": 5
}
}),
})).json();
while (task.status === "queued" || task.status === "running") {
await new Promise((r) => setTimeout(r, 3000));
task = await (await fetch(`${API}/tasks/${task.id}`, { headers })).json();
}
console.log(task.status, task.cost, task.output.map((o) => o.url));
Parameters
| Parameter | Type | Allowed | Default |
|---|---|---|---|
prompt * | string | ≤ 20000 chars | |
aspect_ratio | string | 16:9 9:16 1:1 4:3 3:4 21:9 adaptive | 16:9 |
resolution | string | 480p 720p | 720p |
duration | integer | 4-15 | 5 |
generate_audio | boolean | true | |
image_url | string | ||
end_image_url | string | ||
image_urls | array | max 9 | |
video_urls | array | max 3 | |
audio_urls | array | max 3 |
The same schema is available from GET /v1/models/seedance-2.0-fast.









