01The problem
Anyone managing many accounts checks them by sampling. The most expensive errors don't show up in the summary reports: a rejected ad, a landing page that won't open, tracking that stops recording while spend carries on. They are usually found days later, and sometimes the client finds them first.
02How it is used
- You write the rules. For each check, a threshold decided in advance, with a cool head: for example high frequency with clicks falling and costs rising.
- The round starts by itself. Sunday, Tuesday and Thursday at 22:00, outside peak hours.
- In the morning you read a single list. Red to fix, yellow to look at, a question mark where the check could not be completed.
- You step in by hand. The round switches nothing off and writes to no one.
03How it is built
- Readingread-only access to the Meta accounts; the landing page of every active ad is actually opened
- Rulessix checks: saturation, delivery, links, naming, tracking, spend with no results; thresholds live in the code, covered by 33 automated tests
- Decisionred triggers only if all the conditions are true; when in doubt it is yellow; whatever can't be checked is marked as not checked
- Summarya language model writes the list in Italian, but it can't change the outcomes calculated by the code
- Outputa log for every round and an entry in the morning to-do list
On Google Ads the same logic has a second piece, which can make changes but with its hands tied: the guardian. It prepares the change (a budget, a negative keyword, a campaign to pause) and shows it in full, with a code. It applies it only after an explicit yes and only if the summary it receives is identical, character for character, to the one approved. Every change goes into a log and has its reverse operation ready.
04Results
In the second week the round spotted an active account that the working notes listed as paused for days. No rule on the numbers would have seen it: what caught it was the comparison between what the account was doing and what was written down.