Seedance 2.5 Image to Video

bytedance/seedance/2.5/image-to-video

ByteDance's next-generation image-to-video model, animating a single still into a native clip up to 30 seconds at 720p with continuous, coherent motion, native audio, and director-level camera control.

Base price
$1.12 / run
Execution
async
Model type
video
Input fields
6

Try the model

Playground

Open playground
Input
The text prompt to generate a video from.

PNG, JPEG, WebP, or GIF · 20 MiB maximum

The URL of the starting image for video generation.

PNG, JPEG, WebP, or GIF · 20 MiB maximum

The URL of the ending image for video generation.
The duration of the generated video in seconds (4-30). Allowed values: 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30.
The resolution of the video to generate. Allowed values: 480p, 720p, 1080p.
Whether to generate synchronized audio (voice, SFX, BGM) for the video.
OutputReady

Your output will appear here

Complete the inputs, then click Run.

Specifications

Pricing

Base price
$1.12 / run
Billing formula
(usage.total_seconds ?? ((params.duration ?? 5) == 'auto' ? 5 : (params.duration ?? 5))) * ((params.resolution ?? '720p') == '480p' ? 0.099703264095 : (params.resolution ?? '720p') == '720p' ? 0.224332344214 : (params.resolution ?? '720p') == '1080p' ? 0.555222551929 : (0 / 0))

Context & modalities

Input
Schema-defined
Output
video

Capabilities

Chat
Not supported
Vision
Not supported
Reasoning
Not supported
Structured output
Not supported
Function calling
Not supported
Audio input
Not supported

Access

Provider
Bytedance
Model ID
bytedance/seedance/2.5/image-to-video
Execution
async
API
Unified Run API
Endpoint
/v1/run

API README

Seedance 2.5 Image to Video

ByteDance's next-generation image-to-video model — transforms a still image into a native clip up to 30 seconds with continuous, coherent motion, native audio, and director-level camera control.

Highlights

Native 30-second animation — Extend a single frame into a long, continuous take without drift or stitching.

Native audio generation — Automatically creates synchronized sound effects, ambient audio, and lip-synced speech. Toggle with generate_audio parameter.

Start + end frame control — Provide both a starting image and an optional end image to precisely control video transitions and motion direction.

Flexible duration — Generate 4 to 30 second clips in a single request.

Pricing

Rates use Volcengine's non-promotional list price converted at 1 USD = 6.74 CNY.

ResolutionOutput price per second
480p$0.10
720p$0.22
1080p$0.56

Default: 5 output seconds at 720p = $1.12. Input images do not add a video-input charge. Audio generation is included at no extra cost.

When to Use

✅ Good fit❌ Consider alternatives
Product photo animationsReal-time video streaming
Social media content from product shotsLong-form video (>30s)
Cinematic transitions between keyframesPixel-perfect frame control
Marketing material with motionSimple GIF-style loops
Story-driven clips with audioText-only generation (use T2V)

Input Requirements

  • Image provided as publicly accessible URL
  • Supported formats: PNG, JPEG, WebP
  • Max image size: 30 MB
  • Optional end image for controlled transitions

Technical Specs

SpecValue
InputText prompt + image URL (+ optional end image)
OutputMP4 video with optional audio
Resolution480p / 720p / 1080p
Duration4–30 seconds
ExecutionAsync (submit → poll for result)
Typical latency2–10 minutes

Related

Start building

Send your first request

OpenAI-compatible endpoint with unified authentication and usage tracking.

Production API
Endpoint
https://api.sandbase.ai/v1/run
Model ID
bytedance/seedance/2.5/image-to-video
# Preserve Unicode and shell metacharacters in the request body.
result=$(printf '%s' 'ewogICJtb2RlbCI6ICJieXRlZGFuY2Uvc2VlZGFuY2UvMi41L2ltYWdlLXRvLXZpZGVvIiwKICAiaW1hZ2UiOiAiaHR0cHM6Ly9wOS1hcmNvc2l0ZS5ieXRlaW1nLmNvbS90b3MtY24taS1nb283d3BhMHdjL2Y4ZmMxMDA4ZjIzYTQ5MDhiN2M4OTdlOGI3ZWI4N2RmfnRwbHYtZ29vN3dwYTB3Yy1pbWFnZS5pbWFnZSIsCiAgInByb21wdCI6ICJDcmVhdGUgYSAzNjAtZGVncmVlIG9yYml0aW5nIGNhbWVyYSBzaG90IGJhc2VkIG9uIHRoaXMgcGhvdG8uIiwKICAiZHVyYXRpb24iOiA1LAogICJyZXNvbHV0aW9uIjogIjcyMHAiLAogICJnZW5lcmF0ZV9hdWRpbyI6IHRydWUKfQ==' \
  | base64 --decode \
  | curl --fail-with-body --silent \
      -X POST "https://api.sandbase.ai/v1/run" \
      -H "Authorization: Bearer $SANDBASE_API_KEY" \
      -H "Content-Type: application/json" \
      --data-binary @-)
run_id=$(printf '%s' "$result" | jq -r .id)
for attempt in $(seq 1 120); do
  status=$(printf '%s' "$result" | jq -r .status)
  case "$status" in completed|failed|timeout) break ;; esac
  sleep 2
  result=$(curl --fail-with-body --silent \
    -H "Authorization: Bearer $SANDBASE_API_KEY" \
    "https://api.sandbase.ai/v1/run/$run_id")
done
status=$(printf '%s' "$result" | jq -r .status)
[ "$status" = completed ] || { echo "Generation ended: $status" >&2; exit 1; }
printf '%s\n' "$result"

Choose your model

Compare models

All language models
ModelContextInput / 1MOutput / 1MReleased
Bytedance———Jul 1, 2026
Bytedance———Jul 1, 2026
Bytedance———Jul 1, 2026
Bytedance———Jun 16, 2025
Bytedance———Jun 16, 2025
Bytedance———Dec 23, 2025