GEMINI OMNI PROMPTS

Free tool · Runs in your browser · No sign-up

Veo 3.1 JSON Prompt Builder

Turn a shot idea into a structured JSON prompt Veo parses reliably. Fill in the fields — subject, camera, lighting, audio, dialogue — and the panel on the right assembles a clean, always-valid JSON object as you type. The builder watches your character budget and warns you when dialogue exceeds what fits in the clip length you picked.

Subject & scene
Camera
Lighting
Audio
Dialogue

Rule of thumb from the official guide: about 2 short sentences per 8-second clip. The builder counts sentences for you.

Style & duration
Your JSON prompt
 
Open Gemini ↗

What JSON prompting is — and why it beats prose for Veo

A JSON prompt describes your shot as named fields instead of one flowing paragraph: subject, scene, camera, lighting, audio, style, duration_seconds. Google Cloud’s official Veo prompting guidance endorses exactly this kind of structured, attribute-by-attribute prompt, and the community keeps rediscovering the same result: structured prompts land far more first-try successes than prose. Three reasons why:

  • Nothing gets forgotten. Prose prompts routinely omit camera movement, audio, or duration because you simply did not think to mention them. A form with a field for each attribute forces the decision — and Veo fills unspecified attributes with whatever it likes, which is where most “that’s not what I asked for” results come from.
  • Details stop bleeding into each other. In a paragraph, “dark” might attach to the jacket, the alley, or the mood. In JSON, "lighting" is unambiguous. This matters most for dialogue: a quoted line inside prose sometimes gets narrated or paraphrased, while a dialogue array with explicit speaker and line fields is delivered as speech.
  • Iteration becomes surgical. When take one is 90% right, you change one field — swap the lens, adjust the lighting — and regenerate. With prose you end up rewriting the paragraph and accidentally changing three other things. This is the workflow paid tools like promptveo3.com sell; this page does it free in your browser.

The builder only emits fields you filled in, so the output stays compact, and it is generated with JSON.stringify — quoting and escaping are always correct, no matter what characters your dialogue contains.

Worked examples

Three complete prompts built with this exact structure. Copy them directly, or press Load into builder to drop one into the form above and start tweaking fields.

1. Cinematic shot — atmosphere and camera language

A single moody shot where camera and lighting carry the story. Note how the movement and lens are named precisely — Veo responds much better to real cinematography vocabulary (“slow dolly in”, “anamorphic”) than to vague words like “epic”.

  

2. Product shot — clean, controlled, ad-ready

For product work, keep the scene minimal and spend your budget on lighting and camera motion. A slow orbit plus studio lighting reads instantly as a commercial. No dialogue — let the music field set the tone instead.

  

3. Dialogue scene — two short sentences, no more

The dialogue budget is the most common failure point. This example stays inside the two-short-sentences rule for an 8-second clip, so the delivery is unhurried and the lip sync holds. If you load it and add a third sentence, watch the builder’s warning appear.

  

4. Ambient / ASMR shot — audio does the heavy lifting

Veo generates native audio, and prompts that specify it precisely stand out. Here the audio.ambient field is the star; the visuals stay simple so the soundscape reads clearly.

  

Go deeper: Veo guides on this site

More free tools

FAQ

What is a Veo JSON prompt?

Instead of describing your video in one long paragraph, you write the prompt as a structured JSON object with named fields: subject, scene, camera (shot type, movement, lens), lighting, audio, dialogue, style, and duration. Veo 3 and Veo 3.1 parse this structure reliably, and Google Cloud’s official Veo prompting guidance endorses structured, attribute-by-attribute prompts. In practice the structure stops details from getting lost in prose, so first-try results land much closer to what you asked for.

Does Veo actually accept JSON, or is this just formatting?

Veo accepts plain text, and a JSON object is still plain text — the model reads it fine. The win is not a secret API: it is that JSON forces you to fill in every attribute the model needs (camera, lighting, audio, duration) instead of forgetting them, and it keeps each detail unambiguous. Creators who switched from prose to structured prompts consistently report fewer retries per usable clip.

How much dialogue fits in an 8-second Veo clip?

Roughly two short sentences per 8-second segment — that is the rule of thumb from the official prompting guidance. Cram in more and Veo rushes the delivery, mangles the lip sync, or cuts the line off mid-word. This builder counts your dialogue sentences live and warns you when you exceed the budget for the duration you picked.

Why is there a 2,000-character budget?

Very long prompts do not fail outright, but past a point extra text dilutes the details that matter and the model starts ignoring parts of the prompt. Keeping a structured prompt under about 2,000 characters keeps every field load-bearing. The live counter under the output panel shows exactly where you stand.

Can I use these JSON prompts in Flow, Gemini, or Vertex AI?

Yes. Copy the JSON output and paste it as the text prompt in whichever Veo surface you use — the Gemini app, Flow, or the Vertex AI API. Field names are plain English, so the same object works everywhere Veo takes a text prompt.

Is this tool free? Does it store my prompts?

Free, no sign-up, and everything runs in your browser — nothing you type is sent to a server. Build the JSON, copy it, and paste it into your Veo tool of choice.