· CostMyTokens · Guides · 2 min read

Prompt caching: the quiet 90% discount hiding in your agent workloads

Cached input tokens cost a tenth — or a twentieth — of fresh input on the major APIs. For prompt-heavy agents, that is the difference between a viable product and a bonfire.

If your application sends the same long system prompt, tool definitions or reference documents with every request, you are probably paying full price to re-read them thousands of times. Prompt caching exists precisely for this: the provider keeps the processed prefix, and reads from cache are billed at a steep discount.

How big is the discount?

Current official rates, verified October 2026:

ModelFresh input / 1MCached input / 1MSaving
GPT-6.1 Sol$2.00$0.1095%
GPT-6 Astra$10.00$1.0090%
Claude Sonnet 5.5$2.00$0.1095%
Claude Haiku 5.5$0.10$0.0190%
Gemini 4 Argon$2.00$0.1095%

Two things to notice. First, the discount is roughly an order of magnitude everywhere — this is not a marginal optimization. Second, not every model publishes a cached rate; where our sources show none, our model pages say “Not published” rather than guessing.

A worked example: the agent loop

Consider an agent that re-reads a 100,000-token context on every call, adds 10,000 fresh input tokens, and produces 2,000 output tokens, 500 times a month, on Claude Sonnet 5.5:

  • With caching: (10,000 × $2 + 100,000 × $0.10 + 2,000 × $10) ÷ 1M = $0.05 per call → $25/month
  • Without caching (all input at full rate): (110,000 × $2 + 2,000 × $10) ÷ 1M = $0.24 per call → $120/month

Same model, same output, 79% cheaper. For caching-heavy workloads, the cached rate — not the headline input rate — is the number that decides which model wins, and it is the number most comparison tables leave out.

Where caching does not save you

  • Short, unique prompts. If nothing repeats, there is nothing to cache. Chat workloads with small prompts gain little.
  • Cache writes and lifetimes. Providers differ on whether writing to cache costs extra and how long entries live (Gemini 4 Argon’s caching is implicit, triggered automatically from 4,096 tokens). A prefix that expires between calls earns nothing.
  • Volatile prefixes. One changing token near the start — a timestamp in the system prompt is the classic — can invalidate everything after it. Put stable content first, volatile content last.

How to use this in planning

Estimate your cached share honestly: it is the fraction of input tokens that are byte-identical across calls within the cache lifetime. Then price your workload with that split in the calculator — every model page shows its cached rate alongside the standard one, with the date it was verified.

Share:
Back to Blog

Related Posts

View All Posts »