Blank white background with no objects or features visible.

We’re sharing complimentary access to the full Gartner Hype Cycle for AI Governance 2026. Get your copy →

Opus vs Sonnet vs Haiku: A Cost-vs-Capability Routing Guide

By Ashish Dubey

Published: October 19, 2026

TL;DR
  • The Claude tiers trade capability for price on a steep curve. As of October 2026: Haiku 5.5 (from $0.10 / $0.50 per million in/out), Sonnet 5.5 ($2 / $10), Opus 5.5 ($4 / $20, the recommended default), and Fable 5.1 ($10 / $50) at the top for the most demanding reasoning and agentic work.
  • All four share a 1M-token context window and a June 2026 knowledge cutoff, so the choice is about reasoning depth and latency, not context size.
  • Don’t send every request to one tier. Classification, extraction, and routing-style tasks run well on Haiku; most production work fits Sonnet or Opus; reserve Fable for the genuinely hard cases.
  • Route by task, not by hard-coding a model name. A logical model name backed by a tier, or automatic routing that scores each request, lets you match cost to difficulty without touching application code.
  • Through a gateway you see cost and latency per tier and can cap spend per team — so the routing decision is driven by data, not vibes.

The instinct on a new Claude build is to point everything at the most capable model and move on. It works, and it quietly overpays, because most requests do not need the top tier. The opposite instinct — standardize on the cheapest model — undershoots on the requests that actually carry the product. The right answer is neither: match the model to the difficulty of each request, and make that match a configuration rather than a line of code.

This guide lays out the current Claude tiers by cost and capability, gives a practical mapping from task type to tier, and shows how to route by task through a gateway so the decision is reversible and measured. Prices and positioning below are from Anthropic’s models overview, as of October 2026; model lineups change, so treat the exact rates as a snapshot and confirm on Anthropic’s pricing page before budgeting.

The tiers, by price and capability

Claude model tiers by price, positioning, and context
Claude model tiers by price, positioning, and context

Four tiers, one context window. Haiku 5.5 is the fastest and cheapest, built for high-volume, latency-sensitive tasks. Sonnet 5.5 is positioned as the best combination of speed and intelligence. Opus 5.5 is the recommended default for most workloads, at moderate latency. Fable 5.1 sits above all of them for demanding reasoning and long-horizon agentic work — and is both the slowest and, at $10 / $50 per million tokens, the most expensive. Every tier shares the 1M-token context window and the June 2026 knowledge cutoff, which means you almost never pick a tier for context room; you pick it for how hard the task is and how fast you need the answer.

Cost-vs-capability: the Claude tier ladder
Cost-vs-capability: the Claude tier ladder

The jump from Haiku to Fable is roughly 100x on input price and 100x on output. That spread is the entire argument for routing: sending a Haiku-sized task to Fable is not a rounding error, it is a 100x overspend on that request.

Want cost and latency per Claude tier, with a budget cap per team?

Which tier for which task

Capability tiers map cleanly onto task difficulty. Use this as a starting default and adjust against your own evals.

Haiku handles the high-volume, well-bounded work: classification, routing and triage, extraction and tagging, short rewrites, simple structured output, and the “is this relevant?” filters in a RAG pipeline. These are tasks where a smaller model is not a compromise — it is the right tool, and the price and latency are the point.

Sonnet is the workhorse for most production features: drafting and editing, summarization with nuance, standard tool use and function calling, code of everyday complexity, and multi-step but not open-ended reasoning. If you are unsure, start here and measure.

Opus is the default when quality clearly matters: harder reasoning, longer tool chains, tricky code, and tasks where a wrong answer is expensive. As the recommended default it is also a safe baseline to escalate to from Sonnet.

Fable is for the genuinely hard cases — deep reasoning, long-horizon agentic workflows that chain many steps — where the extra capability earns its 100x price because a cheaper model simply fails the task. It is a scalpel, not a default.

The practical pattern is a cheap default with an escalation path: run the task on Haiku or Sonnet, and escalate to Opus or Fable only when a confidence signal, a validation check, or the task type demands it.

Route by task, not by hard-coding a model

The reason most teams overpay is architectural: the model name is a string in application code, so changing it is a deploy, and matching model to task per request is more than anyone wants to maintain by hand. A gateway removes that friction.

Routing each request to the right tier through a gateway
Routing each request to the right tier through a gateway

Point your application at a logical model name backed by a real tier, and you can change which tier serves it — or split traffic across tiers — without touching code. Add auto-routing, and the gateway scores each request and sends it to an appropriately sized model automatically. Either way the application sends one request to one endpoint; the routing decision lives in config, where you can tune it, canary it, and roll it back.

Per-model metrics in the TrueFoundry AI Gateway
Requests per second, failure rate, latency, and cost per Claude tier — the data that tells you whether a route is set right. Source: TrueFoundry docs.

With cost and latency visible per tier and budgets set per team, the routing decision stops being a guess. You can see that a workload you were running on Opus holds quality on Sonnet, move it, and watch the cost line drop — the kind of change that is a one-line config edit instead of a cross-service refactor.

Testing a model in the TrueFoundry playground
Comparing tiers on real prompts in the playground before you route to them. Source: TrueFoundry docs.

Where teams get this wrong

They standardize on one tier. All-Opus overpays on the easy majority; all-Haiku undershoots on the hard minority. Match the tier to the task.

They pick by context window. All four tiers share 1M tokens, so context is rarely the deciding factor. Choose on reasoning depth and latency.

They hard-code the model name. That makes every routing change a deploy and per-task routing impractical. Use a logical name so the tier is configuration.

They route without measuring. Down-routing to save money is only safe if you watch quality. Keep evals and per-model metrics on, and escalate where quality dips.

A worked example

A document-processing product runs three steps per file: detect document type, extract fields, and write a summary. Pointed entirely at Opus, every step pays the top rate. Routed by task, type-detection and extraction go to Haiku (bounded, high-volume), the summary goes to Sonnet (nuance without the Opus premium), and only files flagged low-confidence escalate to Opus for a second pass. The application calls one logical endpoint per step; the tiers behind them are config. The result is the same output quality on the hard files and a large cut on the easy majority — visible as a per-model cost breakdown in the gateway.

Related reading

Conclusion

The Claude tiers are designed to be mixed, not chosen once. The capability curve is steep and so is the price curve, which means the cost of sending an easy task to a top tier — or a hard task to a cheap one — is large and entirely avoidable. The move is to match model to task difficulty, default cheap, and escalate on signal.

Make that match configuration rather than code, route by task through a gateway, and keep cost, latency, and quality visible per tier. Then “which model?” stops being a standing debate and becomes a dial you can turn per workload and see the result.

Match every Claude request to the right tier

Try now.

One gateway for all your models, MCP servers, and agents.
No credit card needed.

Start free
Table of Contents

One Gateway for Every LLM, Agent and MCP Server

Book a 30-min with our AI expert

Book a Demo

The fastest way to build, govern and scale your AI

Book Demo
Summarize with
ChatGPT logo by OpenAI
Perplexity AI logo
Blurry red snowflake on white background, symmetrical frosty design with soft edges and abstract shape.

Discover More

No items found.
October 19, 2026
|
5 min read

Migrating From OpenAI to Claude Without a Rewrite

No items found.
October 19, 2026
|
5 min read

Opus vs Sonnet vs Haiku: A Cost-vs-Capability Routing Guide

No items found.
October 19, 2026
|
5 min read

Claude Batch API vs Real-Time: The 50% Cost Lever

No items found.
October 19, 2026
|
5 min read

Claude Prompt Caching: The Real Cost Math

No items found.
No items found.

Recent Blogs

Black left pointing arrow symbol on white background, directional indicator.
Black left pointing arrow symbol on white background, directional indicator.

Frequently asked questions

What’s the difference between Opus, Sonnet, and Haiku?

They are Claude tiers trading capability for price. Haiku 5.5 is the fastest and cheapest for high-volume tasks; Sonnet 5.5 balances speed and intelligence; Opus 5.5 is the recommended default for most workloads. Fable 5.1 sits above them for the most demanding reasoning. All share a 1M-token context window.

Which Claude model is cheapest?

Haiku 5.5, starting around $0.10 input / $0.50 output per million tokens as of October 2026. Fable 5.1 is the most expensive at $10 / $50. Confirm current rates on Anthropic’s pricing page.

Should I just use the most capable model everywhere?

Usually not — most requests don’t need it, and the price spread from Haiku to Fable is roughly 100x. Route easy, high-volume work to cheaper tiers and reserve the top tiers for hard tasks.

How do I route by task without rewriting my app?

Point the app at a logical model name backed by a tier, or use a gateway’s automatic routing to score each request and pick a tier. The application calls one endpoint; the routing lives in configuration.

Does a bigger context window mean a better model?

Not here — all four tiers share the same 1M-token window. Choose on reasoning depth and latency, not context size.

Take a quick product tour
Start Product Tour
Product Tour