Simon Willison argues pay-by-usage services need hard budget caps on by default

Simon Willison argues paid APIs and cloud services should cut off at a spending limit by default, pointing to AWS's new spend limits.

Simon Willison published a post on October 3 arguing that pay-by-usage services and APIs should ship with hard budget caps on by default: past $X a month, the service cuts off and returns errors. Soft caps that only send a warning email "will not cut it," he writes. Coding agents make it easy to spin up code that calls paid APIs or provisions compute, and a midnight alert won't stop a rogue service while you sleep. In his view, removing the cap should be an explicit opt-in.

He points to AWS, which announced on September 16 that paid-plan projects in its new builder experience can set a monthly spend limit. AWS says a project that reaches its limit is paused for that month. Help Net Security reports that limits start at $20 a month and that notifications arrive as a project nears its cap. It also says the rollout is gradual and covers new customers only. It's unclear when existing accounts will get the feature. Help Net Security also notes that AWS hasn't spelled out what a paused project does to a live public endpoint.

Willison says Google Cloud launched a similar feature, Spend Caps, in July. For model APIs, Digital Applied's October 3 comparison found that Anthropic and OpenAI both let you set caps that block requests. OpenAI's hard limit has to be turned on, and its enforcement can lag, so recorded spend can slightly overshoot the limit. The same comparison found that Azure budgets only send alerts.

If an agent can touch billing, check whether each service refuses requests or only notifies you at the threshold. Set caps below what you can actually afford to lose. Caps on model spend also don't cover the services an agent deploys elsewhere, as Redreamality points out.

Sources