Prompt caching is sold the same way by everyone: store the part of your prompt that does not change, pay a fraction to read it back, save money. All three major providers even landed on the same headline number — a cache read costs a tenth of normal input.

But two of them charge you once to put something in the cache, and one charges you rent for as long as it sits there. That difference decides whether caching pays off after two requests or never pays off at all, and it is not visible in the per-token prices anyone compares.

The arithmetic, both ways

Set the normal input price at 1. Call the cache-write multiplier W and the cache-read multiplier R. Make one write and then N−1 reads over the same cached text.

Caching costs W + (N−1)R. Not caching costs N. Caching wins when:

N > (W − R) / (1 − R)

That is a count. Cross it and every subsequent request is pure saving, for as long as the cache lives.

Provider and modeWriteReadPays off from
OpenAI GPT-5.6, every tier1.25×0.10×the 2nd request
Anthropic, 5-minute cache1.25×0.10×the 2nd request
Anthropic, 1-hour cache2.00×0.10×the 3rd request

Those multipliers hold across every OpenAI row we checked — Sol, Terra and Luna, short context and long, standard and batch. The ratio is identical each time. This is useful to know, because it means the caching decision is the same regardless of which model or context band you choose.

Google charges rent instead

Gemini bills cached content per hour of storage, whether or not anybody reads it. So the question stops being how many times you read and becomes how often.

Saving per read is the input price minus the read price. Cost per idle hour is the storage price. The threshold is:

reads per hour > storage / (input − read)

That is a rate, and it has to be sustained. Fall below it and the cache quietly costs more than it saves, for as long as you leave it there.

ModelInput − readStorage/hrBreak-even
Gemini 3.8 / 3.7 / 3.6 Flash0.6750.500.74 reads/hour
Gemini 3.5 Flash1.351.000.74 reads/hour
Gemini 3.5 Flash-Lite0.271.003.70 reads/hour

About three reads every four hours on the Flash line. That is a low bar for anything with users on it and an impossible one for a nightly job.

⚠️ Flash-Lite is five times harder to justify caching. Its storage price is the same as Flash's, but its token prices are a fifth of the cost. Cheap tokens mean a small saving per read, and the rent does not shrink to match. The cheapest model to run is the most expensive one to leave cached — which is the opposite of what anyone assumes when picking it.

The overnight case, which is where this bites

Picture a support assistant with a large fixed instruction block. During the day it is busy and caching is obviously right everywhere.

At 18:00 the traffic stops. On OpenAI or Anthropic nothing further happens: the write was paid for once, the cache expires on its own, and the overnight silence costs nothing. On Gemini the meter runs until the cache expires, and every hour below 0.74 reads is a small loss you will not see itemised as one.

The behaviour that saves money on two providers loses it on the third, and no per-token comparison shows this, because it is not a per-token effect.

The Flash discount does not move the threshold

Gemini 3.8, 3.7 and 3.6 Flash are on introductory pricing until 31 December 2026 — input at $0.75 rather than $1.50 — and the rates revert on 1 January 2027.

The break-even of 0.74 reads per hour does not change. On that date, storage and token prices both double, so the ratio stays fixed. Worth knowing because it is the natural thing to worry about and it turns out not to matter. What changes on 1 January is your bill, not your caching decision.

The other cache clock

OpenAI's cached content on GPT-5.6 has a maximum time to live of 30 minutes, which is also the default. There is no longer option.

Anthropic offers two, and this is where the count moves: the 5-minute cache pays off from the second request, the 1-hour cache from the third, because its write premium is 2× rather than 1.25×. If your traffic is bursty enough that a five-minute window keeps expiring between requests, the longer cache has a different break-even. It needs a third request to justify its higher write premium.

Anthropic's own documentation says caching pays off "after one cache read" for the five-minute cache. That is the same event as our "second request" seen from the other end — the write, then one read. The two statements agree.

What to do with this

On OpenAI and Anthropic, cache anything you will send more than once inside the window. The threshold is two requests, and there is no ongoing cost to being wrong.

On Gemini, ask how often the cache will be read, not how many times. If the answer is "steadily, all day", cache it. If it is "in bursts, with long gaps", the rent between bursts is the whole calculation. And check which model you are on before assuming the Flash number applies — Flash-Lite needs five times the traffic.

Our LLM cost calculator and price comparison both work from published rate cards and stamp the date theirs was compiled. Neither models cache economics. The arithmetic above is simple enough to do on paper, and the input it needs is your own read pattern, which no calculator has. If you want to know how much of your prompt is actually the fixed prefix worth caching, the token counter will tell you.

Where this comes from, and what will date it

Every multiplier was read from the providers' own current pricing pages on 3 September 2026 and derived from the printed per-token figures rather than taken from any published guidance. The OpenAI ratios were checked across five separate rows and are identical in each. The Anthropic multipliers reproduce that vendor's own stated advice about when caching pays off, which is a check on our model rather than a coincidence.

⚠️ Our arithmetic rests on one unverified assumption: that Google has no separate cache-write fee, and you pay for storage and reads only. Neither Google's pricing page nor its caching documentation states a write charge, but neither states its absence either. If one exists, the break-even rate rises. We are naming this rather than letting the absence of a line item read as a checked fact.

We also do not claim to know whether Gemini's implicit caching escapes storage charges; the documentation we found is silent on it, so we do not say it is free. Nor did we check the partner platforms — Vertex, Bedrock, Foundry — which set their own prices.

This dates whenever a provider changes a multiplier, and the introductory Gemini rates change on 1 January 2027 by announcement. The structural point survives any price change. A one-off premium gives you a break-even count; rent gives you a break-even rate.