The formula
Capriole normalizes each supported protocol into a total input-token count and, when the selected provider reports it, a cached-input count. Cached input is a subset of total input.
For Anthropic Messages, cache creation remains 100% input. Only reported cache reads receive the 10% charged-token treatment.
Three reproducible examples
The third request has 228,897 raw input-plus-output tokens. It deducts 23,496 charged tokens because the provider reported 228,224 input tokens as cached.
Rounding happens on the cached portion of each recorded request. One cached input token therefore charges one token after
ceil(0.1), while ten cached input tokens also charge one token.
Estimate how many requests fit in 5 million charged tokens
Use the average charged-token value from your own API usage instead of guessing from raw context size.
These rows are planning arithmetic, not typical workload claims. A short classification call and a long coding-agent turn can differ by orders of magnitude. Output length, repeated context, provider-reported cache hits, and tool results all change the measured average.
Charged tokens and provider prices use different units
Official providers may publish separate prices for input, cached input, cache writes, output, tools, or long contexts. Capriole’s charged-token balance is a customer quota unit with one formula across supported public API routes.
Do not multiply charged tokens by a provider’s published input or output rate. The units describe different billing systems.
The dated API cost comparison applies this formula to one fixed 5 million-token workload and then compares the cash cost under each service.
Personal and Team balance boundaries
Included quota is consumed before the matching personal or Team top-up wallet. Purchased top-up balances persist across monthly quota periods and paid-access gaps; consuming them still requires eligible active paid access. Browser chat is separate from API accounting; coding agents count as API traffic and deduct charged tokens.
The monthly 5 million is part of the full USD 8 Premium workspace membership. It is not an unlimited API plan and should not be presented as a standalone API price.
Top-ups extend programmatic usage. They do not change the browser-chat allowance, model compatibility, or the requirement for eligible active personal or Team access.
What the API records
Capriole keeps protocol-normalized usage and charged usage as separate fields. A successful public API request can record:- normalized input tokens;
- output tokens;
- normalized input-plus-output tokens;
- provider-reported cached input tokens;
- charged tokens deducted from quota;
- the resolved model and request status.
POST /v1/chat response exposes cached_tokens and charged_tokens inside usage. Protocol-compatible Responses, Chat Completions, and Messages endpoints preserve their upstream response shapes, while Capriole records the matching charged-token value for account usage.
Confirm whether cached input reduced a charge
Open the Capriole AI API page, then use the Key, Model, and Status filters to isolate the request. Compare these columns in the usage table:
A positive cached-token value confirms that compatible provider usage metadata reported a cache hit. It does not prove that every repeated request will hit the same provider cache. Provider routing, cache lifetime, request structure, and model behavior can change the result.
For Capriole-native
POST /v1/chat, the same check is available in usage.cached_tokens and usage.charged_tokens. Other protocol responses keep their upstream schemas, so the account usage table is the consistent place to compare requests across routes.