Het beste Claude-model voor code: welk model voor welke taak
7m leestijd

Het beste Claude-model voor code: welk model voor welke taak

Hoe ik codewerk verdeel over Haiku, Sonnet, Opus en Fable, en waarom modelkeuze draait om kostenbewustzijn in plaats van om standaard het grootste te pakken.

Het korte antwoord: Sonnet is inmiddels mijn standaard voor programmeerwerk, Haiku doet het mechanische volumewerk tegen de laagste kosten, en Opus bewaar ik voor het werk waar oordeel telt. Fable is de vierde, de tier die je pakt als je Opus al hebt geprobeerd en tegen zijn plafond bent aangelopen, en die loopt op de meter. De keuze hangt af van welke modellen in je abonnement zitten en welk model je per call betaalt.

Er is een reflex die ik bij mezelf herken, en bij bijna iedereen met wie ik erover praat: grijp naar het grootste model, elke keer, voor alles. De modelkeuze wordt één beslissing die je een keer neemt en nooit meer herziet. Wat bovenaan de lijst staat, doet je commit-messages, je edits om een variabele te hernoemen en je vervelende concurrency-bug, allemaal zonder onderscheid.

Dat is de dure gewoonte. Niet omdat het topmodel slecht is, maar omdat het meeste codewerk het niet nodig heeft, en omdat één van de tiers je nu echt geld per gebruik kost.

Hieronder lees je hoe ik mijn werk over de line-up verdeel, en waarom ik in vier tiers denk in plaats van in één schuifregelaar van goedkoop naar slim.

De huidige line-up ​

Op 13 september 2026 zijn dit de vier tiers. Prijzen zijn API-lijstprijzen per miljoen tokens. In Claude Code wissel je van model met /model.

TierModelAPI-IDContext windowInput / output
KlusjesHaiku 4.5claude-haiku-4-5200K$1 / $5
StandaardSonnet 5claude-sonnet-51M$2 / $10
OordeelOpus 5claude-opus-51M$5 / $25
NoodgevalFable 5.1claude-fable-5-11M$10 / $50

Wat telt is toegang, niet benchmarks ​

Je kunt de modellen op capaciteit op een rij zetten en dan krijg je een nette ladder. Die ladder klopt, maar hij verbergt de scheidslijn die je gedrag echt verandert: welke modellen in je abonnement zitten, en welk model je direct betaalt, per call.

Drie van de vier zitten in je abonnement. Daar wissel je vrij tussen, en het enige wat het kost is snelheid en tokens uit een budget dat je toch al hebt. De vierde loopt op de meter. Elke keer dat je hem gebruikt, geef je geld uit dat anders in je zak was gebleven.

Naast inbegrepen en op de meter kent toegang nog een derde stand: weg. Een model kan van de ene op de andere dag wereldwijd worden teruggeroepen, en daarom weet je het liefst wat je tweede keuze is voordat je die nodig hebt.

Die scheiding is de ruggengraat van elke keuze hieronder. Naar Opus grijpen als Sonnet het ook doet, verspilt budget. Naar de betaalde tier grijpen als Opus het ook doet, verspilt geld.

De drie inbegrepen tiers ​

Haiku (ongeveer 1x) is de lijm. Werk met veel volume en weinig oordeel: mechanische edits, opmaakrondes, boilerplate genereren, de honderd kleine string-replacements die een refactor over een codebase uitsmeert. Het heeft een kleiner context window dan de rest, maar voor lijmwerk voer je het geen monorepo. Als de taak "pas deze voor de hand liggende wijziging op veertig plekken toe" is, doet Haiku dat snel en voel je de kosten nauwelijks.

Sonnet (ongeveer 2x) is inmiddels mijn standaard, en dit is de omslag die de meeste mensen nog niet hebben gemaakt. Sonnet was vroeger het compromis dat je accepteerde als Opus te traag of te duur was. De huidige Sonnet is die rol ontgroeid. Bij code- en agentic werk komt hij zo dicht bij Opus dat je voor het gros van echt featurewerk, een component schrijven, een endpoint aansluiten, een normale bug fixen, aan de output alleen niet kunt zien dat het goedkopere model draaide. Het is ook de eerste Sonnet-tier die de hoge effort-standen aankan, wat voor veel taken meer uitmaakt dan de modelkeuze zelf (daarover zo meer).

Als je nog voor alles standaard naar Opus gaat: zet een week lang Sonnet als standaard. Je zult verbaasd zijn hoe zelden je het verschil mist.

Opus (ongeveer 5x) is voor oordeel. De taken waar je liever traag bent dan grotendeels goed: een complexe refactor over modulegrenzen heen, een ontwerpkeuze met echte gevolgen, een bug waar de voor de hand liggende fix verkeerd is en je het model echt wilt laten redeneren in plaats van via patroonherkenning naar iets plausibels toe te werken. Hier leveren de extra tokens iets op wat je merkt. Ik pak Opus bewust, voor de taken die het verdienen, niet als achtergrondstandaard.

Effort is de tweede knop ​

Modelkeuze is maar de helft van de beslissing. Effort is de andere helft, en mensen vergeten dat die bestaat.

Sonnet, Opus en de toptier ondersteunen allemaal een xhigh-effort-stand, en voor code- en agentic werk is dat de stand die je wilt. Een goedkoper model op hoge effort verslaat vaak een duurder model op lage effort, en meestal kost het je minder om daar te komen. Het echte raster is dus tweedimensionaal: welk model, en hoe hard het nadenkt. Effort omlaag zetten op Haiku voor lijmwerk bespaart tokens die je nooit zou missen. Effort omhoog zetten op Sonnet voor een lastige taak kan het gat naar Opus grotendeels dichten zonder buiten je abonnement te gaan.

Behandel beide als kostenknoppen. Het model bepaalt het plafond, effort bepaalt hoeveel van dat plafond je bij deze call echt betaalt.

Eén kanttekening die me later opbrak: effort-waarden overleven een modelupgrade niet. Elke release kalibreert opnieuw wat die vijf labels betekenen, dus meet ze opnieuw zodra er een nieuw model uitkomt in plaats van je oude cijfers over te nemen.

De tier die je expres betaalt ​

Fable staat bovenaan de line-up, en valt volledig buiten je abonnement. Betaald, op de meter, per gebruik. Elke call kost je direct geld.

Dat toegangsmodel, meer nog dan de prijsverhouding, bepaalt wanneer je hem inzet. Fable is de tier voor noodgevallen: het zwaarste langlopende agentic werk, de nachtelijke run die urenlang en over honderden tool calls heen samenhangend moet blijven, het probleem waarvoor je Opus al hebt geprobeerd en Opus tekortschoot. Op dat niveau is hij echt krachtiger. Het is ook de tier waar je bewust besluit dat de taak het waard is om uit eigen zak te betalen, en dat is een besluit dat je expres hoort te nemen en niet door een dropdown op zijn standaard te laten staan.

Ik kies Fable bewust, voor de zeldzame taak die de lat haalt, net zoals ik dat bij elk ander stuk gereedschap zou besluiten.

Hoe ik het echt beslis ​

Het komt allemaal neer op een paar vragen die ik bijna zonder nadenken langsloop:

  • Is dit mechanisch? Haiku, lage effort. Geen seconde over nadenken.
  • Is dit normaal featurewerk of een normale bug? Sonnet, hoog of xhigh. Dit is het grootste deel van mijn dag.
  • Kost een fout me hier uren, of levert die een subtiele bug op? Opus, xhigh. Oordeelswerk verdient de tokens.
  • Heb ik Opus al geprobeerd en ben ik tegen zijn plafond aangelopen bij iets echt zwaars en langlopends? Fable, en ik accepteer dat ik ervoor betaal.

Dit gaat om meer dan op de centen letten: je aandacht en je budget inzetten waar ze de uitkomst veranderen. Het beste getal in de Opus 4.8-aankondiging was nooit de benchmark, en hetzelfde instinct geldt bij het dagelijks kiezen van een model: het capaciteitsplafond is het minst interessante deel van de beslissing. Wat telt is de tier laten passen bij de taak die voor je ligt.

Dit is dezelfde discipline waar ik steeds op terugkom. Snelheid werd goedkoop, oordeel niet: in AI-ondersteund werk is oordeel het schaarse goed, oftewel weten wat een taak echt nodig heeft. Modelkeuze is dat oordeel toegepast op je eigen uitgaven. En het sluit direct aan op hoe je Claude Code inricht en dagelijks met een agent werkt: kies de tier per taak, zet de effort per taak, en stop met Opus-prijzen betalen voor commit-messages.

De standaard die alles door het grootste model jaagt, voelt veilig. Hij is alleen stilletjes duur, en nu een van die tiers direct op je rekening komt, heeft de prijs van niet kiezen een getal gekregen.

(20 van 39)
1Mijn Claude Code-setup: status line, plugins en terminal2Superpowers: hoe je Claude Code leert eerst te denken3Claude Code-hooks: deterministische controle over AI-workflows4Het CLAUDE.md-bestand: geef je AI permanent geheugen5Stop met vriendelijk vragen aan je agent6Wat er nieuw is in Claude Code: notities van het Londen-event7Het beste cijfer in Opus 4.8 is geen benchmark8Verouderd geheugen is erger dan geen geheugen9De agent is gewoon een loop10Bouw een MCP-server, en vraag je dan af of die moet bestaan11Skill, subagent, hook of slash command? Kies de juiste12Inloggen op MCP-servers vanuit je shell13Claude veilig toegang geven tot je SQL-database14De dag dat 'default' ineens 'Manual' heette15Claude Code-skills: zo schrijf je er een die werkt16Een goede Claude Code-subagent schrijven17Claude Code permissions instellen: de gids die ik miste18Claude Code sandboxen: toestemming is geen muur19Prompt injection voorkomen: verdediging voor wie agents bouwt20Het beste Claude-model voor code: welk model voor welke taak21Legacy code refactoren met AI: begin met characterization tests22Je MCP-server beveiligen: authenticatie, scopes en rate limits23Opus 5 is er, en je effort-instellingen kloppen niet meer24Incident response voor AI-agents: wat je doet als je coding agent de fout in gaat25Claude Code /doctor: wat hij controleert en wat er nieuw is26Context beheren in Claude Code: wanneer /clear en wanneer /compact27Git worktrees uitgelegd: parallel werken met AI-agents zonder botsingen28Claude Code plan mode: beslissen voordat de agent schrijft29Debuggen met een coding agent: geef hem het zoekwerk, de hypothese houd je zelf30Claude Code checkpoints en /rewind: wijzigingen van je agent terugdraaien31Claude Code cross-session messaging: sessies die elkaar berichten sturen32Audit logging voor AI-agents: wat Claude Code vastlegt en wanneer je iemand wakker belt33Claude Code-config delen met je team: wat de repo wel en niet afdwingt34Je Claude Code-sessie heeft geen klok35Claude Code in een grote codebase: de agent afbakenen tot wat ertoe doet36Een Claude Code-sessie terughalen die de resume-picker niet laat zien37Waar Claude Code zijn tijd aan kwijt is: een maand eigen sessies gemeten38Claude Code bijsturen tijdens het werk: Esc, de wachtrij en /btw39Claude Code auto mode: waarom je allow-regel voor Agent niets doet