Blog

The Kling AI Text to Video Models: Pricing and API (2026)

Unicorn API Team · · 11 min read

Kling AI text to video turning a written prompt into a cinematic coastline clip

Kling AI text to video is the feature that turns a written description into a short video clip, using models built by Kuaishou, the Beijing-based company behind the Kling service. You type what should happen, the model renders it with motion, lighting and, on newer versions, sound. This guide covers which Kling models you can actually run, how to write prompts that hold up, what each clip costs, and how to call Kling from your own code.

What is Kling AI text to video?

A text-to-video model is a type of generative AI that takes a natural language prompt and produces a video that matches it. Kling is one of the best known text to video AI models, alongside Google’s Veo and the now discontinued Sora from OpenAI.

Under the hood, Kling is a diffusion transformer. Two terms worth defining:

  • Diffusion: the model starts from random noise and removes it step by step, guided by your prompt, until a clean video appears. Most modern image and video generators work this way, usually in a compressed “latent” space rather than on raw pixels, which keeps the cost manageable.
  • Transformer: the neural network design that lets every part of the input relate to every other part. For video, that means a patch of the frame at second one can “see” the same area at second five, which is what keeps a character’s face and clothes consistent as they move.

When Kuaishou first launched Kling, it claimed the model could generate up to two minutes of 1080p video at 30 frames per second. Current versions focus less on raw length and more on control: start and end frames, reference characters, multi-shot storyboards and native audio.

Where people use Kling

There are three ways to use Kling AI text to video today:

  1. Kling’s own web and mobile apps, where you work through a visual interface.
  2. Third-party sites that wrap Kling inside their own editor or chat tool.
  3. An API, where your code sends a prompt and gets a video file back. This is the route if you want to automate product videos, social clips or storyboards at volume.

What Kling is not

Search results for this topic mix in tools that do different jobs. Otter AI’s video to text feature is the reverse direction: it transcribes speech from a recording into written text. InVideo AI text to video works mostly as a template editor that assembles stock footage, voiceover and captions around a script. Kling generates new footage, frame by frame, from nothing but your description. If you need a narrated explainer made of stock clips, a template tool may suit you better. If you need a shot that does not exist yet, you need a generative model like Kling.

Which Kling models can you use for text to video?

Unicorn API currently offers three Kling video models. They overlap, but each has a clear job.

Kling 3.0 Omni

Kling 3.0 Omni is the all-rounder and the one to start with for pure Kling AI text to video. It can create video from a prompt, animate an image, follow reference images or videos, and transform existing footage. It supports start and end frames, named characters (the elements field), native audio and custom storyboards through multi_prompt and the multi-shot options.

  • Durations: 3 to 15 seconds
  • Resolutions: 720p, 1080p, 4K
  • Aspect ratios: 16:9, 9:16, 1:1
  • Price: listed at 70 credits per video

Kling 4.0 Flash Keyframe To Video

Kling 4.0 Flash Keyframe To Video was added today. It is designed around a keyframe: you pass a first_frame_url and a prompt describing the motion, and the model animates forward from that frame. Its minimal request needs only a prompt, so you can experiment with text alone, but its strength is control over the opening shot. It renders at 720p and costs 17 credits per second of video.

Kling 4.0 Flash Reference to Video

Kling 4.0 Flash Reference to Video takes reference material, images through image_urls and clips through video_urls, and generates new footage that follows them. It can keep the original sound of a reference clip with keep_original_sound. At 720p it costs 17 credits per second, or 11.3 credits per second when you supply reference videos.

ModelBest forResolutionPrice
Kling 3.0 OmniText to video, storyboards, 4K, audio720p, 1080p, 4K70 credits per clip
Kling 4.0 Flash KeyframeAnimating a chosen first frame720p17 credits per second
Kling 4.0 Flash ReferenceMatching reference images or clips720p17 credits/s, or 11.3 with video_urls
Diagram comparing the three Kling video models and their inputs
The three Kling models on Unicorn API and what each one starts from.

How to write a prompt for Kling AI text to video

Most disappointing clips come from vague prompts, not weak models. Kling responds best to prompts written like a short shot description from a film script. A reliable order is:

  1. Subject: who or what is on screen, with two or three visual details.
  2. Action: one clear movement. Video models handle one action per shot far better than a sequence of events.
  3. Setting: location, time of day, weather.
  4. Camera: shot size and movement, for example “slow dolly in”, “static wide shot”, “handheld tracking shot”.
  5. Light and style: “soft golden hour light”, “35mm film grain”, “clean studio product lighting”.
  6. Sound (if audio is on): “waves and distant gulls”, “quiet cafe chatter”.

A worked example

Weak prompt:

A woman drinking coffee in a city.

Strong prompt:

A woman in her thirties with short dark hair and a green raincoat lifts a paper coffee cup and takes a slow sip, standing under a cafe awning on a rainy Tokyo street at dusk. Medium close-up, slow dolly in. Neon reflections on wet pavement, shallow depth of field, cinematic color. Sound of light rain and passing traffic.

The second version fixes the subject’s look, gives one action, sets the camera and tells the audio model what to produce. The model no longer has to guess, so results are more consistent from run to run.

Storyboards and multi-shot clips

Kling 3.0 Omni can split a clip into several shots through multi_prompt, with prefer_multi_shots and customize_multi_shots controlling how cuts are made. Use this when you want a wide shot followed by a close-up inside one generation. Keep each shot’s prompt as specific as a single-shot prompt, and describe the subject the same way in every shot so the character stays consistent. The exact field formats are in the API documentation.

When to switch to image to video

If you need a specific product, logo or face, text alone will not get you there reliably. Generate or photograph the first frame, then pass it in the image field (Kling 3.0 Omni) or as first_frame_url (Kling 4.0 Flash Keyframe). The prompt then only needs to describe motion and camera, which is a much easier job for the model.

How to run Kling AI text to video through an API

Video generation takes longer than a normal web request, so Unicorn API runs it as a job. You submit the request, get a job id back, and check the job until it finishes. The flow is the same for every video model:

  1. Create a key on the API keys page and export it as UNICORN_API_KEY.
  2. Optionally, try your prompt in the video playground first to tune it without writing code.
  3. Check the exact cost with POST /v1/models/price before running anything expensive.
  4. Send POST /v1/jobs with the model id and input.
  5. Poll GET /v1/jobs/{id} until status is "succeeded", then read outputs[0].url.

curl

curl -X POST https://api.unicornapi.net/v1/jobs \
  -H "Authorization: Bearer $UNICORN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "kling-3.0-omni/video",
    "input": {
      "prompt": "A slow drone shot over a rocky coastline at sunset, waves breaking",
      "duration": 10,
      "resolution": "1080p",
      "aspect_ratio": "16:9",
      "with_audio": true
    }
  }'

# Then check the job using the id from the response
curl https://api.unicornapi.net/v1/jobs/JOB_ID \
  -H "Authorization: Bearer $UNICORN_API_KEY"

Python

import os
import time
import requests

API = "https://api.unicornapi.net"
HEADERS = {
    "Authorization": f"Bearer {os.environ['UNICORN_API_KEY']}",
    "Content-Type": "application/json",
}

def kling_text_to_video(prompt, duration=10, resolution="1080p",
                        aspect_ratio="16:9", with_audio=True):
    body = {
        "model": "kling-3.0-omni/video",
        "input": {
            "prompt": prompt,
            "duration": duration,
            "resolution": resolution,
            "aspect_ratio": aspect_ratio,
            "with_audio": with_audio,
        },
    }
    r = requests.post(f"{API}/v1/jobs", json=body, headers=HEADERS, timeout=30)
    r.raise_for_status()
    job_id = r.json()["id"]

    while True:
        r = requests.get(f"{API}/v1/jobs/{job_id}", headers=HEADERS, timeout=30)
        r.raise_for_status()
        job = r.json()
        if job["status"] == "succeeded":
            return job["outputs"][0]["url"]
        if job["status"] == "failed":
            raise RuntimeError(f"Job {job_id} failed: {job}")
        time.sleep(5)

if __name__ == "__main__":
    url = kling_text_to_video(
        "A woman in a green raincoat sips coffee under a cafe awning on a "
        "rainy Tokyo street at dusk. Medium close-up, slow dolly in, neon "
        "reflections on wet pavement. Sound of light rain."
    )
    video = requests.get(url, timeout=120)
    with open("kling_clip.mp4", "wb") as f:
        f.write(video.content)
    print("Saved kling_clip.mp4 from", url)

To try Kling 4.0 Flash instead, change the model id to kling-4.0-flash-keyframe-to-video, add first_frame_url if you have a start image, and drop the fields that model does not accept (it takes prompt, duration, resolution, aspect_ratio and first_frame_url). If you build inside Cursor or Claude Code, the MCP setup lets your coding agent submit and poll these jobs for you.

How much does Kling AI text to video cost?

Unicorn API prices everything in credits. On a monthly plan a credit costs $0.01 (Starter $25, Creator $50, Studio $100, Pro $200 per month). Top-up credits cost $0.015 each and never expire. Full details are on the pricing page.

RequestCreditsOn a planWith top-ups
Kling 3.0 Omni, any listed duration70$0.70$1.05
Kling 4.0 Flash Keyframe, 5 s at 720p85$0.85$1.275
Kling 4.0 Flash Keyframe, 10 s at 720p170$1.70$2.55
Kling 4.0 Flash Reference, 10 s with video_urls113$1.13$1.695
Kling 4.0 Flash Reference, 10 s without video_urls170$1.70$2.55

Two things stand out. First, Kling 3.0 Omni is listed at a flat 70 credits per clip, so a 15-second clip costs the same as a 3-second one at that rate. Second, the Flash models charge by the second, so they are cheaper than Omni only for short clips: at 17 credits per second, the break-even point is just over 4 seconds. Because pricing rules can depend on every input, call the price endpoint with your real request before running a batch.

A worked budget

Say you want 40 ten-second social clips a month. With Kling 3.0 Omni that is 40 × 70 = 2,800 credits, or $28 on plan credits. The Creator plan at $50 a month covers it with room left for retries and drafts. The same 40 clips through Kling 4.0 Flash Keyframe at 720p would be 6,800 credits, so Omni is the better deal for clips of this length.

Is there a free way to try it?

Consumer apps and wrapper sites change their free allowances often, so check them directly. With an API, the cheapest way to test is to draft your prompt on a low-cost model, then render the final take on Kling. MiniMax H3 at 768P costs 8 credits per second, so a 5-second draft is 40 credits.

Pipeline showing how a Kling text to video API job runs from prompt to video URL
Every video job follows the same path: submit, poll, download.

Kling vs other text to video AI models

Kling is not the only option, and with one API key you can pick per job. Here is how the text to video AI generators on Unicorn API compare on the facts that matter most.

ModelText to videoMax lengthResolutionAudioExample price
Kling 3.0 OmniYes15 sUp to 4KNative70 credits per clip
Wan 3.0Yes30 sUp to 1080pNative, no extra cost80 credits for 5 s at 720p
Seedance 2.5Yes30 sUp to 1080pNative315 credits per clip
MiniMax H3 Text to VideoYesSee docs768P or 2KNot listed8 credits per second at 768P
Grok Imagine Video 1.0Yes30 sUp to 1080pNot listed45 credits for 10 s at 720p
Grok Imagine Video 1.5No, image to video only15 sUp to 1080pNot listed22.5 credits for 5 s at 720p

When Kling is the right pick

  • You need 4K output. Kling 3.0 Omni is the only model here that lists it.
  • You want multi-shot storyboards or named characters inside one generation.
  • Your clips run 10 to 15 seconds, where Omni’s flat price works out well.

When another model is better

  • Longer single clips: Wan 3.0, Seedance 2.5 and Grok Imagine Video 1.0 go to 30 seconds.
  • Very cheap drafts: Grok Imagine Video 1.0 at 480p or MiniMax H3 at 768P.
  • Prompts about current events or real products: Seedance 2.5 offers optional web search to ground the prompt.
  • Wide cinematic formats: Seedance 2.5 supports 21:9, which Kling 3.0 Omni does not list.

The full list, with every option and price, is in the model catalog.

Common mistakes with Kling AI text to video

These are the problems that waste the most credits, and the fixes that work.

  1. Packing a whole story into one shot. “She walks in, sits down, opens a laptop and starts laughing” asks for four actions. The model blends them or skips some. Use one action per clip, or split the story with multi_prompt.
  2. Describing the character differently each time. If shot one says “a woman in a green raincoat” and shot two says “a lady with an umbrella”, you will get two different people. Copy the exact description, or use reference images.
  3. Rendering at full resolution while still iterating. Lock the prompt on a cheap model or a short clip first, then render the final in 1080p or 4K.
  4. Ignoring aspect ratio. A 16:9 clip cropped to 9:16 for a vertical feed loses most of the frame. Set aspect_ratio to match where the video will be shown.
  5. Expecting legible text in the frame. Signs, labels and captions often come out garbled. Add text in your editor afterwards.
  6. Using text to video when you need a specific product. Kling will invent a plausible bottle, not your bottle. Supply a start image.
  7. Hot-linking the output URL. Download the file to your own storage once the job succeeds, as the Python example does, so your app does not depend on a temporary link.
  8. Not checking the price on per-second models. A 20-second request on a per-second model costs four times a 5-second one. Run POST /v1/models/price before batches.

If your clips include people speaking, read the Kling AI lip sync guide for matching dialogue to mouth movement, which is a separate step from generation.

Which Kling option should you choose?

For most people starting with Kling AI text to video, Kling 3.0 Omni is the default: it accepts a plain prompt, goes up to 15 seconds and 4K, generates audio, and costs a flat 70 credits per clip. Move to Kling 4.0 Flash Keyframe To Video when you already have the exact first frame you want, and to Kling 4.0 Flash Reference to Video when you need the output to follow existing images or footage.

The practical workflow is simple. Draft your prompt in the playground, confirm the price, run it through the API with the code above, and keep a cheaper model on hand for drafts and long clips. Because every model shares the same key, request shape and credit balance, changing your mind costs one line of code rather than a new account.

Frequently asked questions

Is Kling AI text to video free?

It depends on where you use it. Consumer apps and wrapper sites change their free allowances often, so check their current terms directly. Through Unicorn API every generation is paid in credits. A Kling 3.0 Omni clip is listed at 70 credits, which is $0.70 on a monthly plan or $1.05 with top-up credits. For cheap drafts, MiniMax H3 at 768P costs 8 credits per second of video.

How long can a Kling AI text to video clip be?

On Unicorn API, Kling 3.0 Omni accepts durations from 3 to 15 seconds. If you need a single clip longer than that, Wan 3.0, Seedance 2.5 and Grok Imagine Video 1.0 go up to 30 seconds. For longer pieces, most teams generate several short shots and join them in an editor, using the last frame of one shot as the start image of the next to keep continuity.

What is the difference between text to video and image to video in Kling?

Text to video starts from a written prompt only, so the model invents the subject, framing and style. Image to video starts from a picture you supply and animates it, which gives you much tighter control over how the first frame looks. Kling 3.0 Omni supports both through its image and end_image fields, and Kling 4.0 Flash Keyframe To Video is built around a first_frame_url.

Does Kling AI text to video generate sound?

Kling 3.0 Omni supports native audio. Set with_audio to true in the request input and the model generates sound with the video, so you do not need a separate audio pass for ambience or effects. Wan 3.0 and Seedance 2.5 also offer native audio. If you need dialogue matched to a face, a dedicated lip sync step is usually the more reliable route.

Can I use Kling AI text to video through an API?

Yes. With Unicorn API you send POST /v1/jobs with the model id kling-3.0-omni/video and a prompt, then poll GET /v1/jobs/{id} until the status is succeeded and read the video URL from outputs[0].url. The same key and request shape work for Wan, Seedance, MiniMax and Grok video models, so switching models means changing one string.