← Startup Signals
8 min readUpdated 2026-10-02Issue 5

Sonnet 5.5 cut the rate by a third and the token count went up by about 30 percent.

A third off the per-token rate is not a third off the bill when the same text now costs more tokens. Here is the arithmetic, and the five ways your code can break.

ByKarthik KumarCafiyn Innovations
At a glance
Claude Sonnet 5.5
$2 input, $10 output, $0.20 cache read, released 28 Sep 2026
Claude Sonnet 4.5
$3 input, $15 output, $0.30 cache read
Token count
About 30 percent more for the same text, versus 4.6, 4.5 and Haiku 4.5
Net effect on text
Roughly 13 percent cheaper, not 33
Images
A 2000x1500 image costs about 2.5 times as many tokens
Sonnet 4.5 retirement
30 November 2026 on Anthropic-operated platforms

The arithmetic nobody puts in the announcement

Claude Sonnet 5.5 launched on 28 September at $2 per million input tokens and $10 per million output, against Sonnet 4.5 at $3 and $15. Cache reads went from $0.30 to $0.20. On the rate card that is a third off everything, which is a real and substantial cut.

The migration guide then says something the pricing page does not: "Claude Sonnet 5.5 uses Claude Sonnet 5's tokenizer. Against Claude Sonnet 4.6, Claude Sonnet 4.5, and Claude Haiku 4.5, the same text produces about 30% more tokens, depending on the content."

Put those together. You pay 0.667 times the old rate for about 1.30 times as many tokens, which lands at about 0.87, so roughly 13 percent cheaper for the same English text. Still a saving, and a much smaller one than the headline implies. Anthropic separately claims the model costs up to 30 percent less on typical workloads, which is a claim about efficiency on real tasks rather than about the same text, and it is worth measuring rather than assuming.

One important qualification: this applies if you are coming from Sonnet 4.6, Sonnet 4.5 or Haiku 4.5. If you are already on Sonnet 5, it is the same tokenizer and there is no inflation at all, so for you the cut is the full third. The tokenizer is not new in 5.5, it dates to Opus 4.7.

Images go the other way

Sonnet 5.5 uses the high resolution image tier, up to 2576 pixels on the long edge and 4,784 visual tokens per image. Sonnet 4.6, Sonnet 4.5 and Haiku 4.5 stop at 1568 pixels and 1,568 tokens. The migration guide states that a 2000x1500 image costs about 2.5 times as many tokens on Sonnet 5.5.

At 0.667 times the rate and about 2.5 times the tokens, the same picture costs appreciably more than it did. If your product is image-heavy, this is the number that decides whether the migration saves you money, and it is a different mechanism from the text tokenizer, so do not merge the two in your model.

Five ways your Sonnet 5 code breaks

Anthropic is unusually direct about this: "Five breaking changes affect code already running on Claude Sonnet 5." Each is an HTTP 400, not a quality regression, so they surface immediately rather than subtly.

  • Turning off up-front thinking now uses thinking type between_tools. The old disabled value returns a 400 invalid_request_error, and between_tools is only accepted at low, medium and high effort, returning a 400 at xhigh or max
  • Forced tool use returns an error. tool_choice types any and tool are rejected
  • Thinking blocks are tied to the model and the conversation, so you cannot carry them across either
  • On the Claude API and Google Cloud, the earlier computer_20251124 computer use tool is not accepted
  • The advisor tool rejects Claude Opus 4.8, Claude Opus 4.7 and Claude Sonnet 5 as advisors

The sixth change, which breaks nothing and will still page you

There is a further change that Anthropic deliberately does not count among the five, because no request fails. On Sonnet 5.5, notes longer than a sentence or two that the model writes between tool calls come back as progress-update thinking blocks, which are empty at the default display setting. Shorter remarks stay as text blocks.

The practical consequence is described plainly in the docs: an interface that streams that text to users "goes quiet between tool calls". Nothing errors. Your agent just appears to stall in front of a customer, which is a worse failure mode than a 400 because your tests will pass.

The fixes are to set a display value that returns the text, using the updates or summarized setting, or to turn off up-front thinking with between_tools. If you ship a streaming agent UI, this is the item to check first, ahead of the five that will announce themselves.

Coming from Sonnet 4.5 or earlier, there is more

The five above are the Sonnet 5 to 5.5 delta. If you are migrating from further back, the guide layers additional breaks on top, and the one most likely to be sitting in production code is the sampling parameters.

  • Sampling parameters return an error. Sonnet 4.6 and earlier accept temperature, top_p and top_k. On Sonnet 5.5 a non-default value returns a 400, so remove them
  • Thinking budgets return an error. The deprecated budget_tokens setting, which Sonnet 4.5 and Haiku 4.5 use for all thinking, now returns a 400
  • Thinking runs on requests that omitted it, so a request that never asked for thinking now gets it
  • Prefill returns an error. Sonnet 5.5 rejects a prefilled last assistant turn with a 400 and the message that the conversation must end with a user message
  • Older beta headers need removing or replacing, and the deprecated output_format should move to output_config.format

The retirement clock, and the platform trap

Two days after the launch, Anthropic announced the deprecation of claude-sonnet-4-5-20250929, "with retirement on the Claude API scheduled for November 30, 2026", naming claude-sonnet-5-5 as the replacement. That is about 60 days of notice, and requests to a retired model fail rather than degrade.

The scope note on the deprecation page is where people will get caught: "The dates on this page apply to Anthropic-operated platforms: the Claude API, Claude Platform on AWS, and Microsoft Foundry. Partner-operated platforms (Amazon Bedrock and Google Cloud) set their own retirement schedules."

Read that twice if you are on AWS. Claude Platform on AWS is Anthropic-operated and is on the 30 November clock. Amazon Bedrock is partner-operated and is not. Both run on AWS, both are things a team would describe as "we use Claude on AWS", and only one of them has a deadline in eight weeks.

One small thing in your favour: the new model id is claude-sonnet-5-5, with no date suffix. If your code builds model ids by appending a date, that pattern does not apply here.

How this compares to what OpenAI shipped the next day

OpenAI released GPT-6.1 Sol on 29 September at the same $2 and $10 per million, for prompts up to 272K input tokens, with a 1,050,000 token context window. The two leading vendors are now price-matched at the tier most products actually run on, which is genuine leverage for a small team.

The differences that remain are not in the headline rate. OpenAI's cached input is $0.10 against Anthropic's $0.20 cache read, which decides it if your workload resends a large fixed prompt. OpenAI has a price cliff above 272K input tokens where input doubles and output rises by half. And neither GPT-6 model publishes a dated snapshot id, only the bare alias, so you cannot pin a version on that side.

The useful conclusion is that switching cost is now about tool-call semantics, streaming behaviour and latency rather than list price. Which is to say: the five breaking changes above matter more to your decision than the $2 does.

What to do

  1. 1Run your real prompts through the token counting endpoint before accepting any projected saving.
  2. 2Raise max_tokens after migrating, or long outputs will truncate at a limit set for the old tokenizer.
  3. 3Grep for tool_choice any and tool, the thinking field, temperature, top_p, top_k, budget_tokens and assistant prefill.
  4. 4If you stream agent text to users, set a display value or use between_tools, or the UI will go silent between tool calls.
  5. 5Work out whether you are on Claude Platform on AWS or Amazon Bedrock, because only one is on the 30 November clock.
  6. 6If your product is image-heavy, model the 2.5x visual token change before migrating.

Common questions

How much does Claude Sonnet 5.5 cost?

$2 per million input tokens and $10 per million output, with cache reads at $0.20 and a 50 percent Batch API discount. Sonnet 4.5 was $3 and $15 with cache reads at $0.30.

Is Sonnet 5.5 really a third cheaper than Sonnet 4.5?

A third cheaper per token, but it uses Sonnet 5's tokenizer, which produces about 30 percent more tokens for the same text than Sonnet 4.6, Sonnet 4.5 or Haiku 4.5. The net effect on the same text is nearer 13 percent. Coming from Sonnet 5 there is no token change, so the full third applies.

What are the breaking changes from Sonnet 5?

Five: thinking disabled is replaced by between_tools, forced tool use returns an error, thinking blocks are tied to the model and conversation, the computer_20251124 tool is not accepted on the Claude API or Google Cloud, and the advisor tool rejects Opus 4.8, Opus 4.7 and Sonnet 5 as advisors.

Why does my streaming agent go quiet between tool calls?

On Sonnet 5.5, notes longer than a sentence or two written between tool calls return as progress-update thinking blocks, which are empty at the default display setting. No request fails. Set a display value that returns the text, or turn off up-front thinking with between_tools.

When does Claude Sonnet 4.5 stop working?

30 November 2026 on Anthropic-operated platforms, which are the Claude API, Claude Platform on AWS and Microsoft Foundry. Amazon Bedrock and Google Cloud set their own retirement schedules.

Is the Sonnet 5.5 model id dated?

No. The model id is claude-sonnet-5-5, with no date suffix.

Sources

Read against the primary documentation rather than secondary coverage. Where a figure comes from a provider's own docs, it is quoted as published on 2026-10-02.

Related

More from Signals

OpenAI removes o1, o3-mini, o4-mini and GPT-4 Turbo on 23 October. The replacements it names run from 5.5 times the price to 97 percent less.
Eleven models and six fine tuned models go dark in four days. Here is OpenAI's own mapping, what each landing costs on a typical month of traffic, and the places where the named replacement is not the cheapest or cannot be used at all.
OpenCode says a breach hit 1.4 percent of Console users who linked an AI provider. Rotate those keys before the root cause is published.
OpenCode has confirmed the breach and has not said how it happened or what was taken. Here is what the vendor said, who is exposed, the order to work in, and how to limit the damage next time.
GitHub Actions workflow lockfiles are in public preview. Here is how to turn them on, check them in CI, and what they do not protect.
A tag can move after you reviewed it. A lockfile makes the runner use the commit you reviewed. Here is the setup, the CI check, the policy, and what a lockfile cannot tell you.
Next.js 16.4.1 and 15.5.28 fix two critical remote code execution flaws. For one of them there is no workaround.
Two of the three fixes were postponed from September. Here is what each flaw needs in order to be reachable, the one workaround that exists, and what the announcement leaves out.
A poisoned npm release that punishes you for revoking the stolen token. The order of your response is the whole defence.
Most incident guidance starts with revoking the leaked token. Here that is the trigger. What StepSecurity found, the order it recommends, and why a valid provenance attestation did not help.
Claude Haiku 5.5 costs a tenth of Haiku 4.5 per token. One token past 100,000 it costs half.
The rate card is a tenth of Haiku 4.5. The footnote is a threshold that moves the price fivefold and that a tokenizer change pushes you toward.
Gemini 4 Argon launched at $2 and $10 and goes to $4 and $20 on 1 December. Price your product on the second number.
Every tier on the pricing page doubles on the same date. What changes, what the number includes, and what to do if you are building on the launch rate.
Claude Haiku 5.5 is not a model id swap. Five things that worked on Haiku 4.5 now return a 400.
The model id is the easy part. The requests that now fail, the response parsing that changes, and the details that fail quietly.
Next.js shipped 16.3.7 and 16.3.8 a day apart. Only one of them is the security release.
Two patch releases a day apart, one of them a decoy if you are not reading carefully. And the 15.5 line does not get the high severity fix at all.
The EU AI output marking rule is not a December deadline. For most teams it started in August.
Almost every summary of this gives one date. There are two, and which one applies to you depends on when you shipped, not on how big you are.
Your AI gateway holds every provider key you have. A 9.9 just landed in LiteLLM.
An AI gateway concentrates every upstream key into one process. That is the point of it, and it is why a privilege escalation there is worse than it looks.
The table your coding agent created does not have row level security on it.
Dashboard-created tables get row level security by default now. API-created tables do not, and API is how your coding agent works.
A 9.5 in next/og. Whether it reaches you depends on one line in your OG route.
The advisory rates it 9.5, but it only fires if your OG image route puts attacker-controlled text into SVG. Here is how to find out which side of that line you are on.
OpenAI and Anthropic both cut prices on 22 September. One of them costs you a refactor.
Two frontier price cuts in one day is a good week for anyone paying a token bill. The migration cost is not evenly distributed, and one of the two prices comes with an expiry hedge.
A package install reads your home directory. This week two of them did it on purpose.
The implant did nothing clever. It read the files your shell reads, in the place your credentials live, and sent them somewhere else. That is the whole attack, and it works.
GitHub is switching off SHA-1 SSH keys. Find out now whether yours is one of them.
The keys at risk are the old ones, on the machines nobody logs into, in the pipelines that have run untouched for three years. Those are also the ones that will fail loudest.
Every third-party script tag is a standing grant to run code on your visitors.
A marketing form, a chat widget, an analytics snippet. Each one is permission for someone else's server to execute whatever it sends, on every page it sits on, forever.
1.8 million Android apps were scanned for hardcoded keys. Here is how to check yours.
Finding secrets in shipped apps is now a cheap, automated pipeline. Anything compiled into an APK, an IPA or a JavaScript bundle should be treated as already published.
OpenAI's Agents API will hold your agent state. What breaks if you ever need to leave.
Two major providers moved into the agent state layer in the same week. A managed harness is a real shortcut, as long as you keep a copy of what it holds.
Meta's Muse agent can now check out at your store. What merchants should change.
Agent purchases are arriving through wallets and single-use cards, not through merchants adopting a new protocol. Many merchants will receive them without choosing to.
What Brevo's SSO incident teaches about multi-tenant SAML and hijacked sending accounts.
One incident, two lessons: why email authentication did not help, and the tenant-scoping mistake anyone shipping SSO can make.
Cloudflare now sorts bots into Search, Training and Agent. What it means for your site and your agent.
The same change lands on two audiences. Site owners can now accidentally block search; agent builders will find more doors closed.
OpenAI has announced ten dated deadlines between 23 October 2026 and 1 April 2027. Here is the calendar.
Ten dated deadlines in six months, every one announced in public. The failure mode is never the notice. Updated 19 October with the entries added since September.
Nvidia bought Hugging Face. Your open-weight fallback is now a vendor relationship.
The commitments say nothing breaks. The structural change is that "we can always self-host" is now a dependency on one vendor rather than on a neutral commons.
The Videos API goes away on 24 September and OpenAI names nothing to move to.
Every other deprecation on OpenAI's page offers a migration target. This one does not, which makes it a different kind of problem.
Whisper shuts down on 26 February. The risk is not the deadline.
Five months is a generous window. Whisper is also typically wired into a background job that fails into a queue rather than into a user's face.
The Assistants API is gone. Your app may not have told you yet.
It shut down on 26 August 2026. The replacement is not a drop-in, and the most common migration mistake changes your model's behaviour without throwing an error.
One Copilot code review costs 13 requests. Here is the rest of the maths.
Copilot now bills on usage rather than seats. The headline change is simple. The multipliers underneath it are where teams get surprised.
Row-level security is on by default now. That is not the same as being protected.
Lovable fixed the default. The gap that actually leaks data was never the default, it was the policy, and no platform can write that for you.
Your model comparison is measuring the wrong number.
Every price list is per token. Your bill is per finished piece of work. Those two numbers can rank models in opposite orders.
An agent with production log access is a new identity. Treat it like one.
Always-on agents that read production logs are arriving fast. The access-control question they raise is old and well understood, which is the good news.

Open the tool.

Ten production categories, three minutes, and a ranked list of what to fix first.

Check your own stack