Skip to content
Mastering Claude

Home / Context and cost

Context and cost8 minApplication

Quota, throughput, and routing to the cheapest model

Two distinct caps govern a session, the money cost and the throughput in tokens per minute, and both are handled by the same reflex: route repetitive tasks to Haiku or Sonnet, keep Opus for difficult reasoning, and wait according to a growing delay after a 429 error rather than retrying at once.

A burst of calls sent to Claude can fail in two very different ways, and the two are easily confused under the generic word limit. The first is a money cap, the spend limit, which blocks any new call until the first day of the following month once exceeded. The second is a throughput cap, in tokens per minute, which lifts itself a few moments later. Both return the same 429 error, which makes them hard to tell apart without paying attention: only the throughput cap carries a retry-after header stating the delay to respect, and the error.details.error_code field is set to enforced_spend_limit_reached when it is the money cap that responded.

Two caps, two different failures

Telling the two apart can be read in the response itself:

reponse.statut == 429
si reponse.entetes contient "retry-after" :
    afficher "plafond de debit, reessayer dans " + reponse.entetes["retry-after"] + " s"
sinon si reponse.corps.error.details.error_code == "enforced_spend_limit_reached" :
    afficher "plafond en argent atteint, aucune attente ne le debloque"

Confusing the two leads to the wrong reflex: retrying a call immediately after a 429 makes the throughput saturation worse instead of resolving it, whereas the same reaction makes no sense against a monthly cap already reached, where only waiting until the following month, or a cap increase, changes anything, and where no retry will unlock access before that date. Sonnet's and Haiku's throughput limits have also been aligned with Opus's at every tier. The figure accompanying this lesson quantifies this change and a second, less visible one: since the Claude 4.7 and later models, the same text counts roughly 30% more tokens than before, a gap whose exact size depends on the content, without the documentation quantifying it by content type.

Route to the cheapest, wait according to the announced delay

The reflex that handles both caps at once is the same: hand repetitive tasks, summarising, extracting, classifying, to Haiku or Sonnet, and reserve Opus for reasoning that genuinely justifies it. This reduces both the bill and the throughput consumed per minute, since every call avoided weighs less on both caps at the same time. Faced with a throughput 429 error, the correct response is to wait for the delay stated by the retry-after header rather than retrying at once or applying a fixed progression that would ignore it, which fails as soon as that delay exceeds what it planned for. Faced with a money-cap 429, no short wait unlocks anything. The same principle of routing to the cheapest model that suffices also applies to choosing which lever to pull on a long session, and it connects directly to what the lesson on the hidden bill shows about the cost of a repeated tool call.

Figure 1

Aligned tiers, a tokenizer that inflates

identicalthroughput limits
Sonnet 4.x, Sonnet 5 and Haiku 4.5 now carry the same request and token-per-minute limits as Opus 4.x at every tier.
p7l9, 2026-09-02
30% more tokens
The tokenizer used since the Claude 4.7 and later models counts roughly 30% more tokens than before for the same text, the exact gap depending on the content and structure of the text.
p7l11, 2026
The first point shows the alignment of throughput limits between models at every tier, the second shows by how much the same text weighs more tokens since the tokenizer change.
Calibrate it yourself

A cooperative launches a series of automated calls to Claude to classify several hundred files in the early afternoon. Within a few minutes, one call returns a 429 error accompanied by a thirty-second wait delay.

Write in one sentence what this situation establishes, and in one sentence what it does not establish.

What to remember
  • An exceeded money cap and an exceeded throughput cap both return a 429 error, but only the latter carries a retry-after header and lifts itself after a few moments, while the former is identified by the enforced_spend_limit_reached code and only lifts the following month.
  • Retrying a call immediately after a throughput 429 error makes the saturation worse instead of resolving it, and has no effect on a money-cap 429 error.
  • Sonnet's and Haiku's throughput limits have been aligned with Opus's at every tier.
  • The tokenizer used since the Claude 4.7 and later models puts roughly 30% more tokens on the same text, a gap whose exact size depends on the content, which brings routine usage closer to the throughput cap faster.
  • Handing a repetitive task to the cheapest model that suffices reduces both the bill and the throughput consumed per minute.
Do this now

On your next repetitive task, explicitly choose Haiku or Sonnet rather than Opus for the sub-agent tasked with running it, then open your account's Settings, Usage page and note the throughput tier that applies before launching a burst of calls.

What still needs checking

These points depend on an interface or a rule that may have changed since this was written. Check them on your own screen before relying on them.

  • Open Settings then Usage on your own account and note the throughput tier currently applied, Start, Build, Scale or Custom, before launching a burst of automated calls.
Check the source

Every datable claim in this lesson links here to the public text behind it. A source that does not open proves nothing.