Claude Code usage: what it measures and how to see it

Ask how much Claude Code you have used and you can get three unrelated answers: how much plan quota you have burned, how many tokens you have sent, and how many dollars that represents. They are measured differently, they live in different places, and only one of them can stop you mid-task.

By the Continuum team. We build a workbench that runs Claude Code, Codex, and their peers, so the model rates quoted here are the ones our own cost analytics ship with.

The short version

Claude Code usage means one of three things: plan quota consumed against a rolling 5-hour window and a weekly window, raw token counts by category, or dollar cost. Run /usage to see quota bars and this session's tokens; /cost is an alias for the same command as of August 2026. Full history lives in the JSONL transcripts under ~/.claude/projects/, which are deleted after 30 days by default.

What you need to know
  • Quota is what stops you working. On a subscription it is the only number that can.
  • Tokens are the underlying unit and the only thing measured exactly.
  • Cost is tokens times a rate, and on a subscription no money moves.
  • /usage answers all three inside the CLI. /cost is now an alias for it.
  • History comes from the JSONL transcripts on disk, which expire after 30 days by default.

Three numbers, three meanings

Every argument about Claude Code usage is really an argument about which of these three numbers someone means. Sort that out first and the rest is mechanical.

What each number measures and when you should care.

NumberMeasuresWhere it livesMatters if
Plan quotaConsumption against the 5-hour and weekly windows/usage, and the status line JSONYou are on a subscription
TokensInput, cache write, cache read, outputJSONL session transcripts on diskYou want to understand or optimise
CostTokens priced at model ratesDerived, shown by /usage per sessionYou are on an API key
Tokens branch upward into plan quota, which binds on a subscription, and downward into dollar cost, which binds on an API keytokensthe only numbermeasured exactlyPLAN QUOTA78%5-hour and weekly windows,shared with claude.ai and DesktopBINDS ONsubscriptionan API keyCOSTtokens x the rate at the timefour categories, four ratesBINDS ONsubscriptionan API keyQuota is a ceiling. Cost is arithmetic. Only one of them can stop you today.

What /usage shows in 2026

The built-in command has grown considerably, and most guides on the internet describe the 2025 version of it. As of August 2026, /usage is one screen with two halves, and /cost is documented as an alias for it rather than a separate command.

The two halves of the /usage screen.

HalfShowsWho it is for
Session blockTokens and a dollar figure for this session, by modelAPI users; a proxy for intensity on a plan
Plan usageProgress bars for your 5-hour and weekly limitsPro, Max, Team, and Enterprise
AttributionShare of recent usage by skill, subagent, plugin, and MCP serverAnyone trying to find the waste
Behavior flagsLong context, cache misses, flagged at 10 percent or moreAnyone whose usage climbs faster than expected
  • Press d or w to switch the breakdown between the last 24 hours and the last 7 days.
  • The session dollar figure is computed locally at standard list rates, so it ignores contracted discounts and will not match an invoice.
  • Session totals reset when /clear starts a new conversation.
  • The breakdown is computed from local session history on this machine, so work from another laptop or from claude.ai is not in it.

The two windows that can stop you

Subscription limits are enforced on two windows at once, and they behave differently enough that watching only one is how people get surprised.

The windows, as documented by Anthropic support in August 2026.

WindowResetsFills overTypical surprise
5-hour sessionRolling, five hours from your first messageHoursOne heavy morning
WeeklyA fixed day and time assigned to your accountDaysFive ordinary days in a row

Where the numbers actually live

There are four distinct places usage data exists, and knowing which is which explains every gap you will hit in tooling.

SourceContainsRead by
/usage screenLive plan bars plus session tokensYou, interactively
Status line JSON on stdinrate_limits.five_hour and rate_limits.seven_day percentages and reset timesAny status line script
~/.claude/projects/*.jsonlEvery request, model, and token count, timestampedccusage and other parsers
~/.claude/stats-cache.jsonThe aggregated token and cost counts /usage displaysClaude Code itself
The transcript layout, one directory per project and one file per session.
~/.claude/projects/
  -Users-you-code-my-project/
    3f2a....jsonl                 one file per session
    3f2a.../subagents/            subagent transcripts
    3f2a.../tool-results/         large tool output spilled to disk

The four token categories

Every assistant message in the transcript carries a usage object with four counters, and they are priced very differently. Adding them together as if they were one number is the most common way to get a wrong answer.

Relative pricing, from Anthropic's published API rates.

CategoryMeaningRelative price
input_tokensNew, uncached input after the last cache breakpointBase input rate
cache_creation_input_tokensWritten to the prompt cacheAbove base input
cache_read_input_tokensRe-read from the cacheAbout 10 percent of base input
output_tokensGenerated, including thinking tokensAround 5x base input

On a healthy long session, cache reads are usually the largest column by volume and a small share of the cost. If cache reads are not dominant, either your sessions are very short or something is invalidating the cache on every turn, which is exactly the behavior the /usage screen flags for you.

Why usage climbs in a long session

The most common complaint about Claude Code usage is that a quiet afternoon consumed a lot of it. That is usually not a billing error. It is one of five mechanics, all documented, and each has a different fix.

The five reasons a session costs more than your activity suggests.

CauseWhat happensFix
Long contextThe full conversation is sent with every request, and each tool use sends another request carrying its results/clear between unrelated tasks
Cache missesThe first message after a break longer than the cache lifetime reprocesses the whole contextResume from a summary, or start fresh
Scheduled tasksA scheduled task fires on its interval even while the session is idle, sending the full context each timeRemove the ones you are not reading
Agent teammatesEach active teammate runs its own context window and keeps consuming until it exitsSmall teams, cheaper models, shut them down
Compaction/compact reads the conversation it summarises, so compacting a large context is itself a large requestUse /clear when you do not need continuity

The /usage breakdown flags whichever of these accounts for 10 percent or more of your recent usage, which makes it the fastest diagnosis available. Agent teams are the extreme case: Anthropic puts them at roughly 7x the tokens of a standard session when teammates run in plan mode.

Which number you should be watching

If you areWatchBecause
On Pro or MaxQuota headroom, both windowsOnly interruption can hurt you
On an API keyDaily costOnly the bill can hurt you
Deciding on a planCost at API-equivalent ratesIt is the comparable number
Optimising a workflowTokens by categoryIt shows you where the waste is
Running a teamCost per person and per repoIt shows where the value is

The mistake worth avoiding is watching cost on a subscription and concluding you are being expensive. You are not being billed for it. The number is useful as a comparison against the API and as a proxy for how fast you are consuming quota, and for nothing else.

Questions people ask

Run /usage inside an interactive Claude Code session. It shows this session's tokens and cost plus progress bars for your 5-hour and weekly plan limits, with a breakdown you can toggle between 24 hours and 7 days using d and w.

There is none any more. As of August 2026 the Claude Code commands reference lists /cost as an alias for /usage, so both open the same screen.

The /usage breakdown covers the last 24 hours or last 7 days from local history on that machine. For longer history, parse the JSONL transcripts under ~/.claude/projects/ or run a tool such as ccusage that does it for you.

It draws on the same allowance. Anthropic support states that usage across claude.ai, Claude Desktop, and Claude Code counts toward the same 5-hour and weekly limits, so heavy chat use reduces the headroom available to your agent.

In JSONL session transcripts under ~/.claude/projects/, one directory per project and one file per session, plus an aggregate in ~/.claude/stats-cache.json that backs the /usage screen.

Transcripts are deleted on startup once they are older than cleanupPeriodDays, which defaults to 30 days. Raise that setting or archive the directory if you want a longer baseline.

Usually deduplication. The same logical request can appear more than once across files after resumes and retries, so a tool that sums every usage object overcounts. Correct implementations deduplicate on the message ID and request ID pair.

Not as a bill, because the fee is flat. It is still useful as a measure of intensity, as a proxy for how fast you are burning quota, and as the number that tells you whether an API key would have been cheaper.

Sources

Every figure above was read from these pages on August 2026. Vendors reprice without notice; if you find a stale number, tell us.

  1. Claude Code documentation
  2. Claude Code: manage costs effectively
  3. Claude Code: the .claude directory
  4. Claude help: models, usage, and limits in Claude Code
Try it

Quota and cost,
in one place.

Continuum shows live 5-hour and weekly headroom alongside historical spend by repo, model, and day, across every agent and account you run.

free app · your subscriptions · local-first