Ad accounts decay the way gardens do - not through any single failure but through entropy: search terms drift off intent, audiences grow into each other, creatives fatigue silently, tracking breaks on a deploy nobody announced, and structure accretes into an archaeology of past strategies. The audit is the countermeasure, and it is the ideal agent mission: bounded, observable, arithmetic-heavy, read-only. This article is the anatomy of a complete one - what gets checked, why the numbers must be computed rather than estimated, and how the audit becomes a monthly diff instead of an annual archaeology dig.
Why ad accounts decay
Every mechanism is mundane. Broad and phrase match expand queries continuously, so the terms actually triggering ads drift from the intent that was bought. Audiences built at different times overlap, and overlapping ad sets bid against each other in the same auctions. Creatives fatigue on a curve - frequency climbs, response falls - but the decline is gradual enough to miss week to week. Conversion tracking depends on site code that engineering changes without telling the media team. And structure accumulates: campaigns from three strategies ago, still live, still spending residually. None of this is negligence; it is what happens to any system that changes daily under multiple owners. Which is the argument for auditing on a schedule rather than on suspicion.
The five audit surfaces
| Surface | What gets checked | Typical finding |
|---|---|---|
| Structure | Campaign tree vs. current strategy; naming; zombie spend | Legacy campaigns spending residually |
| Tracking | Conversion events firing; UTM discipline; attribution windows | Events broken since a deploy; untagged spend |
| Waste | Search terms vs. intent rules; placements; schedules | Off-intent terms leaking a measurable share of budget |
| Creative health | Fatigue curves; frequency; angle coverage vs. the map | Fatigued controls still carrying most spend |
| Overlap | Audience intersection; self-competition in auctions | Ad sets bidding against each other |
Computed, never eyeballed
The traditional audit samples: an analyst scrolls the search-term report, spots obvious junk, and extrapolates a feeling. The agent audit exports and computes: every term that spent in the window, classified against intent rules; every audience pair, intersected; every creative, curve-fitted. This is the sandbox rule applied to media - the numbers in the audit are outputs of code over the account's actual data, which is why "we are leaking 11% of search spend" can be a finding rather than a vibe. Exactness matters beyond accuracy: computed findings are comparable month to month, which is what makes the diff below possible.
The waste pass in detail
The waste pass deserves its own treatment because it is the audit's reliable headline - the 30-day search-term audit exists as a standalone playbook for exactly this reason. The mechanics: pull every search term that triggered spend in the window; classify each against rules derived from your intent definitions (product terms, competitor terms, off-intent categories like jobs and free-seekers, and the ambiguous middle); sum the spend per class; and emit the negative keyword sets that would have blocked the junk. Placement and schedule waste follow the same pattern - spend where conversions never happen, computed. The output is money with a number on it, which is the best possible way for an agent program to introduce itself to a skeptical media team.
Ranking fixes by recoverable spend
An audit that ends in a list of twenty findings has moved the problem, not solved it. The output that changes behavior is a ranked queue: each finding with its estimated recoverable spend (computed from the observed leak) and its fix cost (minutes for negatives, more for restructures). Sort by recovery-per-effort and the first three items usually cover most of the value - the audit's version of the ranked fix list every Audit-agent deliverable ends with. Fixes then route into the paused-draft workflow: the mission drafts the negative sets, the restructure, the rotation - paused - and the five-point read approves them. Found by computation, fixed by draft, approved by human: the loop stays governed at every step.
The monthly diff
Frequently asked questions
What should an ad account audit cover?
Five surfaces: structure (zombie spend, tree vs. strategy), tracking (events, UTMs, windows), waste (terms, placements, schedules), creative health (fatigue curves, angle coverage) and audience overlap (self-competition).
How is an agent audit different from an analyst audit?
Computation over sampling: every term, pair and curve is exported and calculated exactly in a sandbox, so findings carry real percentages and dollar estimates, and results are comparable month over month.
What is the best first audit to run?
The 30-day search-term waste pass: read-only, one mission, and it almost always finds recoverable spend with a number attached - the strongest possible introduction for an agent program.
How often should the audit run?
Monthly, as a diff against the prior run: what decayed, what recovered, what broke. Decay is continuous, so episodic auditing guarantees you pay for the drift between audits.
Does the audit fix what it finds?
It drafts the fixes - negative sets, rotations, restructures - through the paused-draft workflow, and a human approves. Found by computation, fixed by draft, launched by click: governed end to end.
Sources
Every playbook on this blog ships as a runnable mission.
Open a workspace and the playbook library is waiting - describe the outcome and the agents carry it end to end, on your plan's monthly credits.