Leaders Insights
Leaders Insights

Stay at the top of your field, a little every day.

DomainsMarketingDataFinanceAI
ResourcesLearnTestToolsBlogGlossary
© 2026 Leaders Insights — All rights reserved.
Tracks/AI Essentials/Claude & the Anthropic ecosystem/Claude Fundamentals/The Claude model family: opus, sonnet, haiku, and when to use each
1/3+160 XP

Claude Fundamentals

1The Claude model family: opus, sonnet, haiku, and when to use each+1602The Claude apps and projects: persistent context that remembers+1603Custom instructions, styles, and artifacts+160

The Claude model family: opus, sonnet, haiku, and when to use each

# The Claude model family: opus, sonnet, haiku, and when to use each

Picking the wrong Claude tier is the most common way to either burn money or ship something slow and dumb. Anthropic ships three model families, and the difference between them is not "better" versus "worse." It is a deliberate trade between raw capability, latency, and cost, and your job as a builder is to route each task to the cheapest tier that still clears the quality bar.

Here is the mental model before the details: Opus for the hardest reasoning and long agentic work, Sonnet for the everyday balance of smart-and-fast, and Haiku for high-volume, latency-sensitive jobs where you need an answer in a blink.

The three tiers, by job not by ego

Think of the families as roles on a team, not a ranking.

Haiku is your fast responder. It is the cheapest and lowest-latency option, built for classification, extraction, routing, short summaries, and the inner loop of pipelines that run thousands of times. When you have a tight per-call budget and the task is well-scoped, Haiku is the default.

Sonnet is the workhorse. It handles most production traffic: drafting, coding, multi-step reasoning, tool use, and document analysis. It is stronger than Haiku while staying fast and affordable enough to run at scale. If you are not sure where to start, start here.

Opus is the heavy thinker. Reach for it on genuinely hard problems: large refactors across many files, deep research synthesis, tricky agentic workflows where a wrong intermediate step compounds, and anything where the cost of a bad answer dwarfs the cost of the call.

Reach
The number of unique people exposed to your message in a given period. Unlike impressions, reach counts each person once, no matter how often they see it.
View full definition →

The version numbers move (Anthropic has shipped Claude 4.x generations of Sonnet and Opus, with Haiku updated alongside), so always pull the current model IDs and capabilities from the model overview in the docs rather than hardcoding from memory. The *families* are the stable concept; the version suffix is what changes.

A concrete routing example

You are building a support tool with two very different jobs.

Job A: tag incoming tickets by category and urgency. This runs on every ticket, all day, and needs to be fast and cheap. The decision space is small and the prompt is the same every time. This is textbook Haiku.

python
from anthropic import Anthropic

client = Anthropic()

def classify_ticket(text: str) -> str:
    resp = client.messages.create(
        model="claude-haiku-4-5",
        max_tokens=20,
        system="Classify the ticket. Reply with exactly one of: BILLING, BUG, FEATURE, OTHER.",
        messages=[{"role": "user", "content": text}],
    )
    return resp.content[0].text.strip()

print(classify_ticket("I was charged twice this month"))

Notice the tight max_tokens and the constrained output. On a classification job you do not pay for a model to think out loud, you pay for a label.

Job B: an agent that resolves a complex bug by reading a multi-file repo, reproducing the issue, and proposing a patch. This is long-horizon, multi-step, and a wrong move early wastes the whole run. This is Opus territory (or a strong Sonnet if budget is tight and the codebase is small). Here the call looks different: high tokentokenA token is the basic unit of text that language models process, often a word fragment, whole word, or punctuation mark rather than a single character.View full definition → budget, tool access, and extended thinking turned on.

We will get to that control next.

The large context windowcontext windowThe context window is the maximum amount of text (measured in tokens) a language model can process at once, including both the input prompt and the generated output.View full definition → changes how you prompt

Claude models carry a large context windowcontext windowThe context window is the maximum amount of text (measured in tokens) a language model can process at once, including both the input prompt and the generated output.View full definition → (on the order of a couple hundred thousand tokenstokensA token is the basic unit of text that language models process, often a word fragment, whole word, or punctuation mark rather than a single character.View full definition → on the standard tiers, with even larger context available in some configurations). In practice that means you can drop an entire codebase module, a long contract, or a full meeting transcript directly into a single message instead of pre-chunking everything through retrieval.

That does not make RAG obsolete. It changes *when* you reachreachThe number of unique people exposed to your message in a given period. Unlike impressions, reach counts each person once, no matter how often they see it.View full definition → for it. The rule of thumb:

  • If the relevant material fits comfortably and you query it once or twice, just put it in the prompt. Simpler, fewer moving parts.
  • If the corpus is huge, changes constantly, or you query it thousands of times, retrieve so you are not paying to re-read the same tokenstokensA token is the basic unit of text that language models process, often a word fragment, whole word, or punctuation mark rather than a single character.View full definition → on every call.

One non-obvious cost lever is prompt caching. When you send the same large prefix (a long system prompt, a big document, a tool schemaschemaA schema is the formal blueprint that defines how data is structured, named, typed, and related within a database, file, or message.View full definition →) across many calls, Anthropic can cache it so you do not pay full price to re-process it each time. For agentic loops that re-send the same context every turn, this is a large saving. The mechanics live in the Messages API docs.

Effort and thinking controls

This is where tier selection stops being binary. Modern Claude models expose extended thinking (also called the model's reasoning or "thinking" budget): you can let the model produce internal reasoning before its final answer, and you control how much.

More thinking means better results on hard, multi-step problems, at the cost of more tokenstokensA token is the basic unit of text that language models process, often a word fragment, whole word, or punctuation mark rather than a single character.View full definition → and more latency. Less thinking (or none) means fast, cheap answers that are fine for straightforward tasks.

You set this with a thinking parameter and a tokentokenA token is the basic unit of text that language models process, often a word fragment, whole word, or punctuation mark rather than a single character.View full definition → budget:

python
resp = client.messages.create(
    model="claude-opus-4-5",
    max_tokens=8000,
    thinking={"type": "enabled", "budget_tokens": 4000},
    messages=[{"role": "user", "content": "Refactor this module for testability:\n\n" + source}],
)

The practical workflow is a two-axis decision, not one:

1. Pick the family (Haiku / Sonnet / Opus) for the floor of capability you need.

2. Tune the thinking budget for how hard *this specific call* is.

A Sonnet with a generous thinking budget can outperform an Opus with thinking off on certain reasoning tasks, and cost less. So measure on your own evals before assuming "biggest model wins." The cheapest reliable combination is the goal, not the most expensive one.

Claude's extended thinking, explained

Watch on YouTube

Where the tiers show up across the ecosystem

The same families power everything Anthropic ships, but the surface changes which tier you touch and how you steer it.

In the Claude apps (web, desktop, mobile) you usually pick the model from a dropdown. Projects let you pin a model plus persistent context and files for a body of work. Artifacts render generated documents, apps, and diagrams in a side panel you can iterate on. Styles let you save a tone and format so output matches your voice without re-promptingpromptingPrompt engineering is the practice of designing and refining text inputs to guide large language models toward accurate, relevant, and reliable outputs.View full definition → every time.

Skills package reusable instructions and resources the model can invoke for repeatable tasks, and Connectors (including the connector marketplace) link Claude to external tools and data sources. Under the hood, connectors speak MCP, the Model Context Protocol, the open standard for exposing tools, data, and prompts to a model in a consistent way. Learning MCP once means your integrations work across the apps, Claude Code, and your own APIAPIApplication Programming Interface: a standardised interface that lets applications communicate and exchange data without knowing each other's internal workings.View full definition → agents.

For builders, three surfaces matter most:

  • The Messages API is the raw endpoint where you choose the model ID, set max_tokens and thinking, attach tools, and run prompt caching. Everything else sits on top of this.
  • Claude Code is Anthropic's agentic coding tool that runs in your terminal and editor, reads and edits your repo, runs commands, and connects to MCP servers. It defaults to a capable tier for the heavy lifting and is where long agentic coding tasks actually live.
  • The Claude Agent SDK (with managed agents) gives you the harness Claude Code is built on so you can build your own agents with the same loop: tool use, file access, and multi-turn execution. The repos and examples are at github.com/anthropics, and the GitHub integration lets Claude open pull requests and respond to issues directly.

The routing logic you learned above applies inside all of these. A managed agent might use Haiku to triage which files matter, then escalate to Opus for the actual fix. That kind of tiered routing inside one workflow is the advanced pattern worth internalizing.

Knowledge check

1. According to the lesson, what is the primary goal when choosing between Claude model tiers?

2. The lesson describes the difference between the model families as which of the following?

3. In the support tool example, why is Haiku the right choice for tagging incoming tickets by category and urgency?

MULTIPLE CHOICE

4. Select ALL statements that correctly describe when to reach for Opus.

Select all the correct answers.

MULTIPLE CHOICE

5. Select ALL statements that reflect the lesson's guidance on model families and versions.

Select all the correct answers.

A simple routing policy you can actually ship

Do not route by vibes. Write the policy down. Here is a starting template that maps task shape to tier.

yaml
routing:
  - task: classification_or_extraction
    model: haiku
    thinking: disabled
    notes: high volume, constrained output, tiny max_tokens

  - task: drafting_summarizing_coding
    model: sonnet
    thinking: low_to_medium
    notes: default for most production traffic

  - task: long_agentic_or_deep_reasoning
    model: opus
    thinking: high
    notes: refactors across files, research synthesis, costly-to-be-wrong

Then do two things. First, set guardrails: cap max_tokens per tier so a runaway agent cannot quietly burn your budget. Second, build a tiny eval set of real tasks and run each tier against it. You will usually find Sonnet clears the bar on more tasks than you expected, and that you only need Opus on a minority. That is exactly the result you want: it means you are spending Opus money only where it pays off.

A note on cost discipline

Pricing is per-tokentokenA token is the basic unit of text that language models process, often a word fragment, whole word, or punctuation mark rather than a single character.View full definition → and differs sharply by tier (Haiku is the cheapest, Opus the most expensive, by a wide margin). Because exact numbers change, check the current rates on the official pricing page before you model your unit economics. The durable principles:

  • Thinking tokenstokensA token is the basic unit of text that language models process, often a word fragment, whole word, or punctuation mark rather than a single character.View full definition → are real tokenstokensA token is the basic unit of text that language models process, often a word fragment, whole word, or punctuation mark rather than a single character.View full definition →. A generous thinking budget on Opus adds up fast at scale.
  • Prompt caching is the single biggest lever for repetitive large-context calls.
  • Escalation beats blanket upgrades. Run the cheap tier first, detect low confidence or failure, then retry on a stronger tier.

Key Takeaways

  • Route by task, not by prestige. Haiku for high-volume classification and extraction, Sonnet as the everyday default, Opus for long agentic work and deep reasoning where a wrong answer is expensive.
  • Treat tier and thinking budget as two separate dials. Tune the model family for the capability floor and the thinking budget for how hard the specific call is; a well-tuned Sonnet often beats an under-thinking Opus.
  • Use the large context window deliberately. Put material in the prompt when it fits and you query it rarely; retrieve when the corpus is huge or hit constantly; cache the repeated prefix either way.
  • Write your routing policy down and back it with a real eval set. You will usually need Opus less often than instinct suggests, which is the point.
  • The same families power the whole ecosystem. Whether you are in the apps, Claude Code, or the Agent SDK over the Messages APIAPIApplication Programming Interface: a standardised interface that lets applications communicate and exchange data without knowing each other's internal workings.View full definition →, MCP and tiered routing are the skills that carry across all of them.

What to do, from this lesson

These actions are compiled in the role's Playbook.

  • Route tasks to Haiku, Sonnet, or Opus by cost and difficulty
  • Tune model tier and thinking budget as two separate dials
  • Enable prompt caching on repeated large-context calls
  • Escalate to a stronger tier only on detected low confidence
See the full action playbook →

Next

The Claude apps and projects: persistent context that remembers