Prompt → Visual Asset QA before anything ships
A take-home recipe that runs a 4-variant QA grid on a bundled sample prompt before any image lands on a public surface. Brand-safety, on-prompt fidelity, embedded-text check, alt-text candidate.
- Time
- 15 minutes
- Cost
- $0 (recipe uses pre-rendered placeholder cards)
- Stack
- Bundled sample prompt4 placeholder variantsQA grid template
You’re stuck with
You saw the Imagen + Veo updates at I/O 2026 and want a repeatable QA loop so a half-broken variant never ends up in a hero card.
You end up with
A one-page QA grid that picks one variant to ship and logs the other three with a one-line reason.
The recipe
1. Why this recipe exists
The I/O 2026 generative-asset story is that generation is cheap. The expensive part is the QA grid that stops the wrong variant from shipping. Most teams have a sketch of this loop in someone's head. This recipe writes it down.
2. Lock the prompt
The recipe ships with one sample prompt: compact dashboard hero, dark slate, one chart, no text. Locking the prompt means it does not change between variants. If it changes, you are running a different experiment.
3. Load four placeholder variants
No live model call. The recipe ships four pre-rendered placeholder cards so the loop is testable without a paid generation pass. Each card stands in for what a real Imagen / Veo output would look like, including the failure modes.
4. Run the QA grid
Four checks per variant:
- Brand safety. Anything that violates the brand bar fails.
- On-prompt fidelity. Off-theme or off-style fails.
- Embedded text. Any stray rendered text fails. Public surfaces should never ship model-rendered text.
- Alt-text candidate. A one-line alt-text the variant could ship with.
5. Pick one + log the rest
Exactly one variant ships. The other three land in a rejected-asset log with a one-line reason. The log is the durable artifact, so six weeks later you can re-read why a variant was passed over.
What the artifact looks like
The hero renders the sample QA grid for the bundled prompt: variant A ships, variants B / C / D land in the rejected log with one-line reasons (stray text, off-prompt, busier-than-needed). Copy the artifact text and paste it into the asset PR description.
Public-safe rails
- No live generation. Recipe uses pre-rendered placeholder cards so the loop runs $0.
- Embedded-text check. Any variant with stray rendered text fails QA.
- Brand-safety check. Runs on every variant before the row is marked shippable.
Get new workflows and breakdowns in your inbox.