Developers · Unofficial guide
Kling API: Pricing and Integration Guide
The Kling API is sold by Kling AI’s developer platform from $0.042 per second, with a $700 minimum pack that expires after 180 days; third-party API hosts resell the same models pay-as-you-go. The Kling 4.0 API is not open yet. This Kling API guide covers prices, how an integration works and the pitfalls we hit while building our own.
- From $0.042 / second
- $700 minimum · official
- Pay-as-you-go hosts · no minimum
- Kling 4.0 API: not yet

Kling API status: is 4.0 available?
Sep 27–28, 2026
Kling 4.0 announced
Up to 30-second shots, 10 keyframes and stereo audio, with a full release planned for October.
Kling release note Status: doneSince Sep 28
4.0 Flash early access
Runs inside Kling’s own app only, for Ultra annual members. No API.
WaveSpeed check Status: limitedNot yet
Official Kling API
The Kling API packs page says: “These plans currently don’t support Kling 4.0.”
kling.ai/dev/pricing Status: not yetNot yet
Third-party API hosts
No pay-as-you-go host lists Kling 4.0 endpoints or per-second prices yet.
Kling API price list Status: not yet
Kling 4.0 API: not available yet. We add it the day an API we can call offers it, and email the waitlist. Last checked 2026-10-03.
Get notifiedOfficial Kling AI API prices per second
| Model · condition | 720p | 1080p | 4K |
|---|---|---|---|
| Kling 3.0 · silent | $0.084/s | $0.112/s | $0.42/s |
| Kling 3.0 · native audio | $0.126/s | $0.168/s | $0.42/s |
| Kling 3.0 Turbo · audio built in | $0.112/s | $0.14/s | — |
| Kling 3.0 Omni · no video input, silent | $0.084/s | $0.112/s | $0.42/s |
| Kling 3.0 Omni · no video input, audio | $0.112/s | $0.14/s | $0.42/s |
| Kling 3.0 Omni · with video input | $0.126/s | $0.168/s | $0.42/s |
| Kling O1 · no video / with video | $0.084 / $0.126 | $0.112 / $0.168 | — |
| Kling 2.6 · silent | $0.042/s | $0.07/s | — |
| Kling 2.6 · audio / voice control | — | $0.14 / $0.168 | — |
| Kling 2.5 Turbo · silent | $0.042/s | $0.07/s | — |
| Motion Control 3.0 | $0.126/s | $0.168/s | — |
| Motion Control 2.6 | $0.07/s | $0.112/s | — |
| Avatar | $0.056/s | $0.112/s | — |
| Lip Sync · per 5 seconds | $0.07 | — | — |
| Kling 4.0 · 4.0 Flash | Not announced | Not announced | Not announced |
Kling API minimums, packs and pay-as-you-go
- Unit price
- $0.14
- Every official rate is a fraction or multiple of one unit.
- Entry pack
- $700 · 5,000 units
- Prepaid before your first request.
- Validity
- 180 days
- Unused units expire; there is no rollover.
- Concurrency
- 20 jobs
- Included with the entry pack.
- Volume discount
- 10% off
- From 30,000 units ($4,200 list, $3,780 paid) — $0.126 per unit.
- Kling 4.0 in packs
- Not yet
- Packs don’t cover Kling 4.0 as of the check date.
- Pay-as-you-go hosts
- No minimum
- Several API platforms resell the Kling API per request with their own SDKs and webhooks. Rates vary by host; compare them with the official list above.
Sources: kling.ai/document-api/pricing, checked 2026-10-15 · kling.ai/dev/pricing, checked 2026-10-03
Official Kling API, API host or web app?
| Official Kling API | Pay-as-you-go API host | PictureToVideo web app | |
|---|---|---|---|
| 5s Kling 3.0 · 720p, silent | $0.42 | Varies by host | 50 credits ≈ $0.68 |
| Upfront | $700 prepaid pack | None or a small top-up | From $2.99 (starter pack) |
| Expiry | 180 days | Depends on the host | 365 days for packs |
| Code needed | Yes — your own Kling API integration | Yes — the host’s SDK or REST API | No — runs in the browser |
| Kling 4.0 | Not supported yet | Not listed yet | Coming soon |
| Other models | Kling only | Varies by host | Veo, Wan, Hailuo and Grok on one balance |
Kling API cost calculator, by model
Kling 3.0
Kling 3.0 Turbo
Kling 3.0 Omni
Kling O1
Kling 2.6
Kling 2.5 Turbo
Motion Control 3.0
Motion Control 2.6
Kling 3.0 · 720p
Official list price
- Per second
- $0.084
- Per clip
- $0.42
- Per month
- $42.00
- Official direct: the $700 minimum pack covers about 1,666 clips like this and expires after 180 days.
- Pay-as-you-go API hosts: billed per request with no minimum; rates vary by host.
- No code: the same clip on our web app is 50 credits ≈ $0.68 on the Pro plan.
How a Kling API integration works
1 · Submit the job
POST a JSON body with the prompt, the image URL for image to video, the length and the resolution. Kling renders asynchronously, so the API answers at once with a job id — store it with your own job record.
2 · Wait: webhook first, polling second
Pass a callback URL so the Kling API notifies you when the job ends, and keep a slow poll of the job status as a backstop for late or lost callbacks.
3 · Read the result safely
Check the final status and any error field before anything else. Only a clean success carries a usable video URL; anything else is a failed job to refund.
4 · Store it yourself
Download the video to your own bucket straight away and serve it from there. Kling API result links expire, and your users will expect last month’s renders to still play.
Kling API async jobs, webhooks and storage
- 01Your server → Kling API queuePOST the jobreturns a job id — store it
- 02Kling API queue → Kling modelQueued → renderinga few minutes for most clips
- 03Kling model → Kling API queueJob finishedmay still carry an error — check it
- 04Kling API queue → Your serverWebhook POSTverify the signature first
- 05Your server → Kling API queueGET the resulta video URL, or an error = failed
- 06Your server → Your storageCopy video + posterbefore the result link expires
Poll the job status every few seconds as a fallback when a webhook is late — and re-check jobs with no callback after two minutes.
Kling API pitfalls we hit
Tick each one off as your integration handles it.
0 / 10 handled
01A finished job isn’t always a successful one+
Symptom
Failed jobs sit in “processing” forever, and the user’s credits never come back.
Fix
Async video APIs can report a job as finished even when the render failed — the failure shows up as a failed status or an error field next to it. Check both before reading the video URL, mark the job failed and refund.
if (job.status === 'failed' || job.error) fail(job.error)02Image-to-video field names differ by model version+
Symptom
Image-to-video requests fail validation even though the image URL is fine.
Fix
Some Kling versions take a start-frame field plus an optional end frame, others a single image field, and end-frame names differ again. Build the request body per model version from the provider’s docs instead of sharing one payload.
03Kling 3.0 text to video can add audio by default+
Symptom
Text-to-video clips come back with sound and cost 50% more than you budgeted.
Fix
On some APIs the Kling 3.0 text-to-video request generates audio unless you switch it off. Always send the audio setting explicitly, and price audio as its own rate.
04Clip lengths are model-specific+
Symptom
Validation errors on requests that look correct.
Fix
Kling 3.0 accepts 3 to 15 seconds; 2.6 and 2.5 Turbo accept only 5 or 10; O1 tops out at 10. Some APIs also expect the duration as a string — "5", not 5.
05Result links expire+
Symptom
Videos in your users’ libraries start returning 404 a few hours later.
Fix
Result links and webhook payloads are only kept for a limited time — sometimes an hour or less. Copy the file to your own storage the moment the job completes, and cut a poster frame yourself if the API doesn’t return one.
06Unsigned webhooks can be forged+
Symptom
Anyone who finds your webhook URL can mark jobs as finished.
Fix
Verify the signature your API sends with each callback against its published keys, and reject timestamps more than a few minutes off.
07Encode the webhook URL+
Symptom
Callbacks with query parameters arrive truncated or not at all.
Fix
When the callback URL travels in a query string, pass it through encodeURIComponent (or quote() in Python) first.
?webhook=${encodeURIComponent(hookUrl)}08Keep what the submit call returns+
Symptom
Status checks 404 for some models.
Fix
Save the job id and any status or result URLs from the submit response and call them directly, instead of rebuilding paths from the model name.
09Never trust a client-sent price+
Symptom
Someone edits the request and pays for 5 seconds while rendering 15 in 1080p.
Fix
Validate every field against an allow-list per model and compute the charge on the server from your own rate table. The browser only ever shows an estimate.
10Refund exactly once+
Symptom
A webhook and a polling job both see the failure and refund the same credits twice.
Fix
Make the status change and the refund conditional — UPDATE … WHERE status = ‘active’ RETURNING — so only the first path wins.
We are not a Kling API provider
We are not a Kling API provider, and we don’t sell Kling API keys.
- PictureToVideo is an independent, unofficial studio. We run Kling models through licensed API providers for our own web app.
- Prices on this page come from the public Kling API price list, checked 2026-10-15; the pitfalls come from our own integration.
- For an official contract, keys and support, go to Kling’s developer platform.
Official:Kling developer platform
Don’t need code?
Use the same models in the browser — no keys, no minimum.
Upload a frame or write a prompt, see the exact credit cost before you render, and get credits back when a render fails.
Want a PictureToVideo API?
If enough developers ask, we will open our routing layer — failover between providers, server-side pricing and automatic refunds — as an API. Leave an email and we will only write when there is something to try.
No spam · we only write when there is something to try
01Is there an official Kling API?
02How much does the Kling API cost per video?
03Is the Kling 4.0 API available?
04Is there a free Kling API key?
05Which image field does Kling image to video use?
06How do I know a Kling API job failed?
07How long do Kling API video links last?
08Are you an official Kling API provider?
Related tools & models

Skip the Kling API integration
Same Kling models in the browser — plus Veo, Wan, Hailuo and Grok: no keys, no $700 minimum, credits back when a render fails. A 5-second Kling 3.0 clip is 50 credits.



