In the darkroom. This engine is still being developed and tested; details can change.
WS-021 · FR 21 · Ad Factory
Static Ad Factory
One brief in, a slate of static ads out, every variant changing one thing you can test.
A · Free · keyword STATICS
The preset and the shotlist
The preset this engine reads and the shotlist template it fills. Enough to run one shoot by hand and see if it fits your brand.
Fig. 1 · The board
A Input slot
one text-free scene photo per angle (or a product cutout for the D2C systems), the brand colors and fonts, angles and hooks per language
B Engine
- 01static-ads
- 02hook-craft
- 03ad-copy
- 04transcreation
- 05concept-matrix
- 06single-shot
- 07vision-qc
route higgsfield · fallback gemini
C Contact sheet
every combination of angle x hook x design system x layout x format x language as PNG, a QC file and a contact sheet per format
Data sheet
- Input
- one text-free scene photo per angle (or a product cutout for the D2C systems), the brand colors and fonts, angles and hooks per language
- Output
- every combination of angle x hook x design system x layout x format x language as PNG, a QC file and a contact sheet per format
- Models
- nano-banana-pro · gpt-image
- Route
- higgsfield (fallback gemini)
- Command
- /static-ads
- Cost per run
- base images only (one per angle that needs a scene, often zero with a packshot); every render is free
- Maturity
- Working: used in production here
Fig. 2 · Sample output
4 frames · real output from this engine
All images on this page are generated with this engine.
What it does
Performance teams win by testing many statics. The factory writes angles and hooks per language, lays out every combination on a slate, and renders the approved rows locally from a few text-free base images. Ninety variants from two images is normal; the copy on each one is the approved row, word for word.
What you see in the post
The board: a slate that fills row by row (angle, hook, system, layout, format, language), then a contact sheet where the same full-bleed photo shows up in seven gallery variants (incoming call, big type, typewriter, search, quiet, mixed, caption) and every format, each tile labelled with its variant id.
How it runs
/static-adswith the brief from the Studio Brain.hook-craft,ad-copyandtranscreationwrite the hooks;factory.py slatelists every variant.- Gate 1: approve rows. Gate 2: the cost line for any base images (
single-shot,/product-shoot). factory.py renderandfactory.py sheet;vision-qcon a sample.
What you get (the giveaway)
- free: the variant planner, the gallery design system to try and the hook sheet (
../weadapt-studios-products/product/studios/static-ads-studio/free/) - studio: the Static Ads Studio, and the same factory inside the Video Ads Studio
Honest limits
Tested on a neutral demo product, not yet with paid base images. It makes the variants; which one wins is your test.
Default look: gallery (full-bleed photo, seven variants; it needs a scene photo per angle). Also five D2C design systems with five variants each (native UI, clinical, bold, lifestyle, compare), plus five older looks; 3D product shots with Three.js; a new system is one JS file. Needs Playwright with Chromium.





