Billing and cost
Your account, not Comfy credits
Section titled “Your account, not Comfy credits”The nodes call BytePlus directly with your own keys. Everything is billed to your BytePlus account, with your contract pricing and resource packages. No Comfy credits are used.
Nodes run only when their output is used
Section titled “Nodes run only when their output is used”The BytePlus generation, language, speech and enhancement nodes are not output nodes, and they save nothing themselves. (Seedream Layer Separation writes files only if you turn on save_layers.) ComfyUI runs a node only when something downstream needs its result, for example Save Image, Save Video or a preview.
A node with nothing connected to its output does not run and is not billed. Two nodes are the exception: Video Query Tasks and Asset Library are output nodes that only look things up, so they run even with nothing connected.
ComfyUI caches results
Section titled “ComfyUI caches results”ComfyUI remembers a node’s result for its input values. Run an unchanged workflow again and the node is skipped, so nothing is sent and nothing is billed.
- Change the prompt, a setting or the
seedto get a new result and a new charge. - A
seedcontrol set torandomizechanges the seed after every run, so the next run is a new request and a new charge. Set the control tofixedto reuse the result. The Seedream template ships withrandomize. - Changing a key does not count as a change. See Keys and regions.
- The Seedance nodes have a
non_blockingoption that submits the task and returns at once. Run the node again to collect the finished video.
Paid calls are never retried automatically
Section titled “Paid calls are never retried automatically”The BytePlus SDK can retry a request after a timeout or a server error. For a call that starts paid work, that is dangerous: the first request may have gone through, and ModelArk has no way to recognize a repeat. A retry could create and bill the same video or image twice.
So the pack never retries calls that start paid work (video task creation, image generation, LLM answers). The only exception is a rate limit (429), which means nothing started, so it waits briefly and tries again, up to twice. Looking up a task, polling and uploads can still be retried, because a repeat starts no new paid work. AI MediaKit video tools send a fresh task token with each run, and a retried submit reuses it, so a retry never creates a second task.
The result for you: if a paid request fails with a timeout, the node reports the error and stops. Check your BytePlus console before you run it again, because the first request may have been billed.
generation_count multiplies the cost
Section titled “generation_count multiplies the cost”The Seedream and Seedance nodes have an advanced generation_count. Each generation is a separate paid request, run in parallel with seed + N. A count of 4 bills four times.
The same holds for Seed Audio: each take is billed separately.
Long-running tasks
Section titled “Long-running tasks”Video tasks can take minutes. The node keeps checking the task and shows its status under the node. Waiting itself costs nothing. If you press Interrupt, see Interrupts and cancelling for what is cancelled and what is still billed.
Voice cloning
Section titled “Voice cloning”With Seed Voice Clone, the first TTS call with a cloned voice starts the billing of its voice slot.