How to Compile a Veo 3.1 Shot List from a Product-Video Brief

Veo shot lists mint a durationSeconds field and a celebrity hand the brief never named. Quote Subject, Action, Camera, Environment, and Audio. If Duration or Resolution is blank, write NOT IN INPUTS. Do not invent API params.
The matching generator is the Veo 3.1 Shot-List Compiler from a Product-Video Brief (No Logos, No Celebs, No Invented API Params) (Veo 3 1 Shot List Compiler From A Product Video Brief No Logos No Celebs) prompt. Browse related cards in the PromptDig library (Browse more prompts). When a filled run survives, share the version you actually use (Share a prompt).
This card lives in Video, not Creative. Creative already has a combined Sora 2 and Veo 3.1 product-ad shot list and a UGC testimonial list that names both models. Here you compile Veo 3.1 only. You do not dump a Sora 2 storyboard.
Quote subject action camera environment and audio
Compile a Veo 3.1 shot list from a product-video brief. Duration and resolution from Inputs only. No logos, no celebs, no invented API params. Start by filling Inputs. If a field is blank, write NONE or NOT IN INPUTS and leave it blank through Generate. The card is built so the model cannot honestly invent a durationSeconds value, a generateAudio flag, or a personGeneration setting that you did not paste.
Paste these fields before you hit run:
Product-video brief (SKU, materials, what must stay in frame): [Brief]
Subject as type (not a celeb): [Subject]
Action I lock: [Action]
Camera I lock: [Camera]
Environment I lock: [Environment]
Audio I lock (or UNKNOWN): [Audio]
Duration I lock (or UNKNOWN): [Duration]
Resolution I lock (or UNKNOWN): [Resolution]
Shot count I lock: [Count]
Words I must not use: [Banned]
What I must never invent (API params, logos, celebs, extra SKUs): [Never]
Output format: [Format]
Language: [Lang]
Negative list I lock: [Neg]
That inventory is the honesty ledger. Anything that does not appear there is forbidden in the shot list. If you catch yourself adding a slow 360 because orbit looks expensive, put the extra camera move in Inputs and run again. Type talent as a type (adult hands, no face) so the compiler cannot attach a likeness.
Walk the numbered Generate list
Generate is numbered on purpose. Do not skip the API param audit because the first four shots looked paste-ready.
Walk the Generate list in order:
- Honesty ledger: Brief nouns, Subject type, Action, Camera, Environment, Audio or AUDIO NOT IN INPUTS, Duration or DURATION NOT IN INPUTS, Resolution or RESOLUTION NOT IN INPUTS, Count, Neg, Lang.
- Shot list: exactly Count shots. Each shot quotes Subject, Action, Camera, Environment, Audio. Name Veo 3.1. Quote Duration and Resolution or write NOT IN INPUTS.
- Continuity: same SKU, same table, same time of day. If Brief did not name a second SKU, write SECOND SKU NOT IN INPUTS.
- Audio lock: quote Audio or AUDIO NOT IN INPUTS. Do not set generateAudio true. Do not invent a licensed track or VO line.
- Refuse list: Sora 2 storyboard dump, combined Sora-and-Veo product-ad pack, UGC testimonial quotes, Kling orbit, living-celebrity likeness, pack logos.
- API param audit: print Duration as pasted or DURATION NOT IN INPUTS. Print Resolution as pasted or RESOLUTION NOT IN INPUTS. Print other API fields as NOT IN INPUTS.
- Never: do not add a celebrity hand. Do not etch a wordmark. Do not invent a personGeneration flag.
- Compliance pass: quote Banned and Never hits. Cut them. Count shots vs Count. Format as Format. Gaps list of five.
Keep the refuse list in the published artifact. Eight seconds is legal only when Duration said 8s. 1080p is legal only when Resolution said 1080p.
Refuse logos celebs and invented API params
Most failures are the same shape: a missing field gets a confident fill. A durationSeconds=8 appears. A Nike stamp appears on an unbranded kettle. A recognizable face appears where Inputs asked for adult hands as type. Search the draft for API-shaped keys, brand marks, and names, then grep Inputs. No match means cut.
Honor the constraints as hard stops, not vibes:
- Veo 3.1 shot list from Brief, Subject, Action, Camera, Environment, Audio. Not a Sora 2 storyboard and not a UGC testimonial pack.
- Duration and resolution from Inputs only. No invented API params.
- No logos, no celebrities, no extra SKUs.
- Honor Count. No emojis.
If Audio named a pour and a glass tick, those two sounds are the lock. A licensed track name and a VO line are inventions unless Inputs allowed them.
Print the API audit and the gaps
Finish with the compliance pass. Quote banned-word hits. Cut them. Print Duration as pasted or DURATION NOT IN INPUTS. Print Resolution as pasted or RESOLUTION NOT IN INPUTS. Count shots against Count. List gaps as gaps. Five missing facts (fps, Kelvin, seed, quality tier, carafe thickness) are more useful than one smooth paragraph that smuggles 4K.
Tags on the card (veo 3.1 shot list compiler, product video brief no logos, no invented api params) mark the job shape. If you need a Sora 2 storyboard from pasted beats, open that Video card. If you need the older combined product-ad pack, it still lives in Creative.
Fill the card, then run
Replace every bracket. Run on ChatGPT, Claude, or Gemini, then paste the compiled shots into the Veo 3.1 surface you actually locked. Read the ledger first, then the shot list, then the API param audit. If the model invents a celebrity, a logo, a durationSeconds field, or a second SKU, discard the run. Tighten Inputs. Run again.
A good run of Veo 3.1 Shot-List Compiler from a Product-Video Brief (No Logos, No Celebs, No Invented API Params) (Veo 3 1 Shot List Compiler From A Product Video Brief No Logos No Celebs) is smaller than a bad run. It names Veo 3.1, quotes the five pillars, and leaves blanks blank. Keep the refuse list visible. Keep the gaps list visible. When the shot list survives, share the filled version (Share a prompt) so the next person starts from the same lock list.