Veo 3 prompting in one paragraph: Veo 3.1 is Google’s video model. It makes 4, 6 or 8-second clips with dialogue, sound effects and ambience generated together with the picture. Google’s own guide recommends a five-part prompt: cinematography, subject, action, context, and style and ambiance, with dialogue in quotation marks and sounds on their own labeled lines. JSON prompting is popular on social media, but Google doesn’t document or recommend it. It’s a way to organize your prompt, not a hidden feature. This guide shows both approaches.
Based on Google’s official Veo documentation, checked September 29, 2026. We haven’t yet run a side-by-side test of JSON and plain prompts; we’ll add results when we do.
Where to Use Veo 3.1
| Where | Who it’s for |
|---|---|
| Google Flow | Filmmakers and creators. Google’s video tool, included with Google AI subscriptions |
| Gemini API (Google AI Studio) | Developers and people working with AI coding tools |
| Vertex AI | Businesses on Google Cloud |
Note that the consumer Gemini app now uses Google’s newer Gemini Omni model for video, so prompts there may behave differently from Veo 3.1 in Flow or the API.
What Veo 3.1 can do
- Text-to-video and image-to-video (animate a still you provide)
- First and last frame: give a start and end image, and Veo fills in the motion
- Ingredients: up to 3 reference images to keep a character, object or style consistent
- Extend: continue a clip, 7 seconds per extension (at 720p)
- Clip lengths of 4, 6 or 8 seconds at 720p, 1080p or 4K, in 16:9 or 9:16, at 24 fps
- Native audio: speech, sound effects and ambience in one pass
Every Veo video carries Google’s invisible SynthID watermark.
Google’s Five-Part Veo Prompt Formula
Google Cloud’s prompting guide breaks a strong Veo prompt into five parts:
| Part | What to write | Example |
|---|---|---|
| Cinematography | Shot size, camera movement, lens | Medium shot, slow dolly-in |
| Subject | Who or what, with visible details | a tired corporate worker |
| Action | What the subject does | rubbing his temples in exhaustion |
| Context | Where and when | a cluttered office late at night |
| Style and ambiance | Look, mood, lighting | harsh fluorescent light, 1980s film grain |
Here’s Google’s own example, which follows the formula almost exactly:
“Medium shot, a tired corporate worker, rubbing his temples in exhaustion, in front of a bulky 1980s computer in a cluttered office late at night. The scene is lit by the harsh fluorescent overhead lights and the green glow of the monochrome monitor. Retro aesthetic, shot as if on 1980s color film, slightly grainy.”
And one where the camera move does the storytelling:
“Crane shot starting low on a lone hiker and ascending high above, revealing they are standing on the edge of a colossal, mist-filled canyon at sunrise, epic fantasy style, awe-inspiring, soft morning light.”
Google DeepMind’s guide sums it up: “The more detail you add, the more control you’ll have over the final output.”
Writing Dialogue and Sound for Veo 3
Veo 3.1’s biggest strength is sound. Google’s guide gives each kind of audio its own convention:
- Dialogue: put exact speech in quotation marks, and say who’s speaking. A woman says, “We have to leave now.”
- Sound effects: start a line with
SFX:. SFX: thunder cracks in the distance. - Ambient noise: start a line with
Ambient noise:. Ambient noise: the quiet hum of a starship bridge.
Put together:
Close-up of an old lighthouse keeper at a rain-streaked window, lit by a swinging oil lamp. He turns to the camera and says, "She's coming in too fast."
SFX: a foghorn blasts twice.
Ambient noise: heavy rain on glass, wind howling around the tower.
Keep lines short. An 8-second clip fits about one or two short sentences of speech comfortably.
Timestamp Prompting: Several Beats in One Clip
Google’s guide also shows timestamps for directing distinct moments inside one clip:
[00:00-00:02] Wide shot: a street musician tunes a violin under a streetlight, snow falling.
[00:02-00:05] Close-up on her hands as she begins to play, breath visible in the cold.
[00:05-00:08] Slow pull-back revealing a small crowd gathering. Ambient noise: distant traffic, soft applause.
Use it for two or three beats at most in 8 seconds. More than that and the clip feels rushed.
Negative Prompts: Say What You Want Instead
Google recommends describing what should be there rather than writing “no” lists. Instead of no man-made structures, write a desolate landscape with no buildings or roads, or better, describe the empty landscape itself. If you use the API, there’s also a separate negative_prompt parameter.
What About JSON Prompting for Veo 3?
“Veo 3 JSON prompts” became a popular trend: people write prompts as structured code, like this:
{
"shot": "medium close-up, slow dolly-in, 35mm lens",
"subject": "an old lighthouse keeper in a wool sweater, grey beard",
"action": "turns from the window toward the camera",
"setting": "top of a lighthouse at night, rain on the glass",
"lighting": "swinging oil lamp, warm light against cold blue night",
"style": "cinematic, shot on 35mm film, muted colors",
"dialogue": "She's coming in too fast.",
"sfx": "a foghorn blasts twice",
"ambient": "heavy rain, wind around the tower"
}
What we know:
- Google doesn’t document JSON prompting. None of Google’s Veo guides (Google Cloud, DeepMind, Vertex AI or the Gemini API docs) mention JSON. All their examples are written in plain sentences.
- Veo reads it as text. The prompt field takes text, and a JSON block is just text with extra punctuation. There’s no special JSON mode.
- We haven’t found reliable evidence that JSON beats a well-written plain prompt. The claims are from social posts and tutorials, not controlled tests.
Why people like it anyway: the structure is the real benefit. JSON forces you to fill in every part (shot, subject, action, setting, lighting, sound), which is exactly what Google’s own formula asks for. It also makes prompts easy to reuse: change only the action line and keep the rest identical for a consistent series. And it’s handy when a script or an AI assistant generates prompts for you.
Our recommendation: use JSON if it helps you think or you’re generating prompts with code. Otherwise, write the same fields as labeled plain text, which keeps the structure and reads the way Google’s examples do:
Shot: medium close-up, slow dolly-in, 35mm lens.
Subject: an old lighthouse keeper in a wool sweater with a grey beard.
Action: he turns from the window toward the camera and says, "She's coming in too fast."
Setting: top of a lighthouse at night, rain streaking the glass.
Lighting and style: a swinging oil lamp, warm light against a cold blue night, shot on 35mm film, muted colors.
SFX: a foghorn blasts twice.
Ambient noise: heavy rain, wind howling around the tower.
Either way, the words inside the fields matter far more than the brackets around them.
What Veo 3.1 Costs
In Google Flow, generations use the credits included in Google AI subscriptions. Through the API (Vertex AI), Google charges per second of generated video:
| Model | 720p / 1080p | 4K |
|---|---|---|
| Veo 3.1 | $0.40/s | $0.60/s |
| Veo 3.1 Fast | $0.10/s (720p), $0.12/s (1080p) | $0.30/s |
| Veo 3.1 Lite | $0.05/s (720p), $0.08/s (1080p) | Not listed |
An 8-second 1080p clip costs about $3.20 on the standard model or about $0.96 on Fast. Draft on Fast or Lite, then render the keeper on the standard model.
Veo 3 Prompt Checklist
- Lead with the shot: size, movement, lens
- Give the subject visible details, not adjectives like “beautiful”
- One clear action per beat, no more than three beats in 8 seconds
- Dialogue in quotes with a named speaker
SFX:andAmbient noise:on their own lines- Describe what’s there instead of listing what isn’t
- JSON is optional. Structure is what counts.
Next Steps
- Build a structured video prompt in seconds with the Video Prompt Builder
- Compare Veo with Kling and Seedance in Best AI Video Generators
- Learn Kling’s prompt style in our Kling 3.0 Guide
- Try ByteDance’s model in How to Use Seedance 2.5