Show Your Work: What Extended Thinking Actually Is

My eighth-grade math teacher had a rule: the answer alone wasn’t enough. Show the work. Every step was laid out, so she could see where the reasoning went right or wrong.

I hated it at the time. Obviously.

Thirty years later, the Claude API has a feature that proves she was right.

It’s called Extended Thinking. And my first reaction — honestly — was what is this even for.


The spinner widget is lying to you

You know the spinner. That little animated widget that appears while the model generates. It tells you exactly one thing: something is happening. Not what. Not whether it’s on the right track. Just: wait.

For simple tasks, it’s fine. For anything complex — ambiguous requirements, multi-step reasoning, architecture decisions — it’s an exercise in blind faith. You submitted your prompt, something is happening in there, and eventually an answer appears.

Hope it’s good.

We stopped questioning this. Fast answers feel competent. Slow answers feel stuck. The spinner became furniture.

Extended Thinking pulls the furniture out from under you — in a good way.


Partial credit

When you enable Extended Thinking, Claude doesn’t just return an answer. It returns the reasoning. The actual chain of thought — how it interpreted the problem, what it considered, where it second-guessed itself, how it resolved the ambiguity.

Show your work.

response = client.messages.create(
    model="claude-sonnet-4-20250514",
    max_tokens=16000,
    thinking={
        "type": "enabled",
        "budget_tokens": 10000
    },
    messages=[{"role": "user", "content": your_prompt}]
)

for block in response.content:
    if block.type == "thinking":
        print("Reasoning:", block.thinking)
    elif block.type == "text":
        print("Answer:", block.text)

budget_tokens is the interesting lever — you’re literally allocating how much thinking to allow. More tokens, more deliberation, better answers on hard problems, higher cost. Tune it to the complexity of the task.


The weird part that isn’t weird

There’s also a redacted thinking block. Reasoning that happens internally, that you never see, that gets passed back as an opaque object. You include it in follow-up requests — Claude needs it for continuity — but you can’t read it.

My first instinct: that’s strange. What’s it hiding?

My second instinct: nothing. That’s just how expertise works.

When a senior engineer glances at a system and says “this is going to be a scaling problem” — you don’t see the decade of accumulated instinct behind that call. You don’t see every incident, every postmortem, every 3 am page that built that pattern recognition. You just get the conclusion.

The redacted block is the same thing. Claude is processing fundamentals too fast and too deeply to surface usefully. You pass it back like a black box because that’s what it is. And that’s fine.


When it’s worth it

Not everything needs Extended Thinking. Simple, well-defined tasks don’t need deliberation. But it earns its cost on:

Ambiguous requirements where the right interpretation isn’t obvious. Multi-step reasoning where the first answer is probably incomplete. High-stakes outputs where you need to audit the reasoning, not just the conclusion. Anywhere the spinner makes you nervous.


Sometimes slow is fast

We optimized hard for instant. Fast deploys. Fast answers in interviews. Fast responses in code review. Built a whole culture where fast equals competent and slow equals stuck.

Extended Thinking is a deliberate step in the other direction. You’re paying for slowness. Getting better answers.

Your eighth-grade math teacher knew something we forgot.

The Anthropic Academy’s API course covers Extended Thinking as part of the full developer curriculum. Free, certified, worth your time.