← Knowledge base

Building an AI media buyer that actually works

The architecture, guardrails and results of running an autonomous agent on a real ad budget.

May 24, 2026·12 min read·AI Workflows / Advertising

The problem

Media buying is repetitive. Most of the work — checking pacing, rotating creatives, reallocating budgets — follows rules that a well-designed system can execute more consistently than a human. And yet the vast majority of spend still moves through manual dashboards.

We wanted to know: could a small agent, with the right context and guardrails, actually run a real ad budget?

Architecture

The system has four moving parts:

  • A data layer that snapshots Meta and Google performance every 30 minutes.
  • A planner that proposes changes: pause, scale, rebalance.
  • An actor that executes approved changes through the platform APIs.
  • A memory that records every decision and its downstream outcome.
The goal isn't autonomy for its own sake. It's compressing the loop between signal and action.

Guardrails

Autonomy without guardrails is just a faster way to lose money. Ours:

  1. Hard caps on daily budget deltas (±20%).
  2. No structural changes without a human in the loop.
  3. Every action produces a diff you can revert with one click.
  4. Weekly review of drift between forecast and outcome.
if (proposedDelta > MAX_DELTA) {
  requireHumanApproval(proposal);
}

Results

Over 90 days on a $12k/mo budget:

  • -23% CAC vs the prior quarter.
  • +41% actions/day taken across the account.
  • ~12 hrs/week returned to the team.

What's next

We're moving the planner from a scheduled loop to an event-driven one, and letting it propose creative — not just budget — decisions.