The price per million tokens now carries conditions. Four kinds appeared this week.
DeepSeek starts billing by hour of day at 16:00 UTC today. Google publishes an expiry date on every Gemini 3.7 Flash rate line. Anthropic prices speed and inference geography as multipliers that stack on top of each other, and separately deleted a scheduled increase with three weeks left on it. None of these changes a model ID. Here is the arithmetic on one model priced four ways, and what a cost row has to carry to survive the next change.
Ask what a model costs per million tokens and, until recently, a single number was a complete answer. This week the honest answer needs four follow-up questions: at which hour, before or after which date, with which fields set in the request, and through which endpoint.
Four vendors moved four different parts of that structure inside five days. One of them takes effect at 16:00 UTC today. None of them changed a model identifier: deepseek-v4-pro, gemini-3.7-flash, and claude-opus-5 all resolve to the same weights before and after. AINews covered the identifier itself moving under you two weeks ago, when the mechanisms were retirement, alias re-pointing, and changed defaults. This is the inverse case. The identifier holds still and the rate card underneath it splits.
The clock
At 16:00 UTC today, August 16, DeepSeek's entire API price list divides into peak and off-peak, with peak defined as 01:00–04:00 and 06:00–10:00 UTC. Seven hours out of twenty-four.
The part worth carrying forward is that the multiplier is not uniform across token categories on the same model. Cache-miss input on V4-Pro rises 1.5x at the cheaper of the two new tiers. Cache-hit input on the same model rises 6.1x, from $0.003625 to $0.022 per million. A single blended "about three times more" is wrong for almost every real workload, and it is wrong in the direction of the traffic you spent the most effort optimizing. The full table and the timezone mapping is its own piece from Friday; what belongs here is the shape. One model, one published price list, two prices, selected by the wall clock at the moment the request arrives.
The calendar
Google's pricing page for Gemini 3.7 Flash does not list a price. It lists a price and an expiry. Input reads "$0.75 through December 31, 2026. $1.50 starting January 1, 2027." Output reads "$3.75 through December 31, 2026. $7.50 starting January 1, 2027." The same date sits on the batch lines and on the cached-input line, which is currently $0.075 per million.
A doubling of every rate on the model is already published, in writing, 138 days from today. That is not a forecast or a rumor about vendor margins. It is the vendor's own rate card, and it means anyone sizing Gemini Flash volume for next year against today's number is modelling against a rate Google has already announced it will stop offering. The decision that follows is not "switch now"; it is to put January 1 in the same place you keep contract renewals, and re-run the model comparison in December when the competing rates for that quarter are actually known.
Two fields in your request
Anthropic lists Claude Opus 5 at $5 per million input tokens and $25 output. It separately lists a fast mode, in research preview, at $10 and $50 for the same model. It separately again documents a data-residency multiplier of 1.1x that applies to every token category when inference_geo is pinned to "us", and prompt-caching multipliers of 1.25x for a five-minute cache write, 2x for a one-hour cache write, and 0.1x for a cache read.
The documentation is explicit that these compose. Caching multipliers "apply on top of fast mode pricing," and so do data-residency multipliers. Anthropic publishes the fast-mode row and the multiplier rules in different sections of the page, so the combined figures below are arithmetic rather than a published table. For Claude Opus 5, per million tokens:
| Token category | Default path | speed: "fast" + inference_geo: "us" |
|---|---|---|
| Base input | $5.00 | $11.00 |
| 1-hour cache write | $10.00 | $22.00 |
| Cache read | $0.50 | $1.10 |
| Output | $25.00 | $55.00 |
Same model, same weights, same second. The spread is 2.2x, and it is set by two fields in a request body. Both of those fields get flipped for reasons that have nothing to do with cost: speed for a latency target on an interactive surface, inference_geo for a data-residency commitment in a customer contract. A platform engineer can satisfy either requirement in an afternoon without anyone reopening a spreadsheet, and the token cost of the affected traffic more than doubles with no model change to point at during the postmortem.
OpenAI is approaching the same condition from the other end. Its Ultrafast tier for GPT-5.6 Sol, previewed on August 13 and running on Cerebras hardware at up to 750 output tokens per second, is explicitly the same model at a different speed. Access is limited to a small group of customers and no rate has been published, so there is nothing to price yet. The direction is what registers: latency is becoming a billable axis rather than a property of the model you picked.
The endpoint you route through
The quietest of the four, and the oldest. On both Amazon Bedrock and Google Cloud, regional and multi-region endpoints for Claude Sonnet 4.5, Haiku 4.5, Opus 4.5 and every model after them carry a 10% premium over global endpoints. The Claude API is global by default. So a team that moved to a regional endpoint for a procurement checkbox is paying a documented surcharge on identical inference, decided by routing configuration rather than by anything in the model catalogue.
The modifiers do not all compose
Before building anything on top of this, read the composition rules rather than assuming them, because they are not symmetric. The Batch API is a 50% discount on input and output, and fast mode is not available with the Batch API at all, so those two cannot be combined. Caching and residency multipliers do stack on fast mode. On DeepSeek the peak factor applies per token category, not as one number across the model. On Gemini Flash the December 31 date applies to the batch and cached-input lines as well as the standard ones.
Which modifiers multiply, which are mutually exclusive, and which apply per token category is provider-specific, written down, and rarely mentioned in launch coverage. It is a fifteen-minute read per provider and it is the difference between a cost model that predicts an invoice and one that explains it afterwards.
What a cost row has to carry
The practical consequence is that a cost model keyed on the model name has stopped being able to represent reality. A row that says claude-opus-5: $5 input is not wrong so much as underspecified, and the same is now true of a row for deepseek-v4-pro or gemini-3.7-flash.
The key that does work is four parts: model, token category, condition, and the window the rate is valid in. Cache-hit input on V4-Pro during off-peak hours is a different row from cache-hit input during peak hours. Base input on Opus 5 through a US-pinned fast-mode deployment is a different row from base input on the default path. Add one more column that most cost models do not have, which is the next known change date, and populate it today with what the vendors have already published:
- August 16, 16:00 UTC. DeepSeek peak and off-peak billing begins. This is live by the time most people read this.
- January 1, 2027. Every Gemini 3.7 Flash rate line doubles.
- September 1, 2026. The Claude Sonnet 5 increase to $3/$15, which was on this list until last week and has now been removed. See below.
Pulling your actual token mix and multiplying each category by its own factor is the calculation that makes any of this concrete, and it is a five-minute job in any provider dashboard. Friday's DeepSeek piece walks through it, and the older post on silent cache misses covers why the cache-hit line in that mix is often smaller than teams assume, which now matters more than it did when cache hits were nearly free.
The direction is not uniformly up
On August 10, Anthropic edited its pricing documentation to say: "The $2/$10 per million input/output token pricing for Claude Sonnet 5, announced at launch as introductory pricing through August 31, 2026, is now the standard price. The previously scheduled increase to $3/$15 per million input/output tokens on September 1, 2026 will not occur."
That is a dated price line, present in every Sonnet 5 cost model built since June 30, deleted with three weeks left to run. A 50% step that teams had budgeted for September is not happening. Anyone who migrated workloads off Sonnet 5 specifically to avoid it moved for a reason that no longer exists, and anyone who provisioned September budget around it now has room they did not plan for.
This is the reason the discipline here is tracking rather than bracing. "Prices are going up" is a mood, and it is contradicted by one of the four vendors in the same week. What is consistently true is narrower and more useful: rate cards have acquired conditions and dates, vendors change both on their own schedule with public notice, and the notice lands in a documentation footnote rather than in your inbox.
Where this lands
If you run DeepSeek in production, the only time-sensitive item on this page is already live. Moving schedulable work — evaluations, backfills, indexing, nightly batch — out of 01:00–04:00 and 06:00–10:00 UTC is a cron change, not a rebuild, and the full breakdown has the timezone arithmetic.
If you run Gemini Flash for volume, nothing changes today and something specific changes on January 1. Put it on a calendar with an owner, and treat the December re-comparison as scheduled work rather than a fire drill.
If you run a platform team on Claude, the useful hour this week is an audit of which deployments set speed or inference_geo or route through a regional endpoint, and what each of those flags costs at your actual volume. None of them appear as a model change in any dashboard.
And if you maintain the cost model itself, the smallest durable improvement is the column. One date per rate line, sourced from the vendor's own page, re-checked on a schedule. Every vendor in this piece published the change before it took effect. The gap that costs money is not disclosure. It is that a spreadsheet cell holds a number and nothing about when that number expires.
Get the next post when it ships
One email on Sunday with the new post and a short list of what shipped that week — new guides, tool updates, and a couple of links worth reading.