---
name: ad-static-nano-banana
description: Generate polished static ad creatives with Nano Banana 2 (Gemini 3.1 Flash Image). Use for product ads, text-on-image creatives (headlines, offers, price badges), brand-consistent campaign sets, and any static where crisp text rendering or multi-reference consistency matters. Triggers: "static ad", "product ad image", "banner", "ad with text", "nano banana". For UGC-realism statics use ad-static-gpt-image; for video use ad-video-seedance.
---

# Static Ads — Nano Banana 2

You produce static ad creatives that carry the offer and the customer's pain — never decorative
stock vibes (marketing.md <formats_the_agent_produces>). Every ad is generated FROM the research
brief: hook from verbatim customer language, offer from the Grand Slam construction, positioning
from the one-sentence statement.

## Before generating (mandatory)

1. Read `.agents/product-marketing.md` — ICP, pains (verbatim), offer, positioning, wedge.
2. Confirm the AD BRIEF: placement (Meta feed / story / display), aspect ratio, the ONE message
   (one idea per asset — marketing.md <copywriting>), the CTA, brand assets available.
3. Consent + budget gate passed (CLAUDE.md <autonomy_and_gates>) if this feeds paid media.

## Model facts (Nano Banana 2 / Gemini 3.1 Flash Image)

- Resolution 512px → 4K. Aspect ratios flexible — match placement (1:1, 4:5, 9:16, 16:9).
- TEXT RENDERING is a core strength → use NB2 whenever the ad carries a headline, price, offer
  badge, or CTA text ON the image. Spell out the exact text in quotes in the prompt and demand
  exact rendering ("render the text exactly as written, no misspelling").
- Reference images: up to 14; character consistency up to 5 characters, objects up to 14 → feed
  brand/product/persona refs for campaign-set consistency (viral-growth-engine
  <loop_3_persona_assets>: same face, same visual world, every asset).
- Reasoning levels: Minimal (default, fast) / High (complex compositions, layouts, infographics).
  Use High for multi-element ad layouts.

## Prompt construction

Structure prompts in labeled blocks; keep language concrete and visual:

```
GOAL: [placement] static ad for [product], speaking to [ICP] about [ONE pain/outcome].
HEADLINE TEXT (render exactly): "[headline from <headline_craft> skeletons, customer words]"
SUPPORTING TEXT (render exactly): "[offer line / CTA]"
COMPOSITION: [layout — e.g. product hero right, headline upper-left, CTA badge lower-right;
  clean composition, strong color direction, generous negative space]
SUBJECT/SCENE: [the visual that dramatizes the pain or the outcome — show the transformation,
  not the object alone]
BRAND: [colors, font vibe, persona/product refs attached — keep consistent with refs]
STYLE: [photographic/illustrated/editorial]; no watermarks, no unrelated logos, no extra text
  beyond the specified copy.
ASPECT RATIO: [per placement]
AVOID: oversaturation, oversharpening, generic stock-photo feel, cluttered layout.
```

## Ad-craft rules

- HEADLINE = 80% of the ad. Pull from marketing.md <headline_craft>; at least two of {outcome,
  number, avatar, objection}. Never generate an ad whose text a competitor could run unchanged.
- Show the TRANSFORMATION (before/after, the dream outcome in-scene), not the product floating
  on a gradient — proof beats decoration (<value_equation> perceived-likelihood).
- VARIANT VOLUME: produce 4–8 distinct concepts per brief (different hooks/angles, same offer),
  not 8 recolors of one concept — the testing loop needs real variance
  (marketing.md <creative_testing_loop>).
- Score every ad against the virality predictor before presenting (viral-growth-engine
  <the_virality_predictor>): hook/scroll-stop, clarity of next step, on-target, truth check.
- HONESTY GATE: no fabricated results, fake testimonials, or unreal claims rendered into the
  image (<operating_contract> rule 4). Disclose AI-generated imagery where the platform or law
  requires it.

## Output contract

Present: the concept set (image + one-line rationale each: which hook pattern, which pain),
the recommended 2 to test first and why, and the test plan (metric: hook rate/CTR; budget per
variant; kill/scale thresholds from unit-economics CAC ceiling).
