How AY Rank Generates Hundreds of On-Brand Images Without Slop
Every workflow that ships content needs images. We treat image generation as a pipeline, locked brand prompt, model call, vision-verify QA, alt-text + ImageObject schema, CDN push, never as a one-off Midjourney spin.
- Cadence
- Per page + weekly batch
- Output
- Brand-consistent images with schema + alt-text
- Category
- Content production
Stock photography is dead in AI-search results. Generic AI images are worse, they get flagged as slop and tank trust. The fix is a locked brand system: same color palette, same composition rules, same prompt structure, applied across hundreds of images so they read as one brand. We also generate ImageObject JSON-LD and descriptive alt-text so the images are crawlable by AI engines, not just humans.
The workflow.
6 steps · runs at per page + weekly batch
- 01
Lock the brand prompt template
A single prompt template per brand defines palette, composition, mood, lighting, subject framing, and forbidden elements. The template is versioned in the repo. Every downstream call inherits from it, designers cannot drift into off-brand prompts.
- 02
Generate via Nano Banana 2 (Gemini 3.1 Flash Image)
We use Nano Banana 2 for production: 4K quality at Flash latency, with image-to-image editing for consistency runs. For hero illustrations we batch 4–6 variants per slot; for thumbnails one variant is enough.
- 03
Vision-verify QA loop
Every generated image is screenshotted and read back by Claude with the brand spec as context. The verifier flags off-brand color, broken hands, text artifacts, slop signals (over-rendered chrome, generic stock-photo composition). Fail → regenerate.
- 04
Alt-text + ImageObject schema
For every image we ship, we auto-generate descriptive alt-text (not the filename, not "image of X") and a schema.org/ImageObject JSON-LD block with caption, creator, license, and contentUrl. This is what LLM crawlers parse, bad alt-text means the image is invisible to AI search.
- 05
Programmatic OG image generation
Every page on the site gets a per-page OG image generated at build time from the page title + brand template, via Vercel OG. This is how /workflows, /workflows/keyword-research, every blog post, every service-city page get unique social cards without manual design.
- 06
CDN + lazy-load + AVIF/WebP
Images are pushed to the public CDN with AVIF as primary, WebP fallback, and a lazy-load boundary. Hero images are above-the-fold preloaded. We never ship a 2MB PNG.
The stack.
A representative cadence.
- Per content pieceRollingHero + 2–3 inline images via Nano Banana
- Per content pieceRollingVision-verify QA → regenerate failed
- Per content pieceRollingAlt-text + ImageObject JSON-LD
- Build timeRollingOG image auto-generated from title
- WeeklyRollingLibrary cleanup, broken-image scan
What you get.
- 4K on-brand hero + inline images for every published page
- Per-image alt-text + ImageObject JSON-LD
- Per-page OG image (Twitter, LinkedIn, Facebook)
- AVIF + WebP responsive variants on a global CDN
Get the on-brand image playbook.
The locked brand prompt, vision-verify checklist, alt-text patterns, and ImageObject JSON-LD scaffold we ship with every visual.
No spam. Unsubscribe anytime.
Common questions.
Do you strip C2PA or AI-generated metadata from images?
No. We keep provenance signals intact. Google does not demote AI-generated images for being AI-generated; what it does demote is generic slop with broken hands, fake text, and stock-photo composition. Stripping AI-origin metadata is the bad-actor playbook and may become a future negative signal.
Why not use Midjourney or DALL·E?
For production we use Nano Banana 2 because it ships 4K quality at Flash latency with image-to-image editing, that consistency unlocks brand-locked batches. Midjourney still wins on artistic ceiling, so we use it for one-off hero illustrations when the brand system allows it.
How do you keep images on-brand across hundreds of pages?
A single locked prompt template in the repo. Every downstream call inherits palette, composition, mood, and forbidden elements from it. The template is versioned, when the brand evolves, every new generation picks up the new template automatically.
Are AI engines actually reading image metadata?
Yes. ChatGPT, Perplexity, and Google AI Overviews use ImageObject JSON-LD, alt-text, and surrounding caption text when deciding which images to surface or cite. Bad metadata means the image is invisible to AI search, even if it ranks visually in classic image search.
Related workflows.
Want this workflow running on your brand?
Book a free GEO audit. We'll tell you whether this play moves the needle for your category and what citation share is realistic in 90 days.
Book a free GEO audit»

