💡 Why toAIIntermediate✨ AI-assisted

Claude's Extended Thinking Mode: When It Helps and When It's Overkill

WittyTech··2 min read
#claude#reasoning#cost

Letting Claude think before answering improves results on hard problems, but it isn't free. Thinking adds output tokens and makes responses slower, so it's worth deciding where you actually need it.

How it works now

Older versions of extended thinking asked you to set a fixed token budget for thinking. Current Claude models replace that with adaptive thinking: Claude decides how much to think for each request. You guide the overall depth with an effort setting that ranges from low to max.

response = client.messages.create(
    model="claude-sonnet-5",
    max_tokens=16000,
    thinking={"type": "adaptive"},
    output_config={"effort": "medium"},
    messages=[{"role": "user", "content": task}],
)

On the Claude 5 models, adaptive thinking runs even if you leave the thinking parameter out. Thinking tokens are billed as output tokens, which cost more than input tokens.

Where more thinking helps

  • Multi-step reasoning, such as planning a migration, tracking down a difficult bug or reconciling conflicting requirements.
  • Agent loops, where Claude has to decide what to do after a tool returns something unexpected.
  • Math, logic and code, where an early mistake breaks everything that follows.
  • Important outputs, where a slower and more careful answer is worth the wait.

Where it adds little

  • Classification, routing and simple extraction.
  • Short conversational replies.
  • Reformatting text, summarizing a single document or filling in a template.
  • Screens where users are waiting for an immediate response.

For these, low effort usually gives the same quality in less time and for less money.

How to tune it

  1. Start with the model's default setting on a sample of real requests.
  2. Lower the effort for routine routes and compare quality using an eval.
  3. Increase effort only for routes where the eval shows failures that more reasoning fixes.
  4. Track usage.output_tokens for each route to see what thinking costs you.

Set effort separately for each route. A ticket classifier and an incident-analysis agent have very different needs.

Things to watch

  • When you stream responses, thinking shows up as a pause before any text. Show a progress indicator, or ask for summarized thinking if you want to display it.
  • Leave enough room in max_tokens. Thinking and the final answer share the same limit.
  • Check your settings again after each model upgrade. Newer models often reach the same quality at a lower effort level.

A reasonable end state is low effort on routine routes and higher effort on the few routes where your evals show it fixes real failures.

← More in AI