Get alerts
AiGanak
Scope a project
Cost engineering

How prompt caching works on OpenAI, Anthropic and Gemini, and how much it saves

Key takeaways
  • Prompt caching bills the repeated start of a prompt at 2.5% to 10% of the normal input rate, depending on the model. On a request with a 20,000-token fixed prompt, it cut the cost per request by 80% to 87% in our worked example on every model we priced.
  • Writing to the cache costs extra on OpenAI and Anthropic: 1.25 times the input rate for the short lifetime (30 minutes on OpenAI's GPT-5.6 and later, 5 minutes on Anthropic), 2.5 times for 12 hours on OpenAI and 2 times for 1 hour on Anthropic. Google's implicit caching has no write charge.
  • OpenAI and Google cache automatically. Anthropic caches only when the request asks for it, with a single setting.
  • Prompts must be long enough to cache: 1,024 tokens on OpenAI GPT-5.6 and later, 512 on current Claude models, 4,096 on current Gemini models.

Most LLM applications send the same long block of text with every request: the system prompt, tool definitions, reference documents, the conversation so far. Without caching, you pay the full input rate for those tokens every time. With prompt caching, the provider keeps the processed start of your prompt for a while and bills it at a fraction of the rate when the next request begins the same way. For many teams it is the largest single saving available, and it does not change the model's answers. This guide explains how OpenAI, Anthropic and Google price and run caching today, with a worked example. All prices are list prices in US dollars per million tokens on the standard pay-as-you-go tier, checked on each provider's own pages on 28 October 2026.

What prompt caching is

A cache hit happens when a new request starts with exactly the same tokens as a recent one. The matching part, called the prefix, is billed as cached input; everything after the first difference is billed as normal input. Three numbers decide what you pay:

  • Cache read price: what a cached input token costs, between 2.5% and 10% of the normal input rate on current models.
  • Cache write price: what it costs to put a prefix into the cache. OpenAI and Anthropic charge more than the normal input rate for this; Google's automatic caching does not charge for writes.
  • Lifetime: how long an unused cache entry is kept. If your next request arrives after it expires, you pay the write again.

Caching only applies to the start of the prompt. A single changed character near the top, such as a timestamp or a user name, means nothing after it can be read from the cache.

Cache prices by model

Per 1M tokensInputCache readRead as % of inputCache write (short)Cache write (long)
GPT-6 Astra$10.00$1.0010%$12.50 (30 min)$25 (12 h)
GPT-6.1 Sol$2.00$0.105%$2.50 (30 min)$5 (12 h)
GPT-6.1 Terra$1.00$0.055%$1.25 (30 min)$2.50 (12 h)
GPT-6 Luna$0.10$0.0110%$0.125 (30 min)$0.25 (12 h)
Claude Fable 5.1$10.00$0.252.5%$12.50 (5 min)$20 (1 h)
Claude Opus 5.5$4.00$0.205%$5 (5 min)$8 (1 h)
Claude Sonnet 5.5$2.00$0.105%$2.50 (5 min)$4 (1 h)
Claude Haiku 5.5 (prompts up to 100K)$0.10$0.0110%$0.125 (5 min)$0.20 (1 h)
Gemini 4 Argon$2.00$0.105%none (implicit only)not offered
Gemini 3.8 Flash$0.75$0.07510%none (implicit)explicit cache: storage $0.50 per 1M tokens per hour

Google has announced price rises: Gemini 4 Argon's input and cache read prices double on 1 December 2026 (to $4 and $0.20), and Gemini 3.8 Flash's double on 1 January 2027 (to $1.50 and $0.15), with explicit cache storage rising to $1.00 per million tokens per hour. Our Gemini price increase guide covers the details. Every model's full price list is in the pricing calculator.

How each provider caches

OpenAI

OpenAI states that prompt caching is enabled by default on supported models, so you get cache reads without changing anything. On GPT-5.6 and later models the minimum cacheable prefix is 1,024 tokens. You choose the lifetime per request: 30 minutes by default, with writes at 1.25 times the input rate, or 12 hours at 2.5 times. OpenAI notes these are the total write rates, not a surcharge on top of normal input, and that read prices are the same for both lifetimes. You can also mark exactly where the cacheable part ends, so the part of the prompt that changes on every request is not written to the cache. Caches are not shared between organisations or across processing regions.

Anthropic

Claude models cache only when the request asks for it, either with one setting that caches automatically as a conversation grows, or by marking up to four points in the prompt. The default lifetime is 5 minutes, and Anthropic refreshes it at no cost each time the cached content is used. A 1-hour lifetime costs 2 times the input rate to write. Current models (Fable 5.1, Opus 5.5, Sonnet 5.5, Haiku 5.5) cache prompts from 512 tokens; Claude Haiku 4.5 needs 4,096. A request below the minimum is simply processed without caching, with no error. Anthropic's discounts stack: cache prices combine with the half-price Message Batches discount, though cache hits inside a batch are best-effort.

Google Gemini

Google's implicit caching is on by default for Gemini 2.5 and newer models, with no setup and no write charge; Google passes on the saving when a request hits the cache. The minimum is 4,096 tokens for Gemini 4 Argon, 3.8 Flash, 3.6 Flash and 3.1 Pro (preview). Gemini 4 Argon supports implicit caching only. On supported Gemini 3 and 2.5 models you can also create an explicit cache, which guarantees the reuse but adds an hourly storage charge, $0.50 per million tokens per hour on 3.8 Flash until 31 December 2026. For multi-turn conversations and agent loops on Gemini 4, Google caches the full previous request only if the new request adds at least 2,050 tokens; most agent turns do.

Worked example: what it saves

A support assistant sends a 20,000-token fixed prompt (instructions, tool definitions and help-centre articles), then a 500-token customer question, and gets a 400-token answer. It handles 100,000 requests a month. Below is the monthly cost without caching and with the fixed prompt read from cache on every request. The token counts are an illustration, not a measurement, and cache writes are left out here; the next section prices them.

100,000 requests a monthNo cachingFixed prompt cachedSaving
Claude Fable 5.1$22,500$3,00087%
GPT-6 Astra$22,500$4,50080%
Claude Opus 5.5$9,000$1,40084%
GPT-6.1 Sol or Claude Sonnet 5.5$4,500$70084%
Gemini 3.8 Flash (until 31 Dec 2026)$1,687.50$337.5080%
GPT-6 Luna or Claude Haiku 5.5$225$4580%

Two things stand out. First, caching changes the ranking: GPT-6 Astra and Claude Fable 5.1 list at the same rates, but with a large cached prompt Fable 5.1 costs a third less, because its cache read is $0.25 against $1.00. Second, the saving depends on how much of each request is fixed. If your fixed part is 2,000 tokens rather than 20,000, the saving is much smaller, and below the provider's minimum there is none.

When cache writes cost you money

On OpenAI and Anthropic, a write costs more than sending the same tokens uncached, so a cache entry has to be read before it pays off. With the short lifetime (1.25 times input to write, 10% or less to read), one reuse is enough. With the long lifetimes (2 times on Anthropic, 2.5 times on OpenAI), it takes two reuses.

The risk is traffic with gaps. Using the example above on Claude Sonnet 5.5: a cache write of the 20,000-token prompt costs $0.05, against $0.041 for sending the whole 20,500-token prompt uncached. If requests arrive every 10 minutes, the 5-minute cache expires between them, every request pays the write, and caching makes the bill about 22% higher instead of lower. In that case the 1-hour cache, or OpenAI's 30-minute default, is the cheaper choice. With steady traffic the 5-minute cache is refreshed for free on every hit, and writes become a small share of the bill: rewriting the cache once every 100 requests adds about $50 a month to the $700 above.

On Gemini, implicit caching has no write charge, so it can only lower the bill. An explicit cache does cost storage: keeping a 20,000-token cache on Gemini 3.8 Flash for a full 30-day month costs about $7.20 at the current rate, worth it only if the cache is read often.

How to get more cache hits

  1. Put fixed content first. Instructions, tool definitions and reference documents go at the start; the user's question and anything that changes go last.
  2. Remove changing details from the top. Dates, request IDs and user names near the start of the prompt break the match for everything after them.
  3. Keep tool definitions stable. Changing their order or wording between requests counts as a different prefix.
  4. Get above the minimum. If your fixed prompt is just under the provider's minimum, Anthropic notes that expanding it to reach the threshold is often worthwhile.
  5. Match the lifetime to your traffic. Steady traffic suits the short lifetime; requests spread over hours suit the long one.
  6. Mark where the cache should end. On Anthropic and on OpenAI's newer models you can stop the cache before the part that changes, so you do not pay to write tokens that will never be read.

How to check your own cache rate

Every provider reports cached tokens on each response and in its usage data: OpenAI as cached and cache-write tokens, Anthropic as cache creation and cache read tokens, and Google as cached tokens. If cached tokens are a small share of your input while your prompts share a long fixed start, caching is probably the cheapest saving you have not taken yet. The free Bill Analyzer reads your usage export and shows the cached share of your input, along with an estimate of what more caching would save. To price your own volumes with caching on every current model, use the API pricing calculator. If you want your real requests checked for cache breaks and priced across OpenAI, Anthropic and Google with a ranked plan, that is what the LLM Cost Report delivers.

Sources

  1. OpenAI: Prompt caching guide (checked 28 October 2026)
  2. OpenAI: Compare models (checked 28 October 2026)
  3. Anthropic: Prompt caching (checked 28 October 2026)
  4. Anthropic: Claude API pricing (checked 28 October 2026)
  5. Google: Gemini API context caching (checked 28 October 2026)
  6. Google: Gemini API pricing (checked 28 October 2026)

Provider prices and limits change often. Figures were checked on 28 October 2026; confirm current terms with each provider before you rely on them.

Free price alerts

Get an email when an LLM price changes

OpenAI, Anthropic and Google change API prices with little notice. We check their pricing pages every week and email you the old price, the new price and the date. Free, a few emails a month at most.

We send a confirmation email first. Unsubscribe in one click. Privacy.

FAQ

Questions about this topic

Can't find it? Press ⌘K and ask.

How much does prompt caching save?

Cached input tokens cost between 2.5% and 10% of the normal input rate on current OpenAI, Anthropic and Gemini models (prices checked 28 October 2026). In a worked example with a 20,000-token fixed prompt, a 500-token question and a 400-token answer, caching the fixed prompt cut the cost per request by 80% to 87%, depending on the model. The saving is smaller when less of each prompt repeats.

Do cache writes cost extra?

On OpenAI and Anthropic, yes. The short lifetime costs 1.25 times the input rate to write (30 minutes on OpenAI GPT-5.6 and later, 5 minutes on Anthropic). Longer lifetimes cost 2.5 times on OpenAI (12 hours) and 2 times on Anthropic (1 hour). Google's implicit caching has no write charge; explicit Gemini caches are billed for storage per hour.

Is prompt caching automatic?

OpenAI enables prompt caching by default on supported models, and Google's implicit caching is on by default for Gemini 2.5 and newer. Anthropic caches only when the request asks for it, either with one automatic caching setting or with up to four cache points. Each provider has a minimum prompt length: 1,024 tokens on OpenAI GPT-5.6 and later, 512 on current Claude models and 4,096 on current Gemini models.

How much of your bill could caching remove?

Upload your usage export to the free Bill Analyzer. It shows the cached share of your input and estimates the saving from caching more of your input.