Effort Tuning, Budgets, and the max_tokens Trap

Two more levers of control: how hard the model thinks, and how you bound what it spends. Both have measured sweet spots — and both have a trap that quietly wastes money. The sharpest is a cap that most people reach for first and that saves nothing at all: max_tokens.

This post covers effort/reasoning-depth tuning (dialing how hard the model works) and budgets, caps, and stopping conditions (bounding a run). Both are about spending only what a task needs — but the controls behave differently than intuition suggests, and one popular cap is a trap. Figures are vendors’ own directional numbers; verify on your workload.

Effort tuning: the accuracy-vs-cost curve is often flat

Modern models expose an effort or reasoning-depth setting — how much the model “thinks” before answering. Anthropic’s effort sweep is the best-documented instance of this lever, and the finding is encouraging: on many tasks, the accuracy-vs-cost curve is nearly flat, meaning you can turn effort down and lose little accuracy for real savings.

Its measured results: on four research and knowledge-work benchmarks, low effort gave up only 1–3 accuracy points for a third to half off the cost, and medium effort matched the default’s accuracy at ~70–85% of the cost. So for a large class of tasks, you’re paying for reasoning depth you don’t need — the default effort is more than the task requires, and dialing it down is nearly free accuracy-wise. But on long-horizon coding, the curve was steep — a real tradeoff where lower effort meaningfully hurt. So the lever’s value is task-dependent: flat (free savings) on many tasks, steep (real tradeoff) on the hardest.

The actionable practice: sweep two or three effort levels on a sample of your own traffic before doing anything more drastic (like adding a second model). Effort tuning is often a bigger, simpler win than model switching, and you find your curve by measuring. Two measurement cautions:

Budgets, caps, and stopping conditions: three different jobs

AWS makes bounding a run its own question — GENCOST05 “how do you optimize agent workflows for cost?”, with the practice “create stopping conditions to control long-running workflows” and the principle “design workflow boundaries … avoid scenarios where workflows consume excessive resources or continue beyond their useful purpose.” The key insight from Anthropic’s measurements is that three controls that look similar actually do three different jobs — and confusing them is where money is lost:

Budgets, caps, and stopping conditions: three different jobs
Control What it does Saves money?
Task budget Model sees a live token countdown and self-regulates Yes — measured ~18% saving for ~2.7 points of pass rate; ~47% saving at the tightest budget
max_tokens Caps one response, invisibly to the model No — truncated turns are discarded and still billed
Session / workspace spend limit Platform-enforced hard dollar stop Backstop, not an optimizer

The distinction is worth getting exactly right:

The max_tokens trap

Here’s the finding most likely to save you from a mistake, because max_tokens is the cap most people reach for first, and it saves nothing. Unlike a task budget, max_tokens caps a single response invisibly to the model — the model doesn’t know about the limit and doesn’t adapt; it just gets cut off. And critically, a truncated turn is discarded and still billed — you pay for the tokens generated up to the cap, get an unusable truncated result, and have to retry.

Anthropic’s measured example makes the trap vivid: a 16,384-token cap ended ~15% of one model’s attempts and a third of another’s — and none of those truncated attempts solved the task. The cost per solved task was identical to using a much higher (64,000-token) cap, because the low cap just added wasted, billed, truncated attempts without saving anything. Setting max_tokens low feels like a cost control, but it doesn’t reduce cost per solved task — it just breaks attempts you still pay for.

The correct practice inverts the intuition:

The general principle: cost controls the model can see (task budgets, effort) let it adapt and genuinely save; controls it can’t see (max_tokens) just truncate billed work. Reach for the ones the model can respond to.

Using these levers well

Effort tuning and budgets are about spending what a task needs and no more — but only through the controls the model can actually respond to, and never through the max_tokens trap. The next post covers the last inference lever, capacity commitments, plus the cloud-infrastructure fundamentals underneath it all.

Key takeaways

Further reading

Sources & References

Stopping conditions and agent cost