Deep Dive · XiaoHu Explains

The Claude Code team teaches you how to work these two knobs: one controls whether it "can," the other controls whether it "will do enough"

A ClaudeDevs long-form post pulls apart two settings that both feel like "make the answer better": switching models swaps which frozen weights you're using, while adjusting effort changes whether it's willing to read more files, run more tests, and verify more before handing back an answer
Quick Take
  • Anthropic's developer-facing account @ClaudeDevs published a long-form post on July 8, 2026, written by Claude Code team member Lydia Hallie (@lydiahallie).
  • Effort controls how much work Claude does overall on this task: how much it thinks, how many files it reads, how many tests it runs, how much it verifies, and how far it pushes through multi-step work before asking you. The API commonly exposes five tiers: low / medium / high / xhigh / max; for most tasks, the model's default tier is enough.
  • The model setting decides which trained, frozen set of weights you're using — in other words, what it "knows." Effort decides "how thorough it is." When it gets something wrong, first check the context, then ask: is it that it "can't," or that it "didn't try hard enough"?
  • Role analogy: Fable is like a specialist, Opus is like an expert, Sonnet is like a solid generalist; effort is how long they're willing to spend on your case.
  • On simple tasks, bigger models cost more; on hard, multi-step tasks, bigger models can sometimes come out cheaper overall, and can finish work that smaller models simply can't. In testing, Opus 4.8's default effort used roughly the same token volume as Opus 4.7's default, with better results.
This piece is a product-mechanics explainer written by a member of Anthropic's Claude Code team, not a third-party review. The "roughly 7x tokens" figure and the cost-curve charts in the piece are illustrative — the author explicitly states they aren't real benchmark data. The Fable / Opus / Sonnet role analogy is also the author's own framing. The five effort-tier names and positioning come from the official Effort API docs; the tier-by-tier "500 error on login" walkthrough is a teaching scenario meant to aid understanding, not a vendor's tier-by-tier recorded test.
1Source

Two knobs that both look like they "make the answer better"

On July 8, 2026, Anthropic's developer account @ClaudeDevs published a long-form Claude Code post, written by Claude Code team member Lydia Hallie.

When using Claude Code, both the model tier and effort can make results look better. One controls whether it "can"; the other controls whether it "will do enough."
Many people default to assuming: picking a bigger model (say, Fable) is simply smarter than Sonnet; and turning effort up just means "thinking longer." The first assumption is largely right; the second falls short. Get effort itself straight first — only then does "switch models or adjust effort" actually mean something.
2Understanding effort first

What effort is: same model, how thorough this particular job gets done

In Claude Code, effort is a setting that sits alongside model choice. It doesn't change whether the model "can" do something — it tells that same model how much work it's willing to put in before handing back an answer this time. The common misconception is treating effort as "thinking longer"; really it governs how thorough the whole job is.

The post puts it plainly: effort controls how much work Claude does overall on this request — not just how long it thinks, but also:

Reading files

Whether it opens up more source code, config, and logs, or just looks at what you pasted into the chat box

Verification

Whether it runs tests after making a change, double-checks its conclusion, or scans for edge cases on its own

How far it pushes

On a multi-step task, how far it drives forward in one go versus quickly stopping to ask you for more context

Thinking and planning

Whether it writes a plan first and how deep that plan goes, and whether it verifies once more after finding an answer

Effort is a gas pedal, not a new engine Same car (same model) — push the pedal deeper and this trip covers more ground, checks more things Low effort Fast answer · fewer tokens burned Read files Run tests Push forward More likely to ask first High effort More work · more confident answer Read files Run tests Push forward Digs in itself before asking
Illustrative diagram: raising effort doesn't swap in a stronger model — it's the same model being willing to read, verify, and push further this time. Bar lengths are illustrative only, not an official measurement.

In the API docs, effort is a behavioral signal, not a hard token cap: at a low tier, a genuinely hard problem may still get real thought, but on the same problem it will "think and do less" than a high tier would. The tiers the docs list run, from cheapest to most aggressive, roughly five deep (in the Claude Code interface you'll also see an "ultracode"-style entry bundled with multi-agent permissions — that's a product-side combination, not an extra API tier name).