All projects
CA
AdTech2026

Campaign Agent

Weekly brief to live Meta campaigns, trafficked at scale with a human approval gate.

Built for: WPP Media AdOps

loading demo…

Simulated in your browser. Build a brief, see the generated tree and its names, then run a simulated push log. No Meta account is touched. The production tool uses a Meta system-user token and creates real, paused objects.

The problem

A weekly brief across four markets, three funnel stages and a handful of audiences means dozens of ad sets built by hand in Ads Manager. It is slow, and naming drifts, which breaks reporting downstream.

How the real system works

  1. 01The brief form captures markets, funnel stages, audience segments, creative assets and copy.
  2. 02The agent expands the brief into a full campaign tree with a strict naming convention, so every object is reportable without manual tagging.
  3. 03Nothing goes live without review: the tree is rendered for approval first.
  4. 04On push, a serverless function creates campaigns, ad sets and ads via the Marketing API and streams a real-time log. Everything is created paused, and budgets stay in Ads Manager.

What you take away

How a brief explodes combinatorially into ad objects, why naming conventions are a data problem, and where a human gate belongs in an automation.