Waarom zijn Claude API kosten zo hoog? De token berekening
Ontdek waarom Claude API kosten snel oplopen. Output tokens zijn vijf keer duurder en de volledige context wordt bij elke beurt opnieuw gefactureerd. Bekijk de rekenmethode.
Waarom is Claude duur? Het korte antwoord
Claude is duur vanwege vier factoren die elkaar versterken. Output-tokens zijn vijf keer zo duur als input-tokens. De API onthoudt niets van uw conversatie, waardoor de volledige geschiedenis bij elke interactie opnieuw wordt verzonden en gefactureerd. Een agent zet één vraag om in tientallen API-aanroepen, waarbij elke aanroep die groeiende geschiedenis meedraagt. Daarbovenop wordt het frontier-model geprijsd op basis van de complexiteit van het werk, niet op basis van de kosten voor het draaien van een klein model.
Een token is een tekstfragment. Als ruwe richtlijn geldt dat één token ongeveer vier tekens of ongeveer 0,75 Engelse woorden bevat. Tarieven worden genoteerd per miljoen tokens, afgekort als MTok (million tokens). Elk onderstaand tarief is het gepubliceerde Claude API-tarief per augustus 2026.
De meeste onverwachte facturen ontstaan door de tweede en derde reden in deze lijst. Gebruikers gaan er meestal vanuit dat de antwoorden die Claude schrijft de kosten veroorzaken. In een agentsessie is het schrijfwerk echter vaak minder dan een tiende van de totale rekening.
De gepubliceerde tarieven, zodat we het eens zijn over de cijfers
The data behind this chart
[
{
"label": "Haiku 4.5",
"input_usd": 1,
"output_usd": 5,
"cache_read_usd": "0.10"
},
{
"label": "Sonnet 5, to Aug 31 2026",
"input_usd": 2,
"output_usd": 10,
"cache_read_usd": "0.20"
},
{
"label": "Sonnet 5, from Sep 1 2026",
"input_usd": 3,
"output_usd": 15,
"cache_read_usd": "0.30"
},
{
"label": "Opus 5",
"input_usd": 5,
"output_usd": 25,
"cache_read_usd": "0.50"
}
]Kijk naar de verhoudingen in plaats van naar de absolute getallen. Elk model rekent precies vijf keer meer voor output dan voor input. Opus 5 kost 5 dollar per miljoen input-tokens en 25 dollar per miljoen output-tokens. Haiku 4.5 kost 1 en 5. Het prijsverschil tussen het goedkoopste en het duurste model is dus een factor vijf, en het verschil tussen lezen en schrijven is eveneens een factor vijf.
Sonnet 5 hanteert een introductieprijs van 2 en 10 dollar per miljoen tot en met 31 augustus 2026. Vanaf 1 september 2026 wijzigt dit naar 3 en 15. Tarieven veranderen bij nieuwe modelreleases; controleer daarom de actuele prijzen voordat u een budget opstelt. Er is geen gratis laag onder deze tabel, hoewel nieuwe accounts starten met een klein tegoed en sommige onderdelen van de API kosten helemaal niets.
De laatste kolom bevat het tarief voor cache-reads. Dit bepaalt het grootste deel van de factuur. Kom hierop terug nadat u de berekeningen heeft gemaakt.
Waarom kosten output-tokens vijf keer zoveel als input-tokens?
Lezen en schrijven vereisen niet dezelfde hoeveelheid werk. Input-tokens worden in één doorgang verwerkt. Het model leest de volledige prompt in één keer en het werk wordt parallel uitgevoerd, waardoor een prompt van 60.000 tokens niet 60.000 keer langer duurt om te lezen dan een prompt van 1.000 tokens.
Output-tokens worden één voor één gegenereerd. Elk nieuw token vereist een eigen doorgang door het model en heeft elk voorgaand token als context nodig. Het schrijven van 1.000 tokens betekent 1.000 opeenvolgende doorgangen. Dit seriële werk kan niet op dezelfde manier worden verdeeld als het lezen, waardoor elk output-token de hardware langer bezet houdt.
Dit is de reden waarom "maak het antwoord korter" minder effect heeft dan men vaak verwacht. Het beïnvloedt namelijk de kleinste helft van de rekening van een agent.
Waarom wordt mijn volledige conversatie bij elke beurt opnieuw gefactureerd?
De Claude API is stateless. Er is geen conversatie die aan de kant van Anthropic wordt opgeslagen waaraan u simpelweg één bericht toevoegt. Elk verzoek bevat de volledige berichtgeschiedenis en het model leest dit alles voordat het iets schrijft. Daarom wordt beurt 30 ook gefactureerd voor beurt 1 tot en met 29.
Dit betekent dat de kosten van een conversatie sneller stijgen dan de lengte ervan. Beurt 1 factureert een kleine context. Beurt 40 factureert een grote context. Tel alle veertig beurten bij elkaar op en u heeft betaald voor een veelvoud van het aantal tokens dat daadwerkelijk is geschreven.
The data behind this chart
[
{
"turn": 1,
"context_tokens": "20,000"
},
{
"turn": 5,
"context_tokens": "32,000"
},
{
"turn": 10,
"context_tokens": "45,000"
},
{
"turn": 15,
"context_tokens": "55,000"
},
{
"turn": 20,
"context_tokens": "64,000"
},
{
"turn": 25,
"context_tokens": "74,000"
},
{
"turn": 30,
"context_tokens": "84,000"
},
{
"turn": 35,
"context_tokens": "92,000"
},
{
"turn": 40,
"context_tokens": "100,000"
}
]De bovenstaande sessie begint bij 20,000 tokens, wat de system prompt, de tooldefinities en de eerste bestanden die de agent opende omvat. Bij beurt 40 bevat de context 100,000 tokens. Als u dit middelt over alle veertig beurten, komt u uit op ongeveer 60.000 gelezen tokens per verzoek.
Waarom kost een agent zoveel meer dan een chat?
Een chat is één verzoek per vraag. Een agent is één verzoek per stap. Het lezen van een bestand is een stap. Het uitvoeren van een test is een stap. Het lezen van de testuitvoer is een stap. Het bewerken van het bestand is een stap. Veertig stappen om één taak te voltooien is gebruikelijk voor een programmeer-agent.
Twee extra kosten zijn verbonden aan het gebruik van tools. De tooldefinities zijn invoertokens bij elk afzonderlijk verzoek, omdat het model telkens moet worden geïnformeerd over welke tools beschikbaar zijn. Anthropic publiceert de overhead: het systeem-prompt voor toolgebruik is 286 tokens op Opus 5 met tool_choice ingesteld op auto, plus de tokens van uw eigen toolschema's. Sommige server-side tools brengen daarnaast een afzonderlijke vergoeding in rekening. Zoekopdrachten op het web worden gefactureerd tegen $10 per 1.000 zoekopdrachten, bovenop de tokens die de resultaten verbruiken.
Elk resultaat van een tool is bovendien permanente context. Een commando dat 3.000 regels afdrukt, plaatst die 3.000 regels in elk verzoek voor de rest van de sessie. Het tokenverbruik per sessie dat Claude Code rapporteert maakt dit inzichtelijk: zie hoe het invoernummer stijgt direct na een commando met veel uitvoer.
De berekening van één realistische sessie
Hier volgt een realistisch uur aan agentic coding op Opus 5. Veertig API-verzoeken. De context groeit van 20.000 naar 100.000 tokens, wat neerkomt op een gemiddelde van ongeveer 60.000 tokens per verzoek. Het model schrijft ongeveer 700 tokens per verzoek, een combinatie van korte tool-aanroepen en enkele langere codeblokken.
Requests in the session: 40
Average context per request: 60,000 tokens
Total input tokens billed: 40 x 60,000 = 2,400,000
Input cost on Opus 5: 2,400,000 x $5 / 1,000,000 = $12.00
Total output tokens: 40 x 700 = 28,000
Output cost on Opus 5: 28,000 x $25 / 1,000,000 = $0.70
Session total = $12.70The data behind this chart
[
{
"label": "Input, context re-read",
"billed_tokens": "2,400,000",
"cost_usd": "12.00"
},
{
"label": "Output, code and tool calls",
"billed_tokens": "28,000",
"cost_usd": "0.70"
}
]Kijk naar de verdeling. De leeskosten bedragen 12.00 dollar en de schrijfkosten 0.70 dollar; de output die u daadwerkelijk leest, beslaat dus ongeveer vijf procent van de rekening. Het model schreef 28,000 tokens en werd gefactureerd voor het lezen van 2,400,000. Niemand heeft 2,4 miljoen tokens getypt. Dezelfde 100.000 tokens werden telkens opnieuw gelezen.
Hefboom 1: prompt caching, de belangrijkste factor
Prompt caching slaat de verwerkte vorm van een stabiel voorvoegsel van uw prompt op. Bij het volgende verzoek wordt dat voorvoegsel uit de cache gelezen in plaats van opnieuw verwerkt. Schrijven naar de cache kost 1,25 keer het invoertarief voor de cache van vijf minuten, of 2 keer voor de cache van één uur. Lezen uit de cache kost 0,1 keer het invoertarief. Op Opus 5 is dat 0.50 dollar per miljoen in plaats van 5 dollar.
Pas dit toe op de bovenstaande sessie. Elk van de 100.000 tokens wordt eenmaal naar de cache geschreven naarmate het gesprek groeit. De overige 2.300.000 invoertokens worden cache-reads.
Tokens written to cache: 100,000
Cache write at 1.25x input: 100,000 x $6.25 / 1,000,000 = $0.63
Tokens read from cache: 2,300,000
Cache read at 0.1x input: 2,300,000 x $0.50 / 1,000,000 = $1.15
Output cost, unchanged = $0.70
Session total = $2.48U markeert het cachebare gedeelte met een cache_control-veld. Plaats het breekpunt na de inhoud die niet verandert tussen beurten: de systeemprompt en de tooldefinities. Een lang document waarnaar u blijft verwijzen, hoort in datzelfde stabiele blok thuis.
{
"model": "claude-opus-5",
"system": [
{
"type": "text",
"text": "<long, stable instructions>",
"cache_control": {"type": "ephemeral"}
}
],
"messages": [{"role": "user", "content": "..."}]
}De volgorde van uw prompt bepaalt nu de kosten. Een cache-hit vereist een exacte overeenkomst vanaf het allereerste begin van de prompt; alles wat bij elk verzoek verandert, moet dus na alles staan wat niet verandert. Plaats een tijdstempel bovenaan uw systeemprompt en u verbreekt de cache bij elke beurt: het gehele voorvoegsel wordt een misser en u betaalt 1,25 keer het invoertarief om het opnieuw te schrijven.
Het antwoord vertelt u of het gewerkt heeft. Verstuur een verzoek en lees het gebruiksblok.
curl https://api.anthropic.com/v1/messages \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{
"model": "claude-opus-5",
"max_tokens": 256,
"messages": [{"role": "user", "content": "Hello"}]
}'Elk antwoord bevat een usage-object zoals dit:
{
"usage": {
"input_tokens": 105,
"cache_creation_input_tokens": 7345,
"cache_read_input_tokens": 7123,
"output_tokens": 239
}
}Een herhaald verzoek dat nog steeds 0 in cache_read_input_tokens toont, betekent dat de cache niet wordt geraakt. De gebruikelijke oorzaak is dat er iets vóór uw breekpunt is veranderd. De cache van vijf minuten verloopt ook, dus een verzoek dat zes minuten later wordt verzonden, is een misser gevolgd door een nieuwe schrijfactie.
Niveau 2: stuur eenvoudige taken naar een kleiner model
De meeste interacties in een agentsessie zijn niet complex. Het openen van een bestand, het uitvoeren van een formatter of het lezen van een diff vereist geen frontier-model. Door deze taken door te sturen naar Haiku 4.5, daalt het tarief voor input van 5 dollar per miljoen naar 1.
The data behind this chart
[
{
"label": "Opus 5, no caching",
"session_cost_usd": "12.70"
},
{
"label": "Opus 5, cached",
"session_cost_usd": "2.48"
},
{
"label": "Sonnet 5, cached",
"session_cost_usd": "0.99"
},
{
"label": "Haiku 4.5, cached",
"session_cost_usd": "0.50"
}
]Dezelfde sessie kost 12.70 dollar op Opus 5 zonder caching, 2.48 met caching, 0.99 op Sonnet 5 met caching, en 0.50 op Haiku 4.5 met caching. Caching alleen al verlaagt de rekening met ongeveer tachtig procent. De modelkeuze elimineert het grootste deel van wat er overblijft.
Hierbij een belangrijke kanttekening. Een goedkoper model dat een foutief antwoord geeft, kost u de volledige sessie opnieuw, plus uw eigen tijd. Routeer op basis van de complexiteit van de taak, niet op basis van de prijs. Deze regel werkt ook in opwaartse richting: Claude Fable 5 staat boven Opus 5 met prijzen van $10 en $50 per miljoen, dus lees wat deze tarieven u opleveren voordat u een taak daarheen stuurt. Kiezen tussen Opus, Sonnet en Haiku beschrijft waar elk model het beste tot zijn recht komt.
Hefboom 3: contexthygiëne
Elke token die u in de context laat staan, wordt bij elke resterende beurt in rekening gebracht. Het vroegtijdig verwijderen van een token levert daarom veel meer op dan het laat verwijderen ervan. Een bestand van 5.000 tokens dat in beurt 5 van een sessie van 40 beurten wordt toegevoegd, wordt nog 35 keer gelezen. Dat zijn 175.000 extra input-tokens, wat bij Opus 5 bijna een dollar kost voor één onvoorzichtige actie.
Vier gewoontes die het verschil maken:
- Start een nieuwe sessie voor een nieuwe taak in plaats van door te gaan met die van gisteren.
- Filter ruisrijke commando's voordat de uitvoer de het model bereikt, bijvoorbeeld met
head -50, in plaats van achteraf. - Vraag om de specifieke functie die u nodig heeft, niet om het volledige bestand.
- Wanneer een lange sessie geen vooruitgang meer boekt, vraag dan om een samenvatting en begin opnieuw op basis daarvan. De samenvatting beslaat enkele honderden tokens. Het transcript beslaat honderdduizenden.
Lever 4: verwerk alles wat niet interactief is in batches
De Batch API verwerkt verzoeken asynchroon en levert een korting van 50 procent op zowel input als output. Als een taak geen antwoord binnen een seconde vereist, verwerk deze dan in een batch. Dit geldt voor classificatie, extractie, het samenvatten van een backlog en evaluatieruns. De batchkorting is cumulatief met prompt caching. Dit is niet van toepassing op een interactieve sessie, omdat er in dat geval niets is om op te wachten.
Word ik opgelicht?
Dat is de werkelijke vraag die ten grondslag ligt aan "waarom is Claude duur", dus hier is een direct antwoord. De tarieven zijn gepubliceerd, ze zijn voor iedereen in de standaardniveaus gelijk en ze worden per token in rekening gebracht. De uitzondering is een onderhandeld contract, en zelfs daar stelt Claude Enterprise pricing een vergoeding per gebruiker tegenover dezelfde gemeten tokens in plaats van deze te vervangen. Niets op de factuur is discretionair. Wat de tariefkaart u niet kan vertellen, is of u waarde krijgt, omdat deze tokens prijst terwijl u geeft om resultaten.
Prijs daarom het resultaat. De bovenstaande sessie kostte 12.70 dollar zonder caching. Als het een functie opleverde waar u anders een uur over had gedaan, is dat goedkoop. Als het veertig beurten lang in cirkels bleef draaien, leverden diezelfde 12.70 dollar niets op en was het tarief nooit het probleem.
Dit is het deel dat het onthouden waard is. Uw factuur schaalt mee met tokens, niet met waarde. Een productieve sessie en een verspilde sessie van dezelfde lengte kosten evenveel. Daarom zijn de vier hefbomen belangrijker dan de tariefkaart: u kunt niet onderhandelen over de prijs per token, maar u bepaalt wel hoeveel tokens de taak vereist.
Houd dus de kosten per voltooide taak bij, niet de kosten per maand. Als dat getal daalt terwijl u caching en routing optimaliseert, verbetert uw configuratie, zelfs als het maandelijkse totaal stijgt; het totaal stijgt immers omdat er meer werk wordt verzet.
Wat uw factuur niet verlaagt
Sommige populaire adviezen hebben nauwelijks effect. Het model vragen om "beknopt te zijn" kort de output in, terwijl de output slechts vijf procent van de voorbeeldrekening besloeg. Het inkorten van uw eigen vraag bespaart enkele honderden tokens op een context van 60.000 tokens. Het uitschakelen van uitgebreid denken helpt alleen als denk-tokens een substantieel deel van uw output vormden; het gebruiksblok vertelt u dit direct in plaats van dat u moet gissen.
Een groter contextvenster is op zichzelf ook geen kostenpost. Op Claude 4.6 en later wordt het volledige venster van één miljoen tokens gefactureerd tegen het standaardtarief per token; een verzoek van 900.000 tokens kost dus per token hetzelfde als een verzoek van 9.000 tokens. De grootte van het venster bepaalt niet de prijs. Wat u in het venster plaatst, bepaalt dat wel.
Twee andere zaken horen thuis in de planning in plaats van in een enkele sessie. Als u het dagelijks en interactief gebruikt, vergelijk dan de kosten per token met een vast abonnement: de vergelijking tussen API- en abonnementskosten voert die berekening uit. Als het vaste abonnement voordeliger is en u tegelijkertijd een andere aanbieder overweegt, voert de prijsvergelijking tussen Claude en ChatGPT dezelfde vergelijking uit voor beide. En als een agent onbeheerd op een server draait, stel dan een harde bestedingslimiet in voordat u iets anders optimaliseert; dit wordt behandeld in kostenbeheersing voor een AI-agent op een VPS. Voor een helder beeld van de schaal vertaalt wat één miljoen Claude-tokens daadwerkelijk oplevert de tarievenlijst naar pagina's tekst.
FAQ
Waarom steeg mijn Claude-rekening toen ik een agent begon te gebruiken?
Omdat een agent meerdere verzoeken per vraag verstuurt, waarbij elk verzoek de volledige conversatie tot dat moment bevat. Een chat verstuurt slechts één verzoek per vraag. Een coding agent verstuurt één verzoek per stap, en veertig stappen voor één taak is gebruikelijk. Elk van die verzoeken wordt gefactureerd voor de volledige context, waardoor een sessie die eindigt op 100.000 tokens in totaal voor meer dan twee miljoen input-tokens gefactureerd kan worden. Lees input_tokens en cache_read_input_tokens in het API-antwoord om dit direct in te zien.
Verlaagt prompt caching de rekening echt zo sterk?
In het uitgewerkte voorbeeld daalde de sessie van 12.70 dollar naar 2.48 dollar, omdat een cache-read een tiende kost van het input-tarief. De besparing hangt volledig af van uw hit-rate. Met de cache van vijf minuten verdient het zichzelf terug na een enkele read, aangezien de write 1,25 keer de input kost en de read 0,1 keer. Als uw prompt bij elk verzoek aan het begin wijzigt, krijgt u helemaal geen hits en betaalt u de write-premie voor niets. Controleer dit met cache_read_input_tokens voordat u ervan uitgaat dat het werkt.
Moet ik voor alles gewoon Haiku gebruiken?
Nee. Haiku 4.5 kost 1 dollar per miljoen input-tokens tegenover 5 voor Opus 5, dus de besparing is reëel bij eenvoudig werk met een hoog volume, zoals classificatie en routing. Een foutief antwoord bij complex werk kost meer dan het model heeft bespaard, omdat u betaalt voor de retry en bovendien voor uw eigen tijd. Het patroon dat standhoudt is een mix: het kleine model voor mechanische taken, het frontier-model voor de taken die beoordelingsvermogen vereisen.
Is de API goedkoper dan een Claude-abonnement?
Dit hangt af van hoe constant uw gebruik is. Een abonnement heeft een vaste maandelijkse prijs met bijbehorende gebruikslimieten. De API werkt op basis van betaling per token zonder plafond; dit is goedkoper wanneer uw gebruik licht is of in pieken komt, en duurder wanneer u het elke werkdag intensief gebruikt. Neem uw gemiddelde aantal tokens per dag uit het gebruiksblok, bereken de kosten op basis van het tarief van uw model en vergelijk dat bedrag met de abonnementsprijs, die voor het instapniveau wordt uiteengezet in wat Claude Pro kost en waar de gebruikslimieten liggen. Als de som in het voordeel van de API uitvalt, betekent het opzeggen van het abonnement of het verlagen naar een lager niveau niet dat u de reeds betaalde maand verspilt, omdat uw toegang geldig blijft tot het einde van de huidige factuurperiode.