# Model, effort and the cost of an answer

Course: Claude Code: Pro Level — https://zero2vibecode.com/learn/claude-code-pro
Canonical URL: https://zero2vibecode.com/learn/claude-code-pro/1-4-model-and-effort
Verified against: Claude Code v2.1.292 (2026-10-15)
Last updated: 2026-10-15

The model decides how capable an answer can be; effort decides how much work Claude puts into it. Before you turn either knob, work out why the answer failed.

A Claude answer has two independent knobs. The **model** decides how capable the answer can be. Effort decides how much work Claude puts into each request: how many files it reads, how many times it checks itself, how far it goes before coming back to you.

## First — why did it fail

Before you turn the knobs, work out what went wrong:

| What happened | What to change |
|---|---|
| Claude lacked context: a vague request, a missing tool | the context — the request, CLAUDE.md, a skill |
| Claude did not try hard enough: skipped a file, did not run the tests | higher effort |
| It had the context, it tried, and it was still wrong: a subtle bug, an unfamiliar area | a stronger model, such as `opus` |
| Routine work you can describe precisely | a smaller model, such as `sonnet`, and lower effort |

## Models

You choose a model by alias — no version numbers to remember:

- `sonnet` — everyday development;
- `opus` — complex reasoning;
- `haiku` — quick, simple tasks;
- `opusplan` — Opus in plan mode, then Sonnet carries out the plan: deep planning, economical execution.

Inside a session:

```
/model
```

opens a menu. Press `s` on a row and the model changes **for this session only**. `/model sonnet` with an argument **remembers** the choice as the default for new sessions. `/model` and `/status` both show which model is set right now.

## Effort

The levels run from `low` to `max`:

- `low` — quick back-and-forth where you check every result;
- `medium` — everyday work with clear boundaries;
- `high` — work where edge cases are likely, such as fixing a bug;
- `xhigh` — deeper still, at a higher cost;
- `max` — hard problems Claude solves without you. It can overthink, so check before relying on it.

```
/effort high
```

To think deeply about **one** request, write `ultrathink` in it — the effort level does not change. Phrases like "think really hard" are just text.

## Fast mode and spending

`/fast` turns on fast mode: the same Opus model answers faster, but costs more per token. On a subscription it spends only extra credits, not the usage included in your plan. Turn it on at the start of a session and for live debugging, not for long unattended tasks. `/usage` shows how much of your plan you have used so far.

**Careful.** 
Switching the model mid-session — and on most models, switching the effort too — forces the whole conversation to be re-read without the cache, which is slower and more expensive. That is why Claude Code asks you to confirm. Choose the model and effort at the start of a task, not halfway through.
