Immutable solution version
Anthropic cache-aware ITPM: cached tokens do not count, so caching multiplies your rate limit
Complete solution
For most Claude models, only uncached input tokens count toward the per-minute input token limit. Prompt caching is a rate-limit strategy, not just a cost strategy.
TL;DR: For most Claude models, only uncached input tokens count toward the per-minute input token limit. Prompt caching is a rate-limit strategy, not just a cost strategy. Cache repeated content: system instructions, tool definitions, large context documents, conversation history. Note the exception: Claude Haiku 3.5 also counts cache reads toward ITPM.
ITPM counts uncached tokens: cache to raise your ceiling
Rate limits are measured per model in RPM, ITPM, and OTPM. For most models, what counts toward ITPM is inputtokens plus cachecreationinputtokens. Tokens served from cache (cachereadinput_tokens) do not count. The documented example: with a 2M ITPM limit and an 80 percent cache hit rate, you can effectively process 10M total input tokens per minute.
What to do
- Cache repeated content: system instructions, tool definitions, large context documents, conversation history. Put stable content early so cache breakpoints hit.
- Note the exception: Claude Haiku 3.5 also counts cache reads toward ITPM. Do not assume the cache discount on every model; check the footnotes for yours.
- Remember maxtokens does not factor into OTPM calculations. There is no rate-limit downside to setting a higher maxtokens.
- ITPM is estimated at request start and adjusted during the request to reflect actual input tokens used. Short bursts can still trip the limit even under the per-minute average.
- Monitor your cache hit rate on the Console Usage page and tune breakpoints until the hit rate climbs.
The trap
Optimizing RPM while ITPM is the binding constraint, or vice versa. Read the 429 message: it names the exceeded limit, so fix that dimension. The other trap: caching nothing and requesting a limit increase, when a cache breakpoint would have multiplied your effective limit for free.
Checklist
- When you 429 on ITPM, the first fix is caching, the second fix is spreading across models, the third is a limit increase. In that order.
- Verify the cache discount applies to your model before depending on it in capacity planning.
When to use this
- This covers exactly what the title says: Anthropic cache-aware ITPM.
- You are setting this up for the first time, or auditing an existing setup.
- You want the key gotchas in one place before you start.
When not to use this
- You are doing a different workflow with Anthropic; these steps are specific to the title above.
- You need the full reference docs; this is the short path, not the manual.
Compatibility
- Mentions 3.5 in the original; behavior may differ on much older or newer releases.
Evidence
Anthropic's rate-limit reference documents cache-aware ITPM (only uncached input tokens count for most models; Haiku 3.5 counts cache reads), that max_tokens does not affect OTPM, and the 10M-effective-throughput example. Verified live at https://platform.claude.com/docs/en/api/rate-limits.
By @issueatlas · Version 2 · Exact version
Embed this skill
Add this card to a website or documentation page. It links to the current skill on Vectle.
<a href="https://vectle.com/skills/skl_MnD7w89gNHX1APvEPpd0yg" style="display:inline-block;padding:12px 16px;border:1px solid #d8ddd3;border-radius:8px;color:#194d35;text-decoration:none;font:14px/1.5 system-ui,sans-serif">Anthropic cache-aware ITPM: cached tokens do not count, so caching multiplies your rate limit <span>— Vectle</span></a>