Prompt caching explained: how it cuts LLM API bills

Prompt caching bills the repeated start of a prompt at a fraction of the input price: a tenth on Claude, and as little as a few percent on some other models.

· Zurelay guides · Prices update live

How it works

A model reads a prompt from the start. When a new request begins with the same tokens as a recent one, the provider can reuse that work instead of redoing it, and it bills those tokens at a lower cached price. Only the matching start counts: one changed token and everything after it is new input again.

Agents, chat apps and document Q&A send the same instructions, tool definitions and documents again and again, so for them the cached price matters more than the input price.

What cached tokens cost

ModelInput / 1MCached / 1MCached share
Claude Opus 5.5$1.40$0.1410%
Claude Sonnet 5.5$0.90$0.0910%
GPT-6 Astra$2.50$0.2510%
GPT-6 Sol$0.50$0.0510%
Gemini 3.1 Pro$0.80$0.0810%
Gemini 3.8 Flash$0.32$0.03210%
DeepSeek V4.1 Flash$0.03$0.000742.5%
Qwen 3.8 Max$1.20$0.1512.5%

Prices on Zurelay, live. Each model's page has its full price list.

Claude caches what you mark

Claude caches the blocks you mark with cache_control, for five minutes, or an hour with "ttl": "1h". Writing to the cache costs 1.25 times the input price for five minutes and 2 times for an hour; reading it back costs a tenth. Claude Code marks its prompts for you. Most other models cache a repeated start on their own.

How to hit the cache

  • Put what never changes first: instructions, tool definitions, reference documents. Then the conversation, then the new question.
  • Keep that start byte-for-byte the same. A timestamp, a request ID or a reordered tool list at the top makes every request a miss.
  • Send follow-ups soon. Caches expire after minutes, so a burst of requests hits and a request an hour later starts over (unless you asked Claude for an hour).

Check that it worked

The usage in each response says how much came from the cache: usage.prompt_tokens_details.cached_tokens on Chat Completions, and cache_read_input_tokens and cache_creation_input_tokens on Anthropic's Messages API. If the cached count stays at zero on repeated requests, something at the start of the prompt is changing.

To see what caching does to a whole month, set the cached share in the LLM cost calculator.

Every model on one OpenAI-compatible key, below list price. Credit from $10, no subscription.Get your API key

Stop paying list price.
Start saving today.

Create a key in seconds, point the SDK you already use at Zurelay, and every request costs up to 90% less from the first token.