Skip to main content

Seedance API Providers in 2026: Kie vs OpenRouter and the Routes Worth Testing

•••13 min read•AI Video Generation

Kie's lowest badge is a 480p video-input row, while OpenRouter has one backing provider. Compare matched 720p jobs and cost per accepted clip instead.

Decision map showing Kie's 480p video-input price condition, OpenRouter's one-provider limit, route contracts, and a matched 720p canary

For a first Seedance API test, Kie currently shows the lower headline price at $0.057 per second, while OpenRouter shows $0.06726 per second for bytedance/seedance-2.0. Neither badge is a 720p text-to-video comparison. Kie's rounded headline maps to Standard 480p with video input at $0.0575/s, where billable time includes input video plus output. OpenRouter's headline is its 480p row; its current 720p display row is $0.1512/s. OpenRouter also says Seedance 2.0 has one backing provider, so it does not currently add provider diversity for this model.

The practical answer is:

  • Try Kie first when its Mini, Fast, or Standard row matches your workload, and you want one task API across several media models.
  • Try OpenRouter first when its unified API, model catalog, monitoring, and current price row matter more than multi-provider failover.
  • Use PiAPI, Replicate, or fal when their published request shape and billing row are easier to budget for your workload.
  • Use BytePlus ModelArk when an international first-party task contract, current Dreamina model IDs, and success-only charging matter more than wrapper convenience.
  • Use Volcano Engine when the direct China-market contract and source ownership matter.
  • Evaluate laozhang.ai when its current Seedance relay, local billing/support, and two-stage settlement fit your integration—but do not compare it as a fixed-price route.

No public page proves a universal winner. Freeze one request, run a small canary on the finalists, and compare cost per accepted clip.

The provider decision table

RouteCurrent public evidence, checked July 18, 2026Best first useStop rule
Kie$0.057/s rounds a Standard 480p with-video row; 720p no-video rows are Mini $0.1025/s, Fast $0.165/s, Standard $0.205/sExplicit SKU ladder and a unified async task APIInclude input duration on with-video jobs; verify failure and moderation settlement
OpenRouter480p from $0.06726/s; 720p $0.1512/s; current page says one backing providerUnified video interface, usage metadata, and a clean current model rowDo not buy it for provider redundancy until the model has more than one usable backing provider
PiAPIExplicit 720p rows: mini $0.14/s, fast $0.16/s, standard $0.20/sClear variant pricing, moderation rules, and a task APIRecheck input-video charges, peak-hour queues, and the exact moderation variant
Replicate720p non-video input $0.18/s; current page also lists 1080p and 4KExisting Replicate jobs, versioning, webhooks, and hosted filesMatch resolution and video-input status; video-input rows cost more
fal720p text-to-video $0.3034/s standard or $0.2419/s fastSDK, playground, dedicated endpoint families, and fast integrationConfirm endpoint, mode, and output resolution before using one rate across every request
BytePlus ModelArkInternational async task API; current Standard, Fast, and Mini Dreamina model IDs; only successful generations are chargedFirst-party international contract and explicit task lifecycleCopy the regional hostname, endpoint ID, eligibility, and account-specific limits from the current console; task IDs are retained for seven days
Volcano EngineDirect China-market token billing and current Seedance 2.0 resource packagesDirect/source contract and China-market deploymentCheck eligibility, region, token formula, and model availability; campaign packages are not global contracts
laozhang.aiCurrent relay uses /seedance/api/v3/contents/generations/tasks; final cost is token-settledTeams that benefit from the SeeDance2 route, local billing/support, and current public integration docsStop if the token group, final usage, two billing rows, or real-person limitation does not fit the workload

The table separates route contracts before prices. A router with one backing provider, a hosted model, a task API, a direct cloud route, and a relay can all expose ā€œSeedance 2.0ā€ while owning different authentication, request schemas, bills, logs, and support boundaries.

What changed since the April provider comparison

This page previously reflected an April 20 snapshot. Four changes are too important to treat as a date-only refresh.

First, OpenRouter's current Seedance 2.0 page no longer presents the buyer with the old $7/M tokens headline. It displays from $0.06726/second. More importantly, its Providers section says the model is hosted by one provider and forwarded directly. OpenRouter can still simplify model switching and expose monitoring, but ā€œrouterā€ should not be translated into ā€œmultiple live Seedance providersā€ when the page says there is one.

Second, PiAPI's current Seedance 2 documentation has a broader formal model ladder. The 720p strict rows are now $0.14/s for mini, $0.16/s for fast, and $0.20/s for standard. The old $0.10/s fast figure is not the current 720p fast row.

Third, Replicate's current model page publishes 1080p and 4K rows in addition to 480p and 720p. A comparison that still describes Replicate only through its April 480p/720p surface misses a real route change.

Fourth, laozhang.ai's current Seedance documentation uses the Ark-style relay path https://api.laozhang.ai/seedance/api/v3/contents/generations/tasks. The April article described an OpenAI-style create route. Current integrations should follow the current docs, not the old article.

Kie or OpenRouter?

Choose Kie when the exact row is verifiable

Kie's current homepage advertises Seedance 2 from $0.057/s. Its API docs use a unified create-task endpoint, recommend callbacks for production, and expose Standard, Fast, and Mini model IDs. The Seedance request can combine a prompt with first/last frames or multimodal references, subject to the documented mutually exclusive modes.

That is a compelling first test, but the $0.057/s badge rounds a specific Standard 480p with-video unit row of $0.0575/s. Kie's formula charges that rate over input-video duration plus output duration, so it is not comparable to a text-to-video rate multiplied only by output seconds. Before committing, freeze the row that names:

  • bytedance/seedance-2, bytedance/seedance-2-fast, or bytedance/seedance-2-mini;
  • 480p, 720p, 1080p, or 4K where that SKU supports it;
  • text-only, first/last frame, or multimodal reference input;
  • output duration;
  • audio behavior;
  • failed, cancelled, moderated, and timed-out task billing.

For 720p without input video, Kie's current rows are Mini $0.1025/s, Fast $0.165/s, and Standard $0.205/s. These are distinct quality tiers, not interchangeable outputs.

Choose OpenRouter when one interface is the value

OpenRouter's advantage is a familiar unified API surface, model discovery, and activity/uptime information. Its current Seedance page also provides a visible price row and the model slug needed for a first request.

The current video contract is no longer the old chat-completions shortcut: discover video models with GET /api/v1/videos/models, then submit generation through POST /api/v1/videos. Treat that endpoint change as a migration requirement if your integration copied an earlier LLM-router example.

The limitation is unusually clear: the page says one provider. A team choosing OpenRouter for this model should distinguish two benefits:

  1. Model portability: switching from Seedance to another video model without adopting a completely separate platform.
  2. Provider redundancy: sending the same Seedance model to more than one backing provider.

The first benefit can exist today. The second does not follow from a model page that lists one backing provider. If provider redundancy is a requirement, query OpenRouter's current endpoint/provider data before launch and define what happens when the sole Seedance route is unavailable.

Normalize a 10-second 720p quote

Use a boring reference job: 10 seconds, 720p, text-to-video, no input video, and audio enabled where the provider includes it at the same rate. Then multiply only rows that actually match that request.

Provider rowPublic quote for the reference jobWhat it proves
Kie Mini 720p, no video input$1.025An explicit Mini-tier quote, not Standard quality
PiAPI mini 720p$1.40An explicit mini-tier 720p quote
OpenRouter Standard 720p$1.512A current 720p row with one backing provider
PiAPI fast 720p$1.60An explicit fast-tier 720p quote
Kie Fast 720p, no video input$1.65An explicit Fast-tier quote
Replicate 720p, non-video input$1.80An explicit hosted-model quote for this input class
PiAPI standard 720p$2.00An explicit standard-tier 720p quote
Kie Standard 720p, no video input$2.05An explicit Standard-tier quote
fal fast 720p$2.419An explicit fast 720p text-to-video quote
fal standard 720p text-to-video$3.034An explicit standard 720p quote

These are quote calculations, not paid test results. They do not prove equal visual quality, queue time, moderation behavior, retry policy, or actual final charge. Standard, Fast, and Mini are different model tiers; matching duration and resolution does not make output quality equivalent.

For video-input jobs, start over. Replicate charges higher video-input rows. PiAPI adds half the unit price multiplied by total input-video duration. LaoZhang and the direct Volcano Engine route settle from token usage influenced by video duration, output dimensions, frame rate, and input video.

Direct, hosted, task API, router, and relay are different contracts

ByteDance's Seedance 2.0 page owns the model-capability baseline: unified text, image, audio, and video input with joint audio-video generation. It does not make every public provider an official ByteDance route, nor does it promise that each provider exposes the full model surface.

Use these labels precisely:

  • Direct/source route: Volcano Engine for the China-market contract, or BytePlus ModelArk for its current international task API. These routes keep the source-cloud relationship but add regional, account, endpoint-ID, and billing complexity.
  • Hosted model: Replicate or fal owns the hosted API contract, schema, billing, storage, and support experience around the underlying model.
  • Task API: Kie or PiAPI owns an async task schema, model aliases, credits/prices, moderation, callbacks, and result retention.
  • Router: OpenRouter owns the unified model interface and provider metadata. For Seedance 2.0 today, its public page says one provider.
  • Relay/gateway: laozhang.ai owns its SeeDance2 token group, relay path, settlement logs, and support boundary.

A provider can be useful without being an ā€œofficial ByteDance provider.ā€ Use the strongest relationship that the source proves, not the strongest marketing phrase available.

A canary card that produces a real answer

Create one record per route and keep provider-specific fields outside your core video job:

ts
type SeedanceCanary = { provider: "kie" | "openrouter" | "piapi" | "replicate" | "fal" | "byteplus" | "volcengine" | "laozhang"; routeOwner: string; modelId: string; backingProviderCount: number | "unknown"; durationSeconds: 10; resolution: "720p"; inputMode: "text-to-video"; audioRequested: true; quotedCostUsd: number | null; chargedCostUsd: number | null; status: "succeeded" | "rejected" | "failed" | "timed_out"; accepted: boolean; rejectionReason: string | null; submitLatencyMs: number; completionLatencyMs: number | null; refunded: boolean | "unknown"; resultExpiresAt: string | null; };

Run at least three prompts from your real product categories. Include one easy scene, one prompt with a named camera move, and one prompt likely to exercise moderation without requesting prohibited content. Use identical prompt text and output settings where the APIs permit it.

Then calculate:

text
cost per accepted clip = total amount actually charged / accepted clips

Record every attempt. Put every charged rejection, timeout, retry, and unusable completion in the numerator; count only clips that pass the acceptance rule in the denominator. The route with the lowest headline rate can lose if it creates more rejected or unusable clips.

When the other providers are the better first test

Use PiAPI when you want the most explicit public variant table in this set. Its docs also state content-rejection refund behavior and warn that peak-hour queues may extend significantly. That is more operationally useful than a cheap number without a failure boundary.

Use Replicate when your application already handles Replicate predictions, hosted files, webhooks, and model versions. Its current pricing gives a clean progression from 480p through 4K, but video-reference inputs cost more.

Use fal when developer experience and dedicated endpoint families are worth a higher public 720p rate. Its API reference and SDK examples make the first integration straightforward, and its provider guide states that audio generation does not change the listed rate.

Use Volcano Engine when you need the source route in the China market and can manage the account, region, token calculation, and current eligibility. Do not copy China campaign packages into a US or European budget as if they were globally available API plans.

Use BytePlus ModelArk when an international direct contract is preferable. Its current first-party reference documents an asynchronous Dreamina Seedance 2.0 task API, but copy the regional hostname, endpoint ID, model ID, eligibility, and billing terms from the current ModelArk console instead of borrowing Volcano Engine values.

The current catalog includes Standard dreamina-seedance-2-0-260128, Fast dreamina-seedance-2-0-fast-260128, and Mini dreamina-seedance-2-0-mini-260615. The public contract says only successful generations are charged and task IDs are retained for seven days; account rate limits still belong to the current console rather than a universal public number.

Use laozhang.ai when the current relay solves a real integration or billing problem. Its public docs require a token in the SeeDance2 group and plain model IDs such as doubao-seedance-2-0-fast-260128. One task creates a pre-charge row and a final supplement or refund row; the two rows together are the final cost, not two videos. The docs also state that real-person face workflows are not supported yet. Choose another route if that limitation is central to the product.

Production stop rules

Do not ship a Seedance provider until you can answer all of these:

  • Which company owns the endpoint, bill, logs, storage, and support ticket?
  • What exact model ID, mode, resolution, duration, and input type produced the quote?
  • How many backing providers are usable for this model today?
  • What happens to charges after moderation rejection, timeout, cancellation, or upstream failure?
  • Does the API support callbacks, and how often is polling safe?
  • How long do uploaded references, logs, and generated videos remain available?
  • Can the provider return the final frame, native audio, and the reference modes the product needs?
  • What is the fallback: retry the same route, change provider, lower resolution, shorten duration, or send to manual review?
  • Can you export the job, billing, and result metadata needed to reconcile one customer request?

If a provider cannot expose the billing row or data boundary for your exact job, keep it in evaluation. If OpenRouter still has one backing provider, do not call it redundant. Do not carry Kie's 480p with-video headline into a 720p text-only budget. If a direct route creates unacceptable regional or account friction, a provider layer may be worth more than the sticker-price difference.

Bottom line

Kie and OpenRouter are both credible Seedance API starting points, but for different reasons. Kie exposes a broad SKU ladder through one task API; its smallest badge is a 480p video-input condition, not a 720p winner. OpenRouter has a broad unified video interface and an explicit 720p row, but only one backing provider for Seedance 2.0. PiAPI, Replicate, and fal provide other matched rows and operational contracts. Volcano Engine and BytePlus cover different direct-route regions. laozhang.ai is a relay option with a distinct token group and settlement contract.

Pick two finalists, freeze a 10-second 720p canary, and compare actual cost per accepted clip. That result—not the provider name or the smallest badge—is the production decision.

#Seedance 2.0#Seedance API#Kie API#OpenRouter#AI Video API#API Providers
Share: