AI Video From a Script: A Shot-Level Workflow

Turn a finished script into 8-12 well-paced AI shots: break it into shot-level prompts, decide literal vs evocative per shot, then cut audio first. Tools, clip limits and costs as of June 2026.

TL;DR

You have a script you are proud of. You paste it whole into an AI video tool and get back a string of literal, stock-footage-looking clips that miss the subtext. The fix is not a better model. It is breaking the script into shot-level prompts and deciding, per shot, whether you want a literal visual (what the line says) or an evocative one (what the line means). Aim for roughly 60% literal and 40% evocative, generate each shot a little longer than you need, then cut the audio first and drop visuals on top. This turns a 60-second script into 8 to 12 well-paced shots in about 90 minutes, generation included.

Because every current model caps a single generation at a handful of seconds — 8 seconds on Google Veo 3.1, 5 to 10 on Runway Gen-4.5, 4 to 12 on Sora 2 standard — a “one clip per script” approach was never an option anyway. The shot list is the work.

Who this is for

Writers and content creators who script first and visualize second: essayists, video podcasters, indie filmmakers, brand marketers narrating product stories, and educators producing explainer content. It is most useful when the script’s voice or thesis matters more than glossy production. The literal-vs-evocative discipline is what carries voice into picture.

When to reach for it

  • You have a finished script (narration, monologue, voiceover, or dialogue) and need accompanying visuals.
  • You are revising a video you already produced: re-mapping shots to the existing script lets you swap weak visuals without recutting audio.
  • You are repurposing a podcast or talk clip as a short video. The audio is already cut; you just need 30 to 60 seconds of picture.

When this is NOT the right tool

Pure improvisational visual work where you compose in the moment. Projects where the visual is the script (animation and music videos that are storyboarded before they are written). Documentary work where the picture has to be real footage of real events. And any project where rights to AI-generated imagery are a problem — some publications still reject AI visuals for editorial work, and the major models carry different commercial-use terms (more on that below).

Pick a model before you write prompts

Single-generation length is the constraint that shapes your whole shot list, so choose the tool first. Figures below are current as of June 2026; verify on the vendor’s own pricing page before you commit a budget.

Tool / modelMax single clipNative audioConsumer accessIndicative API cost
Google Veo 3.1 (Fast/Quality)8 sYes (dialogue + SFX)Google AI Pro $19.99/mo (Gemini app + Flow, ~1,000 Flow credits)~$0.10-0.40 / sec
Runway Gen-4.55-10 s (extendable to ~16 s)No (add in post)Standard from $12/mo (~625 credits), Pro $35/mo25 credits/sec (~$1.50/clip)
Kling 3.0longer multi-second, Extend to ~3 minNoCredit packs / subscription~$0.10/sec
Sora 2 (standard)4 / 8 / 12 sYesVia ChatGPT Plus $20 / Pro $200$0.10/sec (Pro tier higher)

Practical read: for narration-driven explainers where you want spoken lines and sound baked in, Veo 3.1 inside the Gemini app or Flow is the simplest path. For maximum directorial control and a clean no-audio plate you score yourself, Runway Gen-4.5 is the workhorse, and its dashboard also exposes Veo 3.1 and Kling 3.0 Pro so you can match each shot to the best engine. For the longest single takes and strong character reference, Kling 3.0 wins. If you want sound and lip-sync inside one generation and already pay for ChatGPT, Sora 2 is a fine option, but note OpenAI now gates it behind Plus and Pro only.

Step by step

  1. Read the script aloud and time it. Mark moments where a visual shift would help — generally one every 4 to 8 seconds. Add timestamps so durations align later.
  2. Tag each marked moment literal or evocative. Literal works for concrete nouns; evocative works for abstract claims and emotional beats.
  3. Check the ratio. Aim for roughly 60% literal, 40% evocative. Too literal feels like a slideshow; too evocative loses the viewer. Read the marked script back and recount.
  4. Write one prompt per shot. Set the requested clip length to the script section plus 0.5 to 1 second of editing buffer. A 6-second line gets a 7-second generation — and keep each shot inside your chosen model’s cap (8 s on Veo, 5-10 s on Runway).
  5. Generate all shots, slightly long. Accept a 30 to 50% re-generation rate on the first pass; abstract beats often need 2 to 3 tries. In Runway this is real money (25 credits per generated second), so batch your prompts and re-roll deliberately, not reflexively.
  6. Cut the audio first, then drop visuals on top. Audio drives the cut; visuals serve audio. This is the opposite of how you would cut live footage.
  7. Test the cut with the sound off. If the visuals tell a recognizable version of the story alone, you have enough. If not, two or three shots need to be stronger or different.

Keeping characters and settings consistent

Inconsistency across shots is the single biggest tell that a video was assembled from separate generations. Three concrete levers, in order of reliability:

  • Reference images over text. In Kling 3.0, upload 3 to 4 images of your character from different angles (front, side, profile) to the Element Library and use Bind Subject in image-to-video mode. A visual anchor holds far better than describing the same face in words across ten prompts.
  • A fixed style line in every prompt. Repeat an identical clause — lighting, lens, palette, grain — verbatim at the end of each shot prompt. Models latch onto consistent phrasing.
  • Seeds where the tool exposes them. Reusing a seed nudges successive generations toward the same look. It is not a guarantee, but it narrows the variance.

For a deeper treatment, see AI video style consistency.

Voiceover: when AI is fine and when it isn’t

AI voiceover is good enough for most explainer and social work. ElevenLabs Starter is $5/month and unlocks commercial rights plus instant voice cloning; the Creator plan is $22/month for 100,000 characters (about an hour of multilingual speech), with overage at roughly $0.30 per 1,000 characters as of June 2026. OpenAI’s built-in voices are another low-friction option. Reserve a human voice actor for high-stakes brand work, or anywhere the voice itself is the product.

Quality check

  • Shot count matches your mark density. A 60-second script has 8 to 12 shots, not 30, not 4.
  • Literal-to-evocative ratio is roughly 60/40. Recount after generation — some literal prompts come back evocative anyway.
  • Every shot has 0.5 to 1 second of buffer on each end. No back-to-back hard cuts on the frame boundary.
  • Audio cuts and visual cuts align within 100 ms. If they drift, the brain reads “out of sync” before you can name why.
  • The silent-test cut conveys the script’s gist. If you have to read a transcript to understand it, your visuals are too evocative.
  • No shot does double duty for two unrelated lines. Each prompt is for exactly one beat.

How to reuse this workflow

  • Save the read-aloud-and-mark step as a template doc with two columns: timestamp plus line, and literal/evocative plus prompt seed.
  • Build a small library of prompts that have produced strong evocative shots for recurring themes you cover (remote work, AI fatigue, creativity). Reuse the seeds; tweak the specifics.
  • Track your re-generation rate per shot type. If evocative shots take 3-plus tries, your prompts are too vague — add concrete visual anchors.
  • For multi-episode work, keep a visual vocabulary doc: characters, palette, recurring motifs. Reference it in every prompt so AI shots stay consistent.
  • Every few weeks, regenerate a successful shot on the current model version. When the newer version matches or beats it, migrate.

Common mistakes

  • One visual per sentence. Sentences are too small a unit; you end up with 30 shots in a minute and the cut feels frantic.
  • Only literal visuals. The video reads like a slideshow inventorying nouns. Voice carries the literal information; let picture do something else.
  • Only evocative visuals. The viewer loses the thread. Anchor every 8 to 12 seconds with a literal beat.
  • Generating before reading aloud. You miss the natural pacing of your own writing and cut in the middle of phrases.
  • Letting visuals drive the cut instead of audio. AI shots have arbitrary length; if you cut to them, the script gets chopped.
  • Writing prompts longer than the model can render. Asking for a 20-second shot from an 8-second model just truncates it; split the beat.
  • Skipping the silent test. Sound covers a multitude of visual problems; mute reveals them.

Advanced tips

  • For dialogue-heavy scripts, alternate close-ups (character emotion) with wides (environment). Two close-ups in a row reads as repetitive.
  • For narration, lean evocative — the voiceover already carries literal information. 50/50 or even 40/60 literal/evocative often works.
  • For interview or podcast clips, the visual job is to maintain attention, not explain. Lean toward atmospheric or abstract shots.
  • For ads with a call to action, end on a literal product shot. Evocative endings perform measurably worse on click-through.
  • Check commercial-use terms before you publish: Veo’s consumer output via Google AI plans and Runway’s paid tiers cover commercial use, while free tiers and watermarked output often do not.

FAQ

  • Which AI video tool should I start with for a scripted explainer? If you want spoken lines and sound baked in, Google Veo 3.1 in the Gemini app (Google AI Pro, $19.99/month) is the least fiddly. If you want directorial control and will add voice yourself, Runway Gen-4.5 (from $12/month) is the workhorse and also gives you Veo and Kling 3.0 from one dashboard.
  • How long can a single AI clip be in June 2026? Veo 3.1 caps at 8 seconds per generation, Runway Gen-4.5 at 5 to 10 (extendable to about 16), and Sora 2 standard at 4, 8, or 12 seconds. Kling 3.0 goes longest, with an Extend feature reaching roughly 3 minutes. Anything longer is several generations stitched in your editor — which is exactly why you build a shot list.
  • My script has 4-minute monologues. Same workflow? Yes, but split it into 30 to 60 second segments and apply the workflow per segment. A single 4-minute master is too unwieldy, and no model renders it in one take anyway.
  • How do I keep a character looking the same across shots? Reference images beat text. In Kling 3.0, bind 3 to 4 angle shots in the Element Library; everywhere else, repeat an identical style clause and reuse seeds. See AI video style consistency.
  • What about subtitles or captions? Add them in post. Baking captions into the generation locks them; overlaying in the editor lets you re-time without re-rendering.
  • Can I use this for animated shorts? Yes, but shift the ratio toward evocative — animation is already a stylized layer over reality, so literal shots carry less weight.

Tags: #Tutorial #Video generation #Script #Workflow