There's a lot of enthusiasm right now for letting a language model run your ad account. We deliberately don't do that, and the reason is simple: when real money is moving, you want decisions that are explainable, repeatable, and bounded — not improvised.
The line we drew
In AdsPlane, deterministic Python logic makes every decision that affects your account: which bids to change and by how much, which budgets to move, what to pause, what to add as a negative. The same inputs produce the same Manifest every time. There's no temperature, no sampling, no "the model was having a creative day."
AI is used only to narrate. It turns a Manifest into plain-English explanations, writes your daily digest, and helps with onboarding copy. It never decides whether an action runs, and it never sees raw account data it doesn't need — the engine sends it structured recommendation metadata, not your campaign rows or credentials.
Python deterministic logic decides. AI narrates.
Why this is safer
A few properties fall out of that boundary:
- Explainable. Every recommendation in a Manifest carries a rationale and a confidence score. You can see why a change was proposed before you approve it.
- Bounded. Your Guardrail Policy is enforced in code. The engine cannot propose — let alone execute — a change outside your caps for bid moves, budget moves, protected items, or daily spend.
- Auditable. Before/after snapshots and Reconciliation run after every execution, and everything lands in the Execution Ledger. If something drifts, you'll see it.
- Fail-closed. On error, a run pauses rather than guessing. Automation that guesses with your budget isn't automation we want to ship.
Even auto-approval, when you eventually opt into it, is a deterministic confidence-and-Guardrail gate plus a toggle you control — not a model deciding to spend. The toggle simply lets actions that already passed the engine's checks skip the manual approval step.
AI is genuinely useful for making all of this legible. It just shouldn't be the thing holding your wallet.
See the full loop on the how it works page, or read about the Autonomy Ladder that governs how much AdsPlane is allowed to do.