Beginner6 min readFree

Pick the right model and effort for each task

Choose between Opus, Sonnet, Haiku and Fable, set the effort level, and use ultrathink for one hard turn without wasting cache.

Claude Code gives you two dials: which model answers, and how much effort it puts into each step. Most people only touch the first, and they touch it too often. This guide is for anyone who wants better answers without a bigger bill. At the end you will know which model to start on, when to move effort up or down, and how to get one deep answer without changing anything else.

What you will have at the end

  • A default you can leave alone for most work
  • A simple rule for when to raise or lower effort
  • The ultrathink keyword for one hard question in the middle of routine work
  • Knowledge of when Fable is worth selecting
  • A habit that keeps your prompt cache warm

Before you start

  • Claude Code installed and signed in. See Start here.
  • Claude Code v2.1.311 or newer if you want ultrathink to raise a turn's effort (model config). Run claude update if you are behind.

Step 1: Know the default

Run:

/model

The picker shows your models and an effort slider. On Pro, Max, Ultra, Team, Enterprise and the Anthropic API, the default is Opus 5.5 (default model). Opus 5.5, Sonnet 5.5 and Haiku 5.5 start at medium effort (effort).

That default is a good place to stay. The model config page notes that in Anthropic's testing, Opus 5.5 at medium matches or beats Opus 5 at high on coding and knowledge-work evaluations. If you are coming from Opus 5, do not carry your old effort level over.

Step 2: Learn the aliases

You rarely need full model IDs. These aliases always point at the current version for your provider (aliases):

Alias Use it for
opus Complex reasoning, the everyday default
sonnet Daily coding at a lower price
haiku Simple, fast jobs, often in subagents
fable Your hardest and longest-running tasks
opusplan Opus while in plan mode, then Sonnet for execution

On the Anthropic API, opus, sonnet and haiku resolve to Opus 5.5, Sonnet 5.5 and Haiku 5.5. Some cloud providers resolve them to older versions, so check the table on the docs page if you use Bedrock, Agent Platform or Foundry.

Switch in a session with /model sonnet, or for one launch with:

claude --model opus

Note that /model <name> also saves the choice as your default for new sessions. To switch for this session only, open the picker with /model and press s on the row (setting your model).

Step 3: Turn effort, not models

Effort controls how much Claude reasons on each step. The levels on current models are low, medium, high, xhigh and max (effort). Change it with:

/effort high

Here is when to move it, following the best practices page:

  • Raise to high or xhigh when correctness depends on easy-to-miss cases: a bug in code you did not write, a flaky test, a schema change where every reader of the old shape must be found.
  • Lower to low for quick back and forth where you review each result anyway: brainstorming, a first sketch, a rename across a few files.
  • Save max for hard problems you want Claude to work through alone, such as hunting for a security hole. On ordinary work it tends to overthink.

max applies to the current session only unless you set it through an environment variable. /effort auto clears your saved level for the active model.

Why prefer effort over switching models mid-task? Each model has its own prompt cache, so a model switch makes the next request reprocess the whole conversation. On Opus 5.5, Sonnet 5.5, Haiku 5.5 and Fable 5.1 with an API key or a Claude subscription, changing effort keeps the cache (prompt caching). The docs advise picking your model and effort at the top of a session and changing as little as possible mid-task.

Step 4: Use ultrathink for one turn

When only the next message needs deep thought, put the word in your prompt:

ultrathink why does this cache key collide only under load?

ultrathink asks for deeper reasoning on that turn without changing your session setting. Typed in the terminal, it can also raise that turn to xhigh, and the word shows in rainbow colours when it does (ultrathink). Phrases like "think hard" or "think more" are not keywords. They are passed through as ordinary text.

Step 5: Select Fable for the biggest jobs

Fable 5.1 is not the default on any plan. You select it explicitly:

/model fable

The docs describe Fable as suited to tasks larger than a single sitting. It investigates before acting and checks its own work more often than smaller models (work with Fable). Hand it outcomes, not steps, and give it ambiguous problems like root-cause investigations or architecture decisions.

On some plans Fable bills to usage credits instead of your included limits. The /model picker shows "Requires usage credits" on the Fable row when that applies (Fable and usage credits).

Current numbers

API prices per million tokens, input / output, from the pricing page. Checked 2026-11-06.

Model Input Output
Fable 5.1 $10 $50
Opus 5.5 $4 $20
Sonnet 5.5 $2 $10
Haiku 5.5, prompts up to 100K tokens $0.10 $0.50
Haiku 5.5, prompts over 100K tokens $0.50 $2.50

On a subscription you pay your plan price instead, and usage counts against your plan limits. Run /usage to see session cost and plan usage.

Check it worked

  • Run /effort status. It prints the level your session is using (send no effort level).
  • After /effort high, the session header shows the new level, and the footer briefly shows it too.
  • Type ultrathink in a prompt and confirm the word turns rainbow before you send it.

Common problems

A new session starts on a different model than you picked. You may have chosen it for one session only, or a project setting, managed setting or ANTHROPIC_MODEL outranks your choice. The startup header names the settings file when one sets the model (troubleshooting).

ultrathink is not rainbow. Retype it outside quotes, paths or commands, in a prompt that does not start with /. Also check that CLAUDE_CODE_EFFORT_LEVEL is not set below xhigh, and that you are on Opus 5.5, Sonnet 5.5, Haiku 5.5 or Fable 5.1 (ultrathink).

Your effort change seems to do nothing. The new level applies from your next message. If CLAUDE_CODE_EFFORT_LEVEL is set, it wins over /effort (effort).

Subagents suddenly cost more. Subagents that inherit the main model follow your /model switch. To keep one on a smaller model, set model in its definition (setting your model).

Next

Sources

Last checked: 2026-11-06

Next

Read next