Safeguard
Developer Tools•

The effort setting as a cost control: low, medium or high?

An effort setting lets one model spend fewer tokens on easy tasks. Learn what it changes, how to pick a level, and why you should test before shipping it.

Safeguard Security Team
3 min read

An effort setting tells a model how many tokens to spend on a response. Lower levels cut reasoning, tool calls, and explanation, which saves money and time at some cost in capability. Start from your provider's default, run your own evaluation at each level, and move down only where quality holds.

What the documentation says

The Claude effort parameter affects all tokens in the response: text, tool calls and their arguments, and thinking when it is active. The docs describe five levels, low, medium, high, xhigh, and max. They say effort is a behavioral signal rather than a strict token budget, so a low setting still thinks on hard problems, just less.

Defaults differ by model. In the pages I fetched, most models default to high and two newer ones default to medium. Setting the default explicitly behaves the same as omitting it. Check your model's page, because these defaults move between releases.

What lower effort does to tool use

The docs say lower levels tend to combine operations into fewer tool calls, skip preamble, and use terse confirmations. Higher levels make more tool calls and write longer explanations. For an agent, that is a direct cost lever, because every tool round trip adds input and output tokens.

Matching level to task

The documentation suggests low for simple, high volume, or latency sensitive work and names subagents as a typical use. It suggests medium for balanced agentic tasks, and higher levels for complex reasoning and long running coding work. It also warns that at the top level, max, extra spend can bring small gains and sometimes overthinking, per its guidance for one model.

A reasonable routing table for your own system:

  1. Classification, extraction, routing: low.
  2. Standard chat and drafting: medium.
  3. Debugging, planning, multi step analysis: high.
  4. Reserve the top levels for tasks where an evaluation shows a measurable gain.

Test, then ship

The docs repeatedly say to run a fresh sweep on your own evaluations rather than carrying a setting over from an earlier model, because levels are recalibrated between models. Run each level across a representative sample, record quality, tokens, and latency, and pick the cheapest level that meets your bar.

Mind the cache

Changing top level effort between requests invalidates prompt caching, according to the docs. Hold it constant inside a conversation that relies on cache hits, and vary it across workloads instead. Some newer models support a per message change that keeps the cache, in beta at the time of writing.

Set max_tokens with room

Thinking counts toward max_tokens. If you lower effort to save money but also set a tiny max_tokens, you can truncate answers. Leave room for reasoning and the reply.

Quick check

Does low effort guarantee a lower bill?

Not by itself. It usually reduces tokens, but you should measure on your own traffic, since retries from worse answers can erase the saving.

Can I change effort inside one conversation?

Yes, but a top level change invalidates cached prefixes. Some models offer a beta per message change that preserves the cache.

Sources

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.