Start agents on Opus 5.5, climb to Fable 5.1 only when evals at higher effort still fall short, and push every high-volume narrow step down to Haiku 5.5, at 40 times less per input token; Sonnet 5.5 is the faster middle. Then price the workload, not the token: caching, Haiku's 100K step and the tokenizer move the bill more than the list price.
Haiku 5.5 prices hold for prompts up to 100,000 tokens; above that every rate is five times higher (step 02). Teal marks the model Anthropic's docs say to start with.
The lineup on one screen
| Model | $/M in / out | Pick it for |
|---|---|---|
Haiku 5.5claude-haiku-5-5 | $0.10 / $0.50 | route, classify, extract |
Sonnet 5.5claude-sonnet-5-5 | $2 / $10 | speed plus intelligence |
Opus 5.5claude-opus-5-5 | $4 / $20 | start here for agents |
Fable 5.1claude-fable-5-1 | $10 / $50 | hardest reasoning |
List prices from the pricing page and the models overview, read on 2026-10-21. Sonnet 5.5 shipped on 2026-09-28, Haiku 5.5 on 2026-10-07.
What they share matters as much: a 1M-token context, 128K output tokens, text and image input, a June 2026 knowledge cutoff, and the same rate limits per tier for Haiku, Sonnet and Opus 5.5. So the choice is price, latency and how hard the task is, not which model can physically fit the job. Anthropic's own guidance is to start with Opus 5.5 for most workloads; the request basics are in Messages API and the Claude API tutorial.
Three prices people misread
| Model | Cache hit, $/M | Of input |
|---|---|---|
| Haiku 5.5 | $0.01 | 0.1x |
| Sonnet 5.5 | $0.10 | 0.05x |
| Opus 5.5 | $0.20 | 0.05x |
| Fable 5.1 | $0.25 | 0.025x |
Cache hits are not a flat 0.1x any more. Opus 5.5 and Sonnet 5.5 read cached tokens at 0.05x, Fable 5.1 at 0.025x, and Haiku 5.5 at 0.1x. Writes still cost 1.25x input for the 5-minute cache and 2x for the 1-hour one, so a big cached prefix is cheapest, relative to its own input price, on the models people assume are expensive. The mechanics are in Prompt Caching.
- 99,000 in × $0.10, 600 out × $0.50
- $0.0102 per call
- 120,000 in × $0.50, 600 out × $2.50
- $0.0615 per call: 6.0x for 21% more prompt
- 120,000 in × $2, 600 out × $10
- $0.2460: still 4.0x Haiku's long price
Rule of thumb: keep Haiku 5.5 prompts under 100,000 tokens, counting cache reads and writes; the step applies to the whole request.
The step is per request and counts every input token, cached or not. The Batch API halves both sides on all four models (Haiku 5.5: $0.05 / $0.25), and the discounts stack with caching. Opus 5.5 also has a fast mode at $8 / $40 for latency-bound work.
Derived from the step 03 ticket: the old models see the same text as about 1/1.3 as many tokens. Recount with count_tokens on your own prompts; the increase depends on the content.
Worked example: one support inbox, four bills
- Volume
- 200,000 tickets a month, about 4.6 a minute, so a 5-minute cache stays warm and writes are a rounding error.
- Prefix
- 8,000 tokens of system prompt, tools and policy, a cache hit on every call.
- Per ticket
- 2,000 fresh input tokens (the ticket and history) and 600 output tokens, thinking included.
| Model | Per ticket | Per month |
|---|---|---|
| Haiku 5.5 | $0.00058 | $116.00 |
| Sonnet 5.5 | $0.01080 | $2,160.00 |
| Opus 5.5 | $0.02160 | $4,320.00 |
| Fable 5.1 | $0.05200 | $10,400.00 |
Opus 5.5 per ticket is (8,000 × $0.20 + 2,000 × $4 + 600 × $20) / 1M = $0.0216, or $4,320.00 a month. Output dominates every row: 600 tokens are 56% of the Opus bill, which is why effort (how much the model thinks) is a bigger lever than the input price. Effort and its per-request controls are in Agent Cost Control.
All four use the same tokenizer, so the token counts are comparable across rows. Your counts will differ: measure prefix, ticket and output on a real sample.
The routing pattern: small model sorts, big model reasons
The 70% routine share is an assumption: measure yours from a labelled sample before you trust the total.
| Path | Tokens | Per month |
|---|---|---|
| Router, every ticket | 2,000 cached + 2,000 in + 50 out on Haiku 5.5 | $49.00 |
| Routine, 140,000 | answered on Haiku 5.5 | $81.20 |
| Hard, 60,000 | answered on Opus 5.5 | $1,296.00 |
| Total | 33% of all-Opus | $1,426.20 |
The router costs $49 a month and the hard 30% still costs 91% of the routed bill, so the escalation share is the number to watch: every 10 points of tickets moved from routine to hard adds $420.40 a month. Sending the hard share to Sonnet 5.5 instead would cost $778.20; whether that holds quality is an eval question, not a pricing one.
import json
import anthropic
client = anthropic.Anthropic()
ROUTER = "Label the ticket routine or hard. Hard: refunds, legal, outages."
TIER = {"type": "object", "additionalProperties": False, "required": ["tier"],
"properties": {"tier": {"type": "string", "enum": ["routine", "hard"]}}}
def route(ticket: str) -> str:
r = client.messages.create(
model="claude-haiku-5-5", max_tokens=1024, system=ROUTER,
cache_control={"type": "ephemeral"},
output_config={"effort": "low",
"format": {"type": "json_schema", "schema": TIER}},
messages=[{"role": "user", "content": ticket}])
if r.stop_reason != "end_turn":
return "hard" # refusal or cut off: escalate, never guess
text = next(b.text for b in r.content if b.type == "text")
return json.loads(text)["tier"]
The router reads blocks by type (a thinking block can come first), branches on stop_reason, and escalates when unsure, since a wrong "routine" costs a bad reply while a wrong "hard" costs $0.0210. Haiku 5.5 runs safety classifiers with no server-side fallback, so handle refusal. In production the router prompt carries a few thousand tokens of examples: under 512 tokens nothing is cached. Thresholds, cascades and failover are in Model Routing.
Ran against a mocked API with anthropic 1.17.0, the current Python SDK; no live key was used.
Effort, thinking and the breaking changes
| Model | Effort | Forced tools |
|---|---|---|
| Haiku 5.5 | medium, thinking on by default | accepted, skips thinking |
| Sonnet 5.5 | high, thinking on by default | 400 error |
| Opus 5.5 | medium, thinking always on | 400 error |
| Fable 5.1 | high, thinking always on | 400 error |
Forced tool use (tool_choice of any or a named tool) returns an error on Sonnet 5.5, Opus 5.5 and Fable 5.1. Haiku 5.5 accepts it but skips thinking. Use auto with a prompt and strict: true tools, or structured outputs as in the router above. On all four, temperature, top_p and top_k at non-default values, budget_tokens and assistant prefill return a 400. Steer depth with output_config.effort; how it trades quality for tokens is in Adaptive Thinking and Effort.
Haiku 5.5 drops thinking blocks from Opus 5.5, Sonnet 5.5 and Fable 5.1 without an error, while Opus and Sonnet 5.5 read Haiku 5.5's on the Claude API. Escalate a conversation up the lineup, not down, or send the cheaper model a fresh request with the facts it needs.
If you are still on a 4.x model
| Model | Status | Move to |
|---|---|---|
| Sonnet 4.5 | Deprecated; retirement date 2026-11-30 | claude-sonnet-5-5 |
| Haiku 4.5 | Active; no retirement date announced (its 2026-10-15 floor has passed) | claude-haiku-5-5 |
Status as of 2026-10-26, from the model deprecations page. Requests to a retired model fail; Anthropic gives at least 60 days' notice.
- Swap the IDNo date suffix on the 5.5 models.
- Recount tokensAbout 30% more for the same text; revisit
max_tokensand budgets. - Remove what errorsSampling parameters,
budget_tokens, prefill; forced tools on Sonnet 5.5. - Read blocks by typeThinking is on by default and can come first.
- Re-run your evalsThen re-price with the new counts.
Haiku 4.5 to 5.5 has two quieter changes: the minimum cacheable prompt drops from 4,096 tokens to 512, and Priority Tier is not supported on Haiku 5.5, so plan capacity separately if you had a commitment. When the API stops being the cheapest option at your volume is in Self-Host vs API.
A decision you can defend
- One label, one field, one short answer
- High volume, latency first
- Prompts under 100,000 tokens
- Agents, coding, multi-step tool use
- The default until an eval says otherwise
- Sonnet 5.5 when the same eval passes faster
- Long-horizon, demanding reasoning
- Only after Opus 5.5 at higher effort falls short
Rule of thumb: pick the model per step, not per product, and let a measured eval move each step up or down.
The order that keeps this honest: write the eval set first, run it on Opus 5.5, try the cheaper model on each high-volume step, and only climb to Fable 5.1 for the steps that still fail. Price every candidate with your own token counts. Cost and latency as one budget is in Cost vs Latency.
- Comparing per-token prices across tokenizers: a 4.5 model's count understates the same text on a 5.5 model by about 30%.
- Assuming every cache hit is 0.1x: Opus and Sonnet 5.5 are 0.05x, Fable 5.1 0.025x.
- Letting a Haiku 5.5 prompt drift past 100,000 tokens: the whole request is billed at five times the rate.
- Porting
tool_choice: {"type": "any"}to Sonnet 5.5 or Opus 5.5: it is now a 400.
“Our support bot runs Opus on every ticket and costs too much. What do you do?” Measure first: tokens per ticket and the output share (here 56% of the bill). Then put a Haiku 5.5 router in front with an escalate-when-unsure rule, keep the hard share on Opus, and gate the change on an eval. With a 70% routine share the bill drops from $4,320 to $1,426. Name the risk: a mis-routed hard ticket, so track escalations and complaint rate.
Your Haiku 5.5 extractor receives 95,000-token documents, and you add a 10,000-token cached instruction prefix. What happens to the price?
The prompt is now 105,000 tokens, over the 100,000 step, and cache reads count toward it. Every rate on that request becomes five times higher. Split the document or trim the prefix.
Moving from Sonnet 4.5 ($3 / $15) to Sonnet 5.5 ($2 / $10) looks like a 33% saving. Why is it smaller?
Sonnet 5.5 uses the newer tokenizer, about 30% more tokens for the same text. On this post's ticket the real saving is about 19%.
In the routed design, would you rather mis-route 5% of hard tickets as routine or 5% of routine as hard?
Routine as hard: it costs $0.0210 a ticket. A hard ticket answered by the small model costs a bad reply and possibly a customer. Bias the router toward escalation.
- Haiku 5.5 $0.10 / $0.50, Sonnet 5.5 $2 / $10, Opus 5.5 $4 / $20, Fable 5.1 $10 / $50 per million tokens.
- Cache hits are 0.1x on Haiku 5.5, 0.05x on Sonnet and Opus 5.5, 0.025x on Fable 5.1; batch halves everything.
- Haiku 5.5 prompts over 100,000 tokens cost five times more; the new tokenizer adds about 30% tokens.
- Route: Haiku 5.5 sorts, Opus 5.5 reasons; in the worked example $4,320 became $1,426 a month.
- Sonnet 4.5's retirement date is 2026-11-30; forced
tool_choiceerrors on Sonnet 5.5, Opus 5.5 and Fable 5.1.