DEV Community

Carlos Oliva Pascual
Carlos Oliva Pascual

Posted on • Originally published at stacknotice.com

Claude Code Ultrathink vs Ultracode: Every Effort Level Explained (2026)

Most people use ultrathink and ultracode interchangeably. They're not the same thing. One is a per-turn keyword. The other is a session-level command. Using the wrong one costs you money without getting better results.


The two mechanisms

Claude Code has two separate ways to control reasoning effort:

ultrathink — a per-turn keyword you add to your prompt. It tells Claude to use its maximum extended thinking budget for that single request.

ultracode — triggered by the /effort ultracode slash command. It sets the session effort level to xhigh AND enables dynamic workflows (parallel subagents working simultaneously).

These are independent. You can use one without the other.


The 5 effort levels

Claude Code has 5 effort levels, not just high and low:

Level How to activate Token multiplier Use case
low /effort low Simple questions, quick lookups
medium default Normal development tasks
high /effort high Complex bugs, architecture decisions
xhigh /effort xhigh or ultracode Multi-file refactors, production incidents
max /effort max 16× Research, deep analysis, novel problems

These affect how much Claude thinks before responding — more compute = better reasoning, but also more tokens and more cost.


What ultrathink actually does

When you add ultrathink to a prompt, Claude uses its extended thinking feature for that specific request. It reasons step-by-step internally before giving you an answer.

# Single prompt with maximum thinking
"ultrathink — why is this React component re-rendering on every keystroke?"
Enter fullscreen mode Exit fullscreen mode

It applies only to that one message. The next message goes back to your session's default effort level.

When to use it:

  • Debugging a hard problem you can't figure out
  • Asking Claude to analyze a complex codebase section
  • Any single question where you want the deepest possible reasoning

What ultracode actually does

/effort ultracode does two things at once:

  1. Sets effort level to xhigh (8× token multiplier) for the entire session
  2. Enables dynamic workflows — Claude can spawn parallel subagents that work simultaneously
# In Claude Code
/effort ultracode

# Now Claude will:
# - Think at xhigh level for every message this session
# - Automatically use parallel subagents when tasks benefit from it
Enter fullscreen mode Exit fullscreen mode

The parallel subagents are the real differentiator. Instead of doing tasks sequentially, Claude can run multiple agents simultaneously — one checking the database schema while another reads the API routes, for example.

When to use it:

  • Large refactors spanning many files
  • Full feature implementation from scratch
  • Production incidents where you need to investigate multiple things at once

The cost reality

The token multipliers are real. A task that costs $0.10 at medium costs:

  • high: ~$0.40
  • xhigh (ultracode): ~$0.80
  • max: ~$1.60

For a complex 2-hour coding session, the difference between medium and xhigh can be $5–20 depending on context size.

The practical rule:

  • Use medium (default) for 80% of tasks
  • Use high or a single ultrathink when stuck on something specific
  • Use ultracode only for large, well-defined tasks where parallel work helps

What /effort max is for

max is the highest level and is intentionally separate from ultracode. It's designed for:

  • Deep research tasks
  • Analyzing very large codebases
  • Problems where you genuinely need Claude to consider many edge cases

It does NOT enable dynamic workflows automatically — that's only ultracode. max is pure thinking depth.


Common mistakes

Using ultrathink for everything — you pay 16× for every message when most tasks don't need it. Reserve it for genuinely hard problems.

Thinking ultracode just means "high quality" — it changes session behavior. Tasks that don't benefit from parallelism don't benefit from ultracode either.

Using max for speed — max is slow. Extended thinking takes more time. If you want speed, stay at medium.

Not resetting effort after ultracode — if you set /effort ultracode for a big task, remember to /effort medium after. Otherwise you'll pay 8× for every question for the rest of the session.


Quick decision guide

Need help with one hard question?
→ Add "ultrathink" to your prompt

Doing a large feature or refactor across many files?
→ /effort ultracode

Normal development work?
→ Default (medium) is fine

Deep research or complex analysis of a large codebase?
→ /effort max
Enter fullscreen mode Exit fullscreen mode

Full guide: stacknotice.com/blog/claude-code-ultrathink-ultracode-effort-guide-2026

Top comments (0)