Problem
The brand needed a steady stream of Meta ad creatives without a designer reviewing every image.
What I built
A scheduled n8n pipeline: brief → cached prompt → image generation → vision-model QA against written brand rules → automatic regeneration on failure, capped.
Key engineering decisions
- Prompt caching on the stable brand context cut per-image inference cost by 78%.
- A vision model reviews every output against explicit rules (logo placement, palette, text density) rather than a human eyeballing batches.
- Capped retries: a creative that fails twice is parked for review instead of looping.
Validation and QA
Every creative carries its QA verdict and the rule it passed or failed; the pipeline logs all runs.
Result
100+ QA-checked creatives a day, running on schedule whether anyone is watching or not.