# What is prompt caching? How Claude, GPT and Gemini bill it

> Prompt caching lets an AI API reuse the start of a prompt it has already processed, and bills those tokens at 5% to 10% of the normal input price.

URL: https://claudegpt.si/news/what-is-prompt-caching  
Published: 2026-11-06T18:59:40.890Z  
Author: ClaudeGPT Si Newsroom  
Section: Research  
Topics: Prompt caching, Claude, OpenAI, Gemini, API pricing  
Publisher: ClaudeGPT Si

## Key takeaways

- Prompt caching reuses the processed start of a prompt, so repeated requests are cheaper and faster, and the output does not change.
- As of November 6, 2026, cache reads cost about 5% to 10% of normal input on current Claude, OpenAI and Gemini models.
- The prefix must match exactly and be long enough: from 512 tokens on newer Claude models to 4,096 on Gemini 4 Argon.

What is prompt caching? It is a feature of AI APIs that lets the provider reuse the work it already did on the start of your prompt, so repeated requests with the same opening cost less and start faster. Anthropic, OpenAI and Google all offer it, and on all three a cached input token is billed at a fraction of the normal input price, as low as 5% to 10% on current models. Here is how each company charges for it, as of November 6, 2026.

## How prompt caching works

A language model has to process every input token before it writes the first word of its answer. Much of that work is the same from one request to the next: the same system prompt, the same tool definitions, the same long document, the same conversation so far. Prompt caching stores the intermediate result of that processing for a prefix of the prompt. [OpenAI's docs](https://developers.openai.com/api/docs/guides/prompt-caching) say it keeps key-value tensors, which are the model's internal state for those tokens, not the text itself.

When a new request begins with exactly the same prefix, the provider loads the stored state instead of recomputing it. That is a cache hit. It changes cost and latency, not the output.

The word "exactly" matters. OpenAI says reuse requires the entire rendered prefix to match. Anthropic's order is tools, then system prompt, then messages, and a change at one level invalidates that level and everything after it. So the rule for every provider is the same: put the stable content first and the part that changes on each request last.

## Prompt caching prices compared

Prices are per million tokens, from each company's pricing page and docs on November 6, 2026. They change often, so check the linked pages before you budget.

| | Anthropic Claude | OpenAI | Google Gemini |
| --- | --- | --- | --- |
| Turned on by | One `cache_control` field, or breakpoints you place | Default for supported models | Implicit caching is on by default for Gemini 2.5 and newer |
| Read price | 0.1x base input, 0.05x for Opus 5.5 and Sonnet 5.5, 0.025x for Fable 5.1 and Mythos 5.1 | 0.1x input, 0.05x for GPT-6.1 Sol and Terra (GPT-5.6 and later) | About 10% of input on most models |
| Write price | 1.25x for 5 minutes, 2x for 1 hour | 1.25x for 30 minutes, 2.5x for 12 hours (GPT-5.6 and later) | No separate write charge listed for implicit caching |
| Lifetime | 5 minutes, refreshed on each hit, or 1 hour | 30 minutes or 12 hours on GPT-5.6 and later | Not stated on the docs page we read |

### Anthropic Claude

[Claude's prompt caching docs](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) offer two ways in. Automatic caching is one top-level `cache_control` field, and the breakpoint moves to the last cacheable block as a conversation grows. Explicit breakpoints put `cache_control` on specific blocks, up to four per request.

The default lifetime is 5 minutes, refreshed at no cost every time the cache is hit. A 1-hour option costs more to write. Anthropic's own example for Claude Opus 5.5, with a base input price of $4 per million tokens: a 5-minute write costs $5, a 1-hour write $8 and a read $0.20. Cache multipliers stack with the Batch API discount.

Short prompts are processed without caching and without an error. The minimum is 512 tokens for the newest models, including Opus 5.5, Sonnet 5.5 and Haiku 5.5, 1,024 for Sonnet 5 and Sonnet 4.x, 2,048 for Opus 4.7 and 4,096 for Haiku 4.5 and Opus 4.5 and 4.6.

### OpenAI

[OpenAI](https://developers.openai.com/api/docs/guides/prompt-caching) turns caching on by default for supported models and says cached input is discounted by up to 95%. The minimum is 1,024 visible input tokens for GPT-5.6 and later. Cached tokens still count toward your tokens-per-minute rate limit.

On GPT-5.6 and later you can pick implicit mode, which places a breakpoint at the end of the latest eligible message, or explicit mode with `prompt_cache_breakpoint` markers, up to four writes per request. Writes cost 1.25x the input rate for a 30-minute lifetime and 2.5x for 12 hours. Older models differ: GPT-5.5 has no cache-write charge and keeps entries for 24 hours.

On [OpenAI's pricing page](https://developers.openai.com/api/docs/pricing), GPT-6.1 Sol is $2.00 input and $0.10 cached input, GPT-6.1 Terra is $1.00 and $0.05, and GPT-5.6 Sol is $4.00 and $0.40 (its promotional price runs until November 30, 2026).

Caches live on individual machines. OpenAI says traffic above about 15 requests per minute for one prefix can overflow to other machines, which lowers the hit rate. Before GPT-5.6, a stable `prompt_cache_key` helped route related requests to the same machine.

### Google Gemini

[Gemini's docs](https://aistudio.google.com/docs/caching) describe implicit caching, on by default for Gemini 2.5 and newer models. You configure nothing, and Google says it passes on the savings when a request hits the cache. The minimum is 4,096 input tokens on Gemini 4 Argon and the 3.x models listed, and 2,048 on Gemini 2.5 Flash and Pro. Explicit caching, where you create and manage cache objects yourself, works on supported Gemini 3 and 2.5 models through the generateContent API, not in the Interactions API or on Gemini 4 Argon and later.

On [Google's pricing page](https://aistudio.google.com/docs/pricing), Gemini 4 Argon is $2.00 input and $0.10 cached, Gemini 3.1 Pro Preview is $2.00 and $0.20 up to 200k tokens, and Gemini 3.8 Flash is $0.75 and $0.075. For models with explicit caching, the page also lists a storage fee per million tokens per hour, $0.50 for Gemini 3.8 Flash and $4.50 for Gemini 3.1 Pro Preview. Google's page lists higher prices for Gemini 4 Argon from December 1, 2026 and Gemini 3.8 Flash from January 1, 2027, cached rates included.

## When prompt caching pays off

Caching helps when many requests share a long, stable start. Typical cases:

- Chat assistants and agents that resend the whole conversation and a long tool list on every turn.
- Questions about one large document, codebase or knowledge base.

On Claude, you pay a premium to write, so a prefix that is used only once costs more with caching than without. At 1.25x for a write and 0.1x for a read, a 5-minute cache has paid for itself by the second request.

## Why you might not get cache hits

- **The prompt is too short.** Below the minimum, nothing is cached, and no error tells you.
- **Something changes early in the prefix.** Anthropic's docs warn that timestamps or per-request content in the cached part give every request a new hash, so there are no hits. Editing tool definitions invalidates every cache level.
- **You sent parallel requests too soon.** On Claude, an entry is available only after the first response starts, so send one request and wait before you fan out.

## How to check that caching works

Each provider reports it in the response. On Claude, `cache_creation_input_tokens` counts tokens written, `cache_read_input_tokens` counts tokens read, and `input_tokens` counts what came after the last breakpoint. If both cache fields are 0, the prompt was not cached, usually because it was too short. OpenAI reports a cached-token count in usage. Gemini reports it in `usage.total_cached_tokens`, according to its docs.

For the current price of every major model side by side, see our [AI API pricing page](https://claudegpt.si/news/ai-api-pricing).

## Frequently asked questions

### Does prompt caching change the model's answer?

No. Anthropic says caching does not change output tokens. It only lets the provider skip reprocessing the repeated start of the prompt.

### How long does a prompt cache last?

On Claude the default is 5 minutes, refreshed on every hit, with a 1-hour option. On OpenAI's GPT-5.6 and later it is 30 minutes or 12 hours, and on GPT-5.5 it is 24 hours.

### How much does prompt caching save?

Cache reads are billed at 0.1x the input price on most Claude and OpenAI models and 0.05x on some, and at about 10% on most Gemini models. OpenAI says up to 95% off. Claude charges 1.25x to write a 5-minute cache.

### Why am I not getting cache hits?

The prompt may be under the minimum length, or something in the prefix changes on each request, such as a timestamp. On Claude, parallel requests sent before the first response starts also miss.

## Sources

- [Prompt caching](https://platform.claude.com/docs/en/build-with-claude/prompt-caching), Anthropic
- [Prompt caching](https://developers.openai.com/api/docs/guides/prompt-caching), OpenAI
- [API pricing](https://developers.openai.com/api/docs/pricing), OpenAI
- [Caching](https://aistudio.google.com/docs/caching), Google
- [Gemini API pricing](https://aistudio.google.com/docs/pricing), Google
