OverpayingForAIPrijsbureau
8 min read·Laatst gecontroleerd op nauwkeurigheid · 2026-10-27·Prijzen geverifieerd · 2026-11-05

Prompt Caching Kosten voor AI Agents: Anthropic, OpenAI, Gemini

Hoe prompt caching wordt geprijsd op de Claude, OpenAI en Gemini API's, wat in het cached prefix moet worden geplaatst, en een uitgewerkte 12-stappen agent-run die de besparing toont met de berekening uitgeschreven.

De artikeltekst bevat de controledatum. De onderstaande tarieventabel wordt bij elke implementatie opnieuw opgebouwd uit de live catalogus.

Snelste winst

Cached input reads kosten ongeveer 10% van het lijst inputtarief bij Anthropic en OpenAI (ongeveer 25% bij Gemini). Omdat een agent zijn hele context op elke stap opnieuw verzendt, verlaagt die ene korting de inputrekening van een 12-stappen Claude Sonnet 5 run van $0.35 naar ongeveer $0.09. Plaats de system prompt en tool definities eerst, houd ze byte-stabiel en controleer of `cache_read_input_tokens` niet nul is voordat je iets anders optimaliseert.

Wat prompt caching bespaart op een agent-lus

Een 12-stappen agent-run op Claude Sonnet 5 kost ongeveer $0.39 zonder caching en ongeveer $0.14 met caching. Op GPT-5.4 kost dezelfde run ongeveer $0.50 ongecached en ongeveer $0.17 gecached. De reden is simpel: een agent verzendt zijn hele context op elke stap opnieuw, en cached input reads worden gefactureerd tegen ongeveer 10% van het lijst inputtarief bij Anthropic en OpenAI, ongeveer 25% bij Gemini. Caching doet niets voor output tokens.

Die getallen gebruiken een realistische trace: een prefix van 4,000 tokens (system prompt plus tool definities), een taak van 500 tokens, en twaalf stappen waarbij elke stap een tool call van 300 tokens retourneert en een tool resultaat van 1,500 tokens terugkrijgt. De volledige berekening staat hieronder.

Waarom agents de perfecte caching-workload zijn

Elke stap in een tool-calling lus verzendt het hele gesprek tot nu toe: de system prompt, elk tool schema, de taak, elke eerdere tool call en elk eerder tool resultaat. Stap 1 verzendt 4,500 tokens. Stap 12 verzendt 4,500 + 11 × 1,800 = 24,300 tokens. Tel de twaalf stappen bij elkaar op en het model heeft 172,800 input tokens gelezen om slechts 4,800 output tokens te produceren.

Bijna al die 172,800 is herhaalde tekst. Het prefix is identiek bij elke aanroep en het gesprek groeit alleen aan het einde. Dat is precies de vorm waarvoor een prefix cache is gebouwd, daarom is het per-stap opnieuw verzenden dat agents duur maakt ook wat caching zo effectief maakt. De algemene vorm van agent-facturen wordt behandeld in [hoeveel kost het om een AI agent te laten draaien](/guides/how-much-does-an-ai-agent-cost-to-run); dit artikel gaat alleen over de cache.

Hoe de cache van elke leverancier werkt

LeverancierHoe u het inschakeltLeessnelheid (ongeveer)SchrijfsnelheidLevensduur
Anthropic (Claude)Expliciete cache_control: {\"type\": \"ephemeral\"} breakpoints op system, tools of message blocks; maximaal 4 per aanvraag~10% van lijstinvoer~125% van lijstinvoer bij de eerste schrijfactieStandaard 5 minuten, ververst bij elke hit; een optie van 1 uur tegen een hogere schrijfpremie
OpenAIAutomatische prefix matching op prompts boven de minimumgrootte; optionele prompt_cache_key om routering te sturen~10% van lijstinvoerGeen premieEnkele minuten inactiviteit, langer buiten piekuren (leverancier geeft geen getal)
Google GeminiExpliciet cache-object aangemaakt met client.caches.create en een TTL; sommige modellen cachen ook impliciet~25% van lijstinvoerGeen schrijfpremie, maar gecachte tokens worden per uur gefactureerd voor opslagElke TTL die u instelt; opslag blijft factureren totdat deze verloopt

Anthropic verwerkt de aanvraag in de volgorde tools, dan system, dan messages, en de cache is een strikte prefixovereenkomst. Een breakpoint cachet alles ervoor, dus één breakpoint op de laatste tooldefinitie en één op de system prompt dekt het stabiele deel. Voeg een derde toe op het laatste gebruikersbericht en elke stap leest ook de vorige conversatie uit de cache. De minimale cacheerbare prefix van Anthropic is modelafhankelijk (ongeveer 1.000 tokens of meer), dus korte prompts worden stilzwijgend niet gecachet. Zie de details per leverancier in [Claude agent API cost](/guides/claude-agent-api-cost), [OpenAI Agents API cost](/guides/openai-agents-api-cost) en [Gemini agent API cost](/guides/gemini-agent-api-cost).

Wat hoort in de gecachte prefix

Plaats de dingen die tijdens de uitvoering nooit veranderen vooraan, in een vaste volgorde:

  • De system prompt, zonder datum, gebruikersnaam of run-ID erin
  • Tooldefinities, deterministisch gesorteerd en nooit halverwege toegevoegd
  • Opgehaalde documenten, stijlgidsen of schema's die de agent elke stap raadpleegt
  • Few-shot voorbeelden

Zet alles wat varieert na het laatste breakpoint: de taak, de vraag van de gebruiker, per-aanvraag metadata. Bij Anthropic, als u een tijdstempel of run-ID in de context wilt, plaats het dan in het eerste gebruikersbericht in plaats van in de system prompt, zodat het na de gecachte prefix staat in plaats van erin.

Uitgewerkt voorbeeld: 12 stappen met en zonder caching

Zonder cache leest de run 172.800 invoertokens en schrijft 4.800 uitvoertokens. Met cache splitsen we de invoer in drie buckets. Nieuwe tokens worden één keer naar de cache geschreven: 4.500 bij stap 1 en 1.800 bij elk van de volgende elf stappen, in totaal 24.300. Al het andere, 148.500 tokens, is een cachelezing.

ModelZonder cache invoerZonder cache uitvoerTotaal zonder cacheTotaal met cacheBesparing
Claude Sonnet 5 ($2 / $10)172.800 × $2 = $0,3464.800 × $10 = $0,048$0,39424.300 × $2,50 + 148.500 × $0,20 + $0,048 = $0,13865%
GPT-5.4 ($2,50 / $15)172.800 × $2,50 = $0,4324.800 × $15 = $0,072$0,50424.300 × $2,50 + 148.500 × $0,25 + $0,072 = $0,17066%
Gemini 3.8 Flash ($0,75 / $3,75)172.800 × $0,75 = $0,1304.800 × $3,75 = $0,018$0,14824.300 × $0,75 + 148.500 × $0,19 + $0,018 = $0,064 plus cacheopslag~57%

Alle tarieven per miljoen; cachetarieven zijn de \"ongeveer 10% / 25%\"-regel toegepast op de lijst en de Anthropic-schrijfpremie is ongeveer 125%. De schrijfpremie is klein omdat elk token één keer wordt geschreven en tot elf keer wordt gelezen. Bij een run van 40 stappen stijgt de besparing naar meer dan 80%, omdat het aandeel van de invoer dat wordt herhaald met elke stap groeit. Probeer uw eigen trace in de [calculator](/calculator).

Snippets: Anthropic en OpenAI

Anthropic, expliciete breekpunten op de laatste tool en de system prompt, plus een op het laatste bericht zodat het gesprek uit de cache wordt gelezen:

from anthropic import Anthropic
client = Anthropic()
tools[-1]["cache_control"] = {"type": "ephemeral"}      # caches ook elke tool ervoor
messages[-1]["content"][-1]["cache_control"] = {"type": "ephemeral"}
resp = client.messages.create(
    model="claude-sonnet-5", max_tokens=2048,
    system=[{"type": "text", "text": SYSTEM_PROMPT,
             "cache_control": {"type": "ephemeral"}}],
    tools=tools, messages=messages,
)
u = resp.usage
# Sonnet 5 per 1M: input $2, write ~$2.50, read ~$0.20, output $10
cost = (u.input_tokens * 2 + u.cache_creation_input_tokens * 2.5
        + u.cache_read_input_tokens * 0.2 + u.output_tokens * 10) / 1_000_000

OpenAI, waar caching automatisch is en je het alleen verifieert:

from openai import OpenAI
client = OpenAI()
resp = client.responses.create(
    model="gpt-5.4", instructions=SYSTEM_PROMPT, tools=tools,
    input=conversation, prompt_cache_key="research-agent-v3",
)
u = resp.usage
cached = u.input_tokens_details.cached_tokens
# GPT-5.4 per 1M: input $2.50, cached read ~$0.25, output $15
cost = ((u.input_tokens - cached) * 2.5 + cached * 0.25
        + u.output_tokens * 15) / 1_000_000

Log cost per stap. Als de cached-waarde nul is bij stap 2, stop dan en zoek de ongeldigmaker voordat je iets langer uitvoert.

Fouten die de cache stilletjes breken

  • Een tijdstempel, datum of \"vandaag is\"-regel in de systeemprompt. Het verandert bij elke aanroep, dus het prefix komt nooit overeen.
  • Het wijzigen van de toolvolgorde of de toolset tussen stappen. Tools worden eerst weergegeven, dus een herordende tool maakt de systeemprompt en het hele gesprek erachter ongeldig.
  • Het serialiseren van toolschema's uit een dict met onstabiele sleutelvolgorde. Sorteer sleutels voordat je verzendt.
  • Een verzoek- of trace-ID in de systeemprompt. Plaats het in metadata of het eerste gebruikersbericht.
  • Bij Anthropic: het bewerken van een eerder bericht (bijvoorbeeld het inkorten van een oud toolresultaat) in plaats van toevoegen. De cache eindigt bij de eerste gewijzigde byte.
  • Het wisselen van modellen midden in een run. Caches zijn per model; een Haiku 5.5-worker kan geen Sonnet 5-cache lezen.
  • Bij Gemini: vergeten een expliciete cache te verwijderen. Opslag wordt per uur gefactureerd, of je het nu aanroept of niet.

Goedkoopste model dat dit nog steeds doet, en wanneer te betalen voor het vlaggenschip

Caching verandert niet welk model je moet gebruiken; het verandert hoeveel het dure model kost. Voor een goed gespecificeerde tool-lus voltooien Gemini 3.8 Flash voor $0,75 / $3,75 of DeepSeek V4.1 Flash voor $0,30 / $1,20 de 12-staps-run voor respectievelijk $0,15 en ongeveer $0,06 vóór enige caching. DeepSeek V4.1 Flash, API-naam deepseek-flash, heeft V4 Flash vervangen, dat door DeepSeek is stopgezet. DeepSeek-rijen gebruiken piektarieven; buiten piekuren kosten ze de helft. DeepSeek-prijzen gecontroleerd op 27-10-2026 op api-docs.deepseek.com. Zie [goedkoopste LLM voor AI-agenten](/guides/cheapest-llm-for-ai-agents) voor de betrouwbaarheidsafwegingen.

Betaal voor Claude Opus 5 ($5 / $25) of GPT-5.5 ($5 / $30) wanneer de lus planning, dubbelzinnige instructies of code die de eerste keer moet compileren omvat, omdat een herpoging op een goedkoop model de hele context opnieuw verzendt en meer kan kosten dan het in één keer goed doen. Met caching wordt de ongecachte 12-staps Opus-run van $0,98 ongeveer $0,35, wat minder is dan ongecachte Sonnet 5.

Hoe de uitgaven aan een gecachte loop te beperken

Caching verlaagt de helling, niet het plafond. Houd vier controles op elke agent:

  • max_tokens per aanroep, afgestemd op de langste legitieme toolaanroep, niet het maximum van het model
  • Een harde stapgrens per run; 12 tot 25 stappen dekt de meeste taken
  • Een stopconditie die het model kan bereiken, zoals een finish-tool, zodat het niet blijft herhalen met \"laat me nog één ding controleren\"
  • Een dollar budget per run, berekend op basis van de gebruikersvelden in de bovenstaande fragmenten, dat wordt afgebroken wanneer het lopende totaal het overschrijdt

Het artikel over [token budget guardrails](/guides/ai-agent-token-budget-guardrails) heeft een runner van 30 regels die de laatste uitvoert. Als je agent meerdere MCP-servers verbindt, lees dan [MCP server token cost](/guides/mcp-server-token-cost) hierna, omdat een grote toollijst het voorvoegsel is dat het meeste profiteert van caching en het meeste schade oploopt zonder.

Belangrijkste punten

  • →Cache-lezingen zijn ruwweg 10% van de lijstinvoer bij Anthropic en OpenAI, ruwweg 25% bij Gemini; Anthropic rekent ruwweg 125% van de lijst voor het schrijven
  • →Een 12-staps Sonnet 5 agentrun kost ongeveer $0,39 ongecacheerd en ongeveer $0,14 gecacheerd; op GPT-5.4 ongeveer $0,50 en $0,17
  • →Volgorde is tools, dan system, dan messages; alles wat verandert voor het breekpunt maakt alles erna ongeldig
  • →Tijdstempels, verzoek-ID's, herschikte tools en ongesorteerde JSON zijn de gebruikelijke stille cache-killers
  • →Anthropic's standaardcache leeft 5 minuten en wordt ververst bij elke hit; agentloops die sneller aanroepen blijven gratis warm
  • →Controleer met gebruikersvelden bij elke aanroep: cache_read_input_tokens (Anthropic) of input_tokens_details.cached_tokens (OpenAI)

Redactionele context

Voor wie is dit?

Ontwikkelaars die tool-calling agents draaien op de Claude, OpenAI of Gemini API's en elke stap een grote prefix opnieuw versturen.

Wanneer dit NIET te gebruiken

Eenmalige classificatie of chat met korte prompts; onder ongeveer 1.000 tokens prefix wordt er bij geen enkele aanbieder iets gecached.

Prijsinzichten

Cache reads zijn ongeveer 10% van de lijst bij Anthropic en OpenAI en ongeveer 25% bij Gemini. Bij een run van 12 stappen daalt de inputrekening met ongeveer driekwart.

Alternatieven om te overwegen

Batch API met ongeveer 50% korting voor niet-interactieve runs, kortere toolresultaten en minder verbonden tools verlagen allemaal dezelfde inputrekening.

Eindoordeel

Zet caching aan voordat je van model wisselt. Het is de grootste individuele besparing op een agent-loop en het kost niets als de prefix stabiel is.

Veelgestelde vragen

Hoeveel bespaart prompt caching op een AI-agent?

Bij een 12-staps agentrun met een voorvoegsel van 4.000 tokens en toolresultaten van 1.500 tokens, verlaagt caching Claude Sonnet 5 van ongeveer $0,39 naar ongeveer $0,14 en GPT-5.4 van ongeveer $0,50 naar ongeveer $0,17. De besparing is ruwweg 65% van de run, bijna allemaal op invoertokens. Langere runs besparen een hoger percentage omdat de opnieuw verzonden context elke stap groeit.

Wat rekent Anthropic voor een cache-schrijving?

Anthropic factureert de tokens die naar de cache worden geschreven tegen ruwweg 125% van het normale invoertarief, dus ongeveer $2,50 per miljoen op Claude Sonnet 5 tegen een lijstarief van $2. Lezingen zijn dan ruwweg 10% van de lijst, ongeveer $0,20 per miljoen. De schrijfpremie wordt terugverdiend bij de eerste cache-hit, dus het kost je alleen geld als het voorvoegsel eenmaal wordt gebruikt.

Heeft OpenAI prompt caching code-wijzigingen nodig?

Nee. De OpenAI API cached overeenkomende voorvoegsels automatisch zodra de prompt lang genoeg is om in aanmerking te komen, en de korting verschijnt in input_tokens_details.cached_tokens op het antwoord. Je kunt een prompt_cache_key doorgeven om herhaalde verzoeken naar dezelfde cache te leiden, maar de belangrijkste taak is het voorvoegsel byte-identiek houden tussen aanroepen.

Hoe wordt Gemini context caching gefactureerd?

Gemini heeft expliciete caches die je aanmaakt met een TTL, en gecachte tokens worden gelezen tegen ruwweg 25% van het lijstinvoertarief. In tegenstelling tot Anthropic en OpenAI factureert Google ook opslag voor de gecachte tokens per uur dat ze in leven blijven, dus een cache die je aanmaakt en vergeet blijft geld kosten. Controleer de leverancierspagina voor het huidige opslagtarief voordat je erop vertrouwt.

Waarom is mijn cache_read_input_tokens altijd nul?

Er verandert iets in de prefix tussen oproepen. De gebruikelijke oorzaken zijn een tijdstempel of datum in de system prompt, een request ID, tooldefinities die tussen stappen worden toegevoegd of herordend, en JSON die is geserialiseerd met een instabiele sleutelvolgorde. Vergelijk twee opeenvolgende verzoeken byte voor byte; het eerste verschil is waar je cache eindigt.

Moet ik de 1-uurs cache op Anthropic gebruiken?

Alleen wanneer oproepen meer dan vijf minuten uit elkaar liggen. De standaard TTL van 5 minuten wordt bij elke hit ververst, dus een drukke agent-loop houdt het warm zonder extra kosten. De 1-uurs optie heeft een hogere schrijfpremie, die verspild wordt als de volgende stap dertig seconden later arriveert.

Related

Gratis cursussen · geen registratie

Nog aan het twijfelen? Leer eerst de basis en kom daarna terug voor de prijzen.

Als onze rekenhulpen je hebben geholpen om verborgen AI-uitgaven te beperken, bedankt voor het gebruik ervan. Een klein deel van je besparing is wat onze prijsindexen dagelijks actueel houdt.

Weet u niet welke AI het goedkoopst is voor uw gebruik? In 30 seconden — zonder aanmelding.

AI-kosteninformatie

Stop met te veel betalen voor AI-tools

Schrijf je in voor de OverpayingForAI-lijst voor prijsupdates, goedkopere alternatieven en praktisch aankoopadvies.

Nu volgen we 50+ AI-tools, -modellen, -platforms, abonnementen, codeertools en automatiseringsproducten.

We gebruiken je e-mail alleen voor OverpayingForAI-updates. Je kunt je op elk moment afmelden.