KIE Seedance 2.0 (Video)
Seedance 2.0 video in your graph — just bring a prompt and some patience
- first_frame
- last_frame
- reference_images
- reference_video
- reference_audio
- seedance_data
- video
ByteDance's Seedance line is the closed video model that open-weights users keep measuring themselves against, and this node is the fastest way to actually run the newest one from ComfyUI. KIE Seedance 2.0 (Video) sends a prompt - plus optionally frames and reference media - to the Kie.ai API and returns a ready-to-play VIDEO clip. It's cloud-only, credit-priced, and marked experimental in the pack, but it's also the most flexible video node in the bunch.
"Experimental" here mostly means the reference semantics are still settling, not that it's broken. You get four scenarios in one node: plain text-to-video, first-frame image-to-video, first + last-frame I2V, and a multimodal mode with reference images/video/audio. That's a lot of reach for a single node.
How it works
The usual KIE job lifecycle, with video-sized patience: upload any media, POST a createTask, then poll recordInfo until it finishes. Video jobs default to a 2000-second timeout for good reason - Seedance runs can take ten-plus minutes, and the pack's default polling interval is 10 seconds. Retries kick in automatically on transient failures. The finished clip downloads to a temp file and comes back as a ComfyUI VIDEO output.
The inputs that matter
- model -
bytedance/seedance-2-fast(default) orbytedance/seedance-2. Fast is for iteration; the full model is the quality pick. Both pass through to KIE directly, so this is the field to change when the catalog updates. - prompt - required, and the main control. Describe motion, camera, and subject.
- first_frame / last_frame - optional
IMAGEinputs. Last frame requires first frame. These are dedicated temporal control slots, not part of the reference-media ordering. - reference_images / reference_video / reference_audio - the multimodal side. These upload in batch order and get referenced in the prompt via
@ImageN/@VideoN/@AudioNaliases. The caveat, from the pack's own docs: that alias mapping is inferred from upload order and isn't API-verified, so validate it before you spend credits. - duration - default 15s, and
resolutiondefaults to 720p.generate_audioandreturn_last_frameare optional extras the endpoint supports.
There's also a seedance_data input: if you've run the pack's Seedance 2.0 Preflight node, you can chain its validated payload straight in here and skip re-uploading. That preflight node is genuinely worth using before expensive runs - it builds the exact payload without spending a credit.
Output: video, which previews in ComfyUI or goes to a saver.
Installing
One install, every KIE node. ComfyUI Manager: search "ComfyUI Kie API". Or:
cd ComfyUI/custom_nodes
git clone https://github.com/gateway/ComfyUI-Kie-API
# restart ComfyUI
No models to download. The key lives in config/kie_key.txt inside the pack folder (copy from kie_key.example.txt).
Where people get burned
Three things. First, the timeout - it's long by design; don't kill the run at 3 minutes, it may be nowhere near done. Second, the @ImageN reference aliases: if your reference-heavy video comes out ignoring the media, the alias mapping is the first suspect, not the model. Third, cost - Seedance 2.0 at 15s/720p is a real credit spend per shot, and there's no preview-in-place; run the preflight node and use the fast model for drafts, then spend the good credits on the final. And when a job does fail, kie.ai/logs is where the real error message is.
Inputs (15)
| Name | Type | Default | Description |
|---|---|---|---|
| model | COMBO | bytedance/seedance-2-fast | 2 options: bytedance/seedance-2-fast, bytedance/seedance-2 |
| prompt | STRING | — | |
| first_frameopt | IMAGE | — | |
| last_frameopt | IMAGE | — | |
| reference_imagesopt | IMAGE | — | |
| reference_videoopt | VIDEO | — | |
| reference_audioopt | AUDIO | — | |
| generate_audioopt | BOOLEAN | false | — |
| return_last_frameopt | BOOLEAN | false | — |
| aspect_ratioopt | COMBO | 16:9 | 3 options: 16:9, 9:16, 1:1 |
| resolutionopt | COMBO | 720p | 3 options: 480p, 720p, 1080p |
| durationopt | COMBO | 15 | 3 options: 5, 10, 15 |
| web_searchopt | BOOLEAN | false | — |
| seedance_dataopt | KIE_SEEDANCE2_REQUEST | — | |
| logopt | BOOLEAN | true | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| video | VIDEO | — |