Skip to content
No login requiredNo subscriptionNo trackingNo cloudYour data stays on your Mac
Tokens 4 Breakfast logo
Tokens 4 BreakfastThe AI spend guard for builders.
Guide · Cost7 min read

How to reduce Claude Code costs without slowing down

Claude Code is worth it, but the bill climbs fast when every request runs on the top model at full effort with a bloated context. The good news is that most of that spend is avoidable. Here are eight tactics that stack, in order of impact, plus how to see whether they are actually working.

Quick answer

The biggest levers for reducing Claude Code costs are: route easy work to a cheaper model like Haiku or Sonnet and keep the frontier model for planning; use prompt caching, which gives about a 90 percent discount on repeated input like your CLAUDE.md; lower the reasoning effort on simple tasks; start a fresh session when you switch tasks so a bloated context stops billing on every turn; and write precise prompts so Claude does not burn tokens searching. Together these can cut a bill by 50 to 80 percent. Tokens 4 Breakfast shows your real spend per model and project so you can confirm the savings.

Step by step

The full walkthrough

Each step stands on its own — skip to the one that matches where you are.

  1. 1. Route easy work to a cheaper model

    This is the biggest single lever. Plan and write the spec with a frontier model, then let a cheaper model like Sonnet 4.6 or Haiku 4.5 write the code. Using Opus to rename a file is money set on fire. Switching models per task with /model, or letting a router do it, is worth 40 to 70 percent on its own. The companion model routing guide covers the full method and math.

  2. 2. Use prompt caching

    Claude Code caches your system prompt and CLAUDE.md, giving roughly a 90 percent discount on those input tokens after the first message. That alone can cut 30 to 50 percent of a typical daily bill. Keep CLAUDE.md lean, under about 200 lines of genuine essentials, so the cached part stays small and the uncached part stays smaller.

  3. 3. Lower the reasoning effort on simple tasks

    Thinking tokens bill at output rates, and defaults have crept toward high effort. Most tasks do not need it. Drop simple work to low effort with /effort, or cap the ceiling with MAX_THINKING_TOKENS around 8000, and reserve high or max thinking for genuine multi-step reasoning. See the reasoning effort guide for the model-by-model detail.

  4. 4. Start a fresh session for each task

    Every turn bills the whole context window, so a long session that has drifted across three tasks pays for all of it on every message. When you finish one task and start another, open a new session to reset the context to zero. For moderate and heavy users this alone is a 30 to 50 percent reduction.

  5. 5. Write precise prompts

    Vague prompts are expensive. Ask Claude to fix the login and it explores, asks questions, and tries approaches, burning tokens on every exchange. Point it at the exact file and line and it goes straight to work. Specific instructions save both time and tokens, and they usually produce a better result on the first try.

  6. 6. Keep subagents disciplined

    Subagents parallelize exploration, but each one spends tokens. Four is the sweet spot for most work, and you rarely need more. Put subagents on a cheap model like Haiku by default, since exploration and file reading do not need a frontier model. Undisciplined subagent fan-out is a quiet way to multiply a bill.

  7. 7. Use the Batch API for non-urgent work

    If you are calling the API directly and the work is not interactive, the Batch API gives a flat 50 percent discount. It is ideal for bulk jobs like generating tests, migrating files, or processing a backlog where a few minutes of latency does not matter.

  8. 8. Measure it, so you know what is working

    You cannot cut what you cannot see. Claude Code's /cost and /usage commands show the current session, but they do not follow your spend over time or across projects and other tools. Tokens 4 Breakfast does: real spend per model and project, a month-end forecast, and a Plan Advisor that tells you whether your subscription is even worth it. Apply these tactics, then watch the number actually move.

Pro tips

  • Stack the levers. Routing, caching, and lower effort each hit a different part of the bill, so their savings compound rather than overlap.
  • The two fastest wins with zero quality risk are prompt caching and fresh sessions. Turn them into habits before anything else.
  • If you are on a subscription rather than the API, these tactics stretch your quota, so you hit your limits far later in the week.
  • Confirm every change in the numbers. Watch your per-model and per-day spend for a week; real savings show up, and mistakes show up too.
FAQ

Common questions

Short, direct answers to the things people ask most about this.

Why is Claude Code so expensive?

Usually because every request runs on the most capable model at high reasoning effort with a large, drifting context window, and output tokens cost three to five times input. Routing easy work to a cheaper model, caching repeated context, lowering effort, and starting fresh sessions removes most of that avoidable cost.

What is the single best way to reduce Claude Code costs?

Model routing: plan with a frontier model and let a cheaper model like Sonnet or Haiku write the code. It is worth 40 to 70 percent on its own, more than any other single change, because it stops you paying frontier prices for routine execution.

Does prompt caching really save money?

Yes. Claude Code caches your system prompt and CLAUDE.md, giving about a 90 percent discount on those repeated input tokens after the first message, which can cut 30 to 50 percent of a typical daily bill. Keeping CLAUDE.md under about 200 lines keeps it efficient.

Will these tactics lower quality?

Used well, no. The idea is to spend frontier capability only where it changes the outcome, and cheaper models where they produce the same result. Prompt caching and fresh sessions carry no quality risk at all; routing and effort tuning only lower quality if you push a task onto a model that cannot handle it, which the per-model numbers make easy to catch.

How do I track whether my Claude Code costs are going down?

Measure spend per model over time. Tokens 4 Breakfast shows your real Claude Code cost by model and project, live in the Mac menu bar, with a month-end forecast, so you can confirm a change worked instead of assuming it did. The built-in /cost command only shows the current session.