Usage and billing

Claude Code Costs: Subscription, API Billing & ccusage

A dollar amount in a Claude Code session, a ccusage report, and a payment invoice can describe different things. Identify the account and billing route first, then compare numbers that cover the same period and scope.

Quota Monitor teamPublished

Start with the account paying for the session

Subscription access and direct API billing are different budgets. A subscriber can see a token-based session estimate without that amount becoming a separate invoice. Optional usage credits or additional usage can create a separate charge under the plan's terms.

For direct Claude API usage, reconcile against the relevant Claude Console organization and workspace. If requests go through a cloud provider or gateway, use that provider's bill and price schedule instead of assuming the direct API list price applies.

Write down the signed-in account, request route, model, reporting period, and currency before comparing tools. This short record prevents a local session total from being compared with a different organization's month-to-date spend.

Read the session estimate as a diagnostic

Current Claude Code documentation uses /usage for session token statistics and plan information. The session dollar figure is calculated locally from token counts and list prices, or configured organization rates. It is an estimate; the provider's billing record remains the authority.

Use the session view to find changes in behavior: more output, more repeated context, or cache rebuilds. For a repeatable comparison, run the same bounded task twice, record the model and token categories, and compare useful results rather than only elapsed time.

/usage

Use ccusage to inspect local history

ccusage helps group available local records into daily or monthly reports. With ccusage installed, the commands below compare its automatic mode with token-based recalculation. Start with a known date range and keep the mode consistent when comparing periods.

In auto mode, ccusage uses a recorded cost when available and calculates a fallback otherwise. calculate mode recomputes from token counts. display mode uses recorded costs only and may show zero when a cost is absent. A displayed zero therefore is not proof of free usage.

Local records can be incomplete across devices, deleted sessions, or routes. Treat a report as an explanation of the available activity, then check differences against the billing source. Avoid uploading session logs just to obtain a cost summary; logs can contain project content.

ccusage daily --mode auto
ccusage monthly --mode calculate --breakdown

Build a budget from a representative task

Choose a useful unit, such as one reviewed pull request or one completed support task. Record the full task cost, including failed attempts, follow-up prompts, and parallel work. A low cost per model call can hide a high cost per accepted result.

For a first scenario, enter average input, output, request count, and cache-token shares into our LLM cost calculator. Change one assumption at a time: output length, retries, or reuse. Keep subscription fees and non-token charges in separate budget lines so they are not counted twice.

  • Sample several tasks, including one difficult case.
  • Keep the model and pricing date with each estimate.
  • Record attempts per accepted result, not only tokens per call.
  • Reconcile the same period after billing data has arrived.

What Quota Monitor can verify

Quota Monitor's Anthropic integration reads reported API costs and official spend-limit information through an Admin API Key. It does not read Claude Pro or Max allowance, prepaid credit balances, or local Claude Code session files.

Use ccusage or Claude Code for local task analysis, the API pricing calculator for scenarios, and the provider integration for the supported organization cost scope. The Anthropic guide explains permissions, workspace selection, reporting delays, and the current verification status before you connect an account.

Common questions

Does a $100 session estimate mean I owe $100 on my subscription?
Not by itself. Confirm the authentication route, included plan usage, and whether separately billed usage is enabled. A token-equivalent estimate is not a subscription invoice.
Why can ccusage differ from the provider console?
Check local record coverage, the selected cost mode, model prices, dates and time zones, organization scope, and billing delays. Compare the same activity before concluding that either total is wrong.

Sources