§
🌙 Toggle Dark Mode Home MoltGuard MoltProof MT Global · Regulated Markets MolTrust Sports MT Shopping MT Travel MT Skills MT Prediction MT Salesguard MT Music Amazon Ads Integrity Dashboard VCOne Blog Developers Pricing Enterprise Partners Compliance About Publications Verify Us Status Contact API Docs
← Back to Blog
12 October 2026 5 min read Lars Kroehl

Budget limits for AI agents: six controls and what a typo costs

Daily cap, account-wide cap, approval threshold, bid-change limit, validity window and stop, each with worked numbers for an agent on the Amazon Ads MCP Server.

An AI agent that types 5000 instead of 500 into the daily budget of a USD 500/day campaign gives that campaign ten times its plan. If nobody notices for 18 hours, the extra spend comes to about USD 3,375.

The figure comes from one formula: (multiplier − 1) × daily budget × hours until noticed ÷ 24, here (10 − 1) × 500 × 18 ÷ 24. It is an estimate. Amazon may pace a campaign's spend unevenly through the day, and a campaign does not always find enough traffic to spend its full budget, so the real number can be lower. It can also be higher when the same mistake hits several campaigns, or when nobody looks at a report until the next morning.

Six controls

An agent that changes budgets and bids through the Amazon Ads MCP Server, Amazon's beta interface for AI agents, needs limits that are checked on each call. The six below cover the mistakes that cost money and the moment when the agent has to stop. The example account has eight campaigns at USD 500 a day each, USD 4,000 in total.

ControlExample settingAgent's callResult
Daily cap per campaignUSD 1,000budget 500 → 5,000forbid
Account-wide daily capUSD 4,500new campaign at 800, total 4,800forbid
Approval thresholdabove USD 600budget 500 → 700hold until signed
Bid-change limit±25 %, max bid USD 5.00bid 1.20 → 3.00 (+150 %)forbid
Validity windowOct 1, 2026 to Mar 31, 2027any call on April 1forbid
Stopend time set to nowthe next callforbid

Daily cap per campaign

The cap is the largest daily budget the agent may set on any single campaign. With a cap of USD 1,000, the 5000 typo is refused before it reaches Amazon and the overspend is zero. The cap does not catch a mistake below it: an agent that sets 900 instead of 500 still spends USD 400 a day too much. Setting the cap close to the largest budget the plan needs keeps that gap small.

Account-wide daily cap

A per-campaign cap lets an agent spread spend across many campaigns. The account-wide cap limits the sum of all daily budgets on the account after the change. In the example, a new campaign at USD 800 stays under the per-campaign cap and would lift the total from 4,000 to 4,800, above the USD 4,500 account cap, so it is forbidden. The current total has to come from the agency's own reporting, since a check that asks the agent for the total lets the agent state the number it is measured against.

Approval threshold

Below the threshold the agent acts alone. Above it and up to the cap, the change waits until a person named in the mandate signs it. In the example, raising a budget from 500 to 700 holds; the agent can still make every change up to USD 600 without waiting. A threshold set too low turns the approver into a rubber stamp, so it belongs where a wrong change would be noticed on an invoice.

Bid-change limit

Bids move in cents and add up across thousands of targets. Two limits apply: a maximum bid and a maximum change per step, in percent of the current bid. At ±25 %, a move from USD 1.20 to 1.45 (+20.8 %) passes and a move to 3.00 (+150 %) is refused. The same limit catches 12.00 typed for 1.20. One call to update_target_bid can carry many targets, so each target is checked on its own and one bad item stops the whole call.

Validity window

A mandate that never ends outlives the contract it was written for. Tying it to the client agreement, here from October 1, 2026 to March 31, 2027, means an agent left running after the account moves to another agency is refused on April 1 without anyone remembering to switch it off.

Stop

Revoking the agent's Login with Amazon token stops it, along with reporting and every other account under the same app. A stop per account is narrower: set the mandate's end time to now, and the next call any agent makes on that account is forbidden, usually within seconds, because every call is checked. If the mandate allows update_campaign_state, a person or a separate process can still pause campaigns that are spending.

Mandates can also cap lifetime and monthly budgets, the two other values Amazon accepts for a budget's recurrenceTimePeriod.

Who pays

Between an agency and its client, USD 3,375 of unplanned spend turns into a question about who authorised the change. A record of each change, showing the mandate in force, the values checked and the verdict, answers that question from documents. If the agency's contract says nothing about mistakes made by its agents, now is a good time to add a clause and to attach the mandate to it.

Running the six controls

MolTrust Ads checks each Amazon Ads MCP call against a mandate per ad account that holds these six controls, and returns allow, hold or forbid before the call runs. The agency's own code sends the call to Amazon; MolTrust holds no Amazon credentials, sees no Amazon data and never calls Amazon. Unknown values are forbidden, and when MolTrust cannot be reached the call does not run. Each verdict comes with a record that anyone can recompute offline with the open-source verifier moltrust-verify.

The check keeps no state. Current budgets, bids and the decision time come from the agency's side, and a call that goes to Amazon without the guard is not covered. Free covers one ad account and 1,000 checks a month; Pro is USD 49 per ad account per month and can be cancelled in any month.

Next step

Put your own numbers into the Agent Liability Check: daily budget, the largest wrong value an agent could enter and the hours until someone notices. It uses the formula above, every field is optional, and nothing leaves your browser. To set the six controls on a test mandate, follow the quickstart or run the example repository.

MolTrust is an independent service provider and is not affiliated with or endorsed by Amazon. Amazon Ads is a trademark of Amazon.com, Inc. or its affiliates.