Claude Sonnet 5 Costs 50% More From September 1
On 1 September 2026, Claude Sonnet 5 stops costing $2 per million input tokens and starts costing $3. Output goes from $10 to $15. Anthropic’s pricing documentation is explicit about it: “Introductory pricing of $2/$10 per million input/output tokens is in effect through August 31, 2026, after which the standard pricing of $3/$15 per million input/output tokens will take effect.”
That is a 50% increase on both halves of the bill, arriving on a Tuesday, with no action required from you to trigger it. If you run a WordPress chatbot on your own API key — which is how MxChat and most self-hosted AI plugins work — the invoice that lands in early October is the first place you will notice.
So the useful question is not “what is the new rate.” It is “what does that actually cost me.” To answer it with something better than arithmetic on a blog post, I measured 488 real chatbot conversations on this site.
What actually changes on 1 September
Every pricing line for Sonnet 5 moves by the same 50%, including the discounted ones. The cache and batch rates are derived from the base input rate, so they rise with it.
| Sonnet 5 line item | Through 31 Aug | From 1 Sep |
|---|---|---|
| Base input | $2 / MTok | $3 / MTok |
| Output | $10 / MTok | $15 / MTok |
| 5-minute cache write | $2.50 / MTok | $3.75 / MTok |
| 1-hour cache write | $4 / MTok | $6 / MTok |
| Cache hit (read) | $0.20 / MTok | $0.30 / MTok |
| Batch input / output | $1 / $5 / MTok | $1.50 / $7.50 / MTok |
One piece of context that most coverage leaves out, and it matters: $3/$15 is exactly what Claude Sonnet 4.6 has always cost. Sonnet 4.5 too. This is not a new premium tier — it is the introductory discount on a newer model expiring, leaving Sonnet 5 priced identically to the Sonnet generation before it. If you were on Sonnet 4.6 and moved to Sonnet 5 in the last few months, you got a better model at a discount for a while. In September you keep the better model and go back to paying the normal Sonnet rate.
That framing does not make the increase smaller. It does change what a sensible response looks like, because “switch back to Sonnet 4.6 to save money” is not one — 4.6 costs the same.
Why this lands on WordPress site owners differently
Hosted chatbot suites absorb model pricing inside a monthly seat or conversation fee. When a model gets more expensive, the vendor’s margin moves and your invoice usually does not, at least until the next pricing review.
Self-hosted plugins work the other way round. You paste your own API key into a settings field, and from that point you are the one buying tokens. The plugin author has no lever over your bill at all. The upside is real — no per-conversation markup, no seat count, and you can switch providers in a dropdown. The downside is that a provider’s pricing decision reaches you directly and immediately, with no buffer.
That is worth knowing before you evaluate whether the increase is a problem, because the size of it depends entirely on how many tokens your chatbot actually moves. Which is measurable.
What 488 real conversations actually cost
This site stores each chatbot conversation as a transcript. On 10 August 2026 there were 488 of them, containing 3,256 messages, of which 1,568 were model replies — so 1,568 requests to the API. That is the corpus.
The first thing it shows is an asymmetry that shapes everything downstream:
| Message type | Count | Total characters | Average |
|---|---|---|---|
| Visitor messages | 1,685 | 91,903 | 55 characters |
| Bot replies | 1,568 | 1,009,034 | 644 characters |
People type about 55 characters. The bot writes about 644 — 11.7 times more. Since output tokens cost five times what input tokens do, the instinct is that output dominates the bill. It does not, and the reason is the single most expensive property of how chat APIs work.
The API is stateless, so you pay for the conversation again on every turn
There is no server-side memory of your conversation. To let the model answer turn four with knowledge of turns one to three, the plugin re-sends the entire prior exchange as input, every single time. A ten-message conversation does not send ten messages’ worth of input. It sends the first message once, the second message nine times, and so on.
Measured across the corpus, with the system prompt counted per request and the conversation history counted as it actually accumulates:
| Measure | Value |
|---|---|
| Stored transcript, all 488 conversations | 1,635,549 characters (~409,000 tokens) |
| Actually billed as input | 11,528,184 characters (~2,882,046 tokens) |
| Ratio | 7.05× |
| Billed as output | 1,009,034 characters (~252,259 tokens) |
Input outweighs output by more than eleven to one. Even at a 5× price disadvantage, output is only about 30% of the bill. Chatbot economics are input economics, and almost all of that input is text you have already paid for at least once.
Nearly half the input bill is one block of text you wrote once
The system prompt on this install is 3,478 characters — roughly 870 tokens. It never changes. It is sent, in full, at base rate, on all 1,568 requests.
That single static block accounts for 1,363,376 of the 2,882,046 input tokens: 47.3%. Just under half of everything this site has spent on chatbot input is the same paragraph of instructions, re-billed 1,568 times.
Conversation length distribution explains why nobody notices. The median stored transcript is 2,125 characters and the median conversation is four messages long. Most conversations are tiny, so most of what they cost is fixed overhead rather than content. The tail is where it inverts: the 99th percentile transcript is 30,572 characters, and the single worst conversation on the site ran 103 messages and consumed 473,349 input tokens on its own — roughly what 1,200 median conversations cost between them.
The bill, five ways
Here is that identical corpus — 2,882,046 input and 252,259 output tokens — priced at each published rate.
| Model and rate | Cost for 488 conversations | vs. Sonnet 5 intro |
|---|---|---|
| Claude Haiku 4.5 ($1 / $5) | $4.14 | −50% |
| Sonnet 5, intro rate ($2 / $10) | $8.29 | — |
| Sonnet 5, new rate with caching | $8.75 | +6% |
| Sonnet 5, new rate ($3 / $15) | $12.43 | +50% |
| Claude Opus 5 ($5 / $25) | $20.72 | +150% |
Two things stand out. The first is that the absolute numbers are small — this is twelve dollars, not twelve hundred. For a site at this volume the increase is a rounding error, and it would be dishonest to write it up as a crisis. Scale it to a busy support desk doing 50,000 conversations a month rather than 488 and the same arithmetic produces roughly $1,270 instead of $850, which is the point at which somebody starts asking questions.
The second is the third row.
Prompt caching absorbs almost the entire increase
Anthropic’s prompt caching lets you mark a stable prefix of a request — typically the system prompt and tool definitions — so that repeat requests read it from cache instead of reprocessing it. The economics:
| Cache operation | Multiplier on base input | Duration |
|---|---|---|
| 5-minute cache write | 1.25× | 5 minutes |
| 1-hour cache write | 2× | 1 hour |
| Cache read (hit) | 0.1× | same as the preceding write |
A cache read costs a tenth of the standard input price, so a 5-minute cache pays for itself after a single hit. Apply that to the 47.3% of input that is the unchanging system prompt, and the corpus that costs $12.43 at the new uncached rate costs $8.75 cached — within 6% of the old introductory price. Caching the system prompt gives back about 89% of the increase.
Three constraints worth knowing before you count on it:
- It is a prefix match, byte for byte. If anything ahead of the cache breakpoint changes between requests — a timestamp, the current page URL, the visitor’s name — the cache misses and you pay full price with no error to tell you. Dynamic context has to go after the breakpoint.
- There is a minimum, and it varies by model. 512 tokens on Opus 5, 1,024 on Sonnet 5 and Sonnet 4.6, 2,048 on Opus 4.7, and 4,096 on Opus 4.6 and Haiku 4.5. A prefix shorter than the minimum silently does not cache. This site’s 870-token system prompt clears the bar on Sonnet 5 and Opus 5 and falls short of it on Opus 4.6 and Haiku 4.5 — where it would quietly do nothing.
- Your plugin has to actually send it. Which brings me to the awkward part.
MxChat does not currently send cache breakpoints, and that is our problem to fix
Searching the MxChat 3.2.18 source for cache_control returns zero results, across all five places the plugin calls Anthropic’s messages endpoint. Every request re-bills the system prompt at full rate. The 47.3% figure above is not a hypothetical inefficiency in somebody else’s code — it is ours, measured on our own site.
It is filed as a plan for the plugin rather than quietly patched, because a post that reports a defect and then silently fixes it before publishing is a post that lies about its own evidence. The fix is small in code and large in effect, and it is the single highest-leverage thing available to anyone running a Claude-backed chatbot before September.
And one more, found while checking
MxChat’s model catalog still lists Claude Opus 4.1 as a selectable option. Anthropic retired that model on the first-party API on 5 August 2026 — five days before this was written. Anyone who had selected it is getting a 404 rather than an answer. The plugin does have an automatic migration guard for retired Claude models, and it works, which is why the older Claude 3 identifiers are handled safely; Opus 4.1 simply is not on its list yet. That is also filed. We published a piece in July telling readers to check their chatbot before OpenAI’s model shutdown, so shipping a dropdown entry that died five days ago is a fair thing to be called out on.
It is not only Anthropic
Google’s tiering does something structurally different and easier to miss, because the headline rate does not change at all — the threshold does the work. Gemini charges one rate up to 200,000 tokens of prompt and a higher one above it:
| Model | Input ≤200k | Input >200k | Output ≤200k | Output >200k |
|---|---|---|---|---|
| Gemini 3.1 Pro Preview | $2.00 | $4.00 | $12.00 | $18.00 |
| Gemini 2.5 Pro | $1.25 | $2.50 | $10.00 | $15.00 |
Input doubles at the boundary. For a chatbot answering short questions this never fires — the median conversation here would need to be a hundred times longer. For a plugin doing document analysis or retrieval over long context, it fires constantly, and it fires on the whole prompt rather than just the part above the line.
There is also a subtler cost mover that has nothing to do with price. Anthropic notes that Claude 4.7 and later use a newer tokenizer that produces roughly 30% more tokens for the same text than Sonnet 4.6 and earlier. Sonnet 5 is in that group. So moving from Sonnet 4.6 to Sonnet 5 at an identical $3/$15 is not cost-neutral — the same conversation counts as more tokens. Comparing sticker rates across model generations quietly understates the newer one.
What to actually do before 1 September
- Find out which model you are on. Not which one you meant to select — the value stored in your settings. If it is Sonnet 5, the 50% applies to you. If it is a retired identifier, you have a more urgent problem than pricing.
- Measure your own system prompt. Character count divided by four is a good enough token estimate. Multiply by your monthly request count. If that number is a meaningful share of your input, caching is the fix and trimming is the free fallback — prompt text you can delete costs nothing on every request forever.
- Count your requests, not your conversations. One conversation is many billable requests, and the input grows on each one. A four-message conversation is two requests; a hundred-message conversation is fifty, each larger than the last.
- Cap conversation history. Quadratic growth is the tail risk. One 103-message conversation on this site cost as much as roughly 1,200 typical ones. A limit on how many prior turns get re-sent converts that curve into a straight line.
- Consider Haiku 4.5 for the easy half. At $1/$5 it is a quarter of post-September Sonnet 5 pricing, and a large share of chatbot traffic is navigational — opening hours, where do I find X, what does this plan include. Route the hard questions up, not everything.
- Use the Batch API for anything that is not a live conversation. Half price on both input and output. It does not fit chat, where somebody is waiting. It fits content generation, bulk classification, and summarisation perfectly.
What we run here, for the avoidance of doubt
Two disclosures, since the numbers above come from this site.
Our own chatbot is not on Claude. Its configured model is an OpenAI one, so the September change does not hit our chat bill — the corpus above is a real measurement of real traffic, priced against Claude rates for comparison, not an invoice we are about to receive. Our content generation tooling is on Claude, pinned to Sonnet 4.6, which already costs $3/$15 and therefore does not change either.
Second: the token figures are estimates. They use Anthropic’s own published guidance that a token is roughly four characters of English, not a tokenizer run over the corpus. That is accurate enough for ratios and comparisons and is not accurate to the dollar. The figures also exclude retrieval context — this install returns up to six retrieved sources per request — so the true input totals are higher than stated, and every cost above is a floor rather than a ceiling.
FAQ
Does the price change affect conversations that started before 1 September?
Pricing applies per request at the time the request is made, not per conversation. A conversation that begins on 31 August and continues on 1 September has its later turns billed at the new rate.
Should I switch to Sonnet 4.6 to avoid the increase?
No — Sonnet 4.6 already costs $3/$15. There is no saving, and you would be moving to an older model. The genuine cheaper options are Haiku 4.5 at $1/$5 or reducing the tokens you send.
Is prompt caching worth it for a low-traffic site?
It depends on request spacing rather than volume. A 5-minute cache pays back after one hit, so it needs a second request within five minutes of the first. A busy support hour benefits enormously; three conversations a day scattered across the day will mostly write caches nobody reads, and the 1.25× write premium makes that slightly worse than not caching. The 1-hour cache costs 2× to write and needs two reads to break even.
Where do I check what a model actually costs today?
The provider’s own pricing documentation, and nowhere else. Aggregator comparison pages were the source of a claim I checked while writing this and could not reproduce; the numbers here come from Anthropic’s and Google’s own published tables, retrieved on 10 August 2026. Rates move often enough that a secondhand table is a liability.
Does streaming change what I pay?
No. Streaming changes when tokens arrive, not how many are billed.
The part that generalises
The increase is 50% and it is real. But the measurement that produced this piece found something more useful than the rate change: on a live site, with a live audience, 47.3% of every input token was one static block of text being bought over and over at full price. A provider raising prices by 50% is a thing that happens to you. Half your input being a cache miss is a thing you can fix — and on this corpus, fixing it is worth almost exactly as much as the increase costs.
The pricing change is the deadline. The audit is the work. If you have never counted what your chatbot sends, the 22 days before 1 September are a reasonable excuse to start — and the same exercise is worth doing whether or not you use MxChat. If you want the mechanics of how retrieval adds to that input, we went through it in semantic search versus keyword search, and the settings side of key and model handling is covered in the WordPress API key audit and the documentation.
Disclosure: this post was researched and written by MxChat’s automated SEO agent. Every price is quoted from the provider’s own current documentation, and every first-party figure was measured directly against this site’s production database on 10 August 2026. Maxwell Rivera holds editorial responsibility for what is published here.