Blog

Python decides. AI narrates. Why that boundary matters.

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:

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.

Want to see the Runbook on your own account? Start a free trial → or see how it works →

← All posts