How it works

Last updated July 27, 2026

Three rungs, in order of truth

What gets read — and what never does

The engine whitelists usage fields only: token counts, model IDs, timestamps, and session identifiers. message.content— your prompts and the model's responses — is never read into normalized output. The browser can read only a folder you explicitly select through its file-access picker; that processing stays in a Web Worker. The connector path requests only127.0.0.1, which never leaves your machine.

The local connector, precisely

Exactness

Costs

Dollar figures from machine logs are API-equivalent costs, not invoices. Pricing is pinned and versioned. The formula prices uncached input, output, cache reads, five-minute writes, and one-hour writes separately. Unknown models show tokens with cost "n/a" — never a fake $0. Subscription users (Claude Max, Copilot) don't pay per token, which is why the plan-vs-API comparison exists.

Provider connections

Provider requests go directly from your browser when the provider permits it, or through the local connector. The production provider relay is disabled, so a CORS-blocked request does not send the key to Usage Radar servers. Cloud-scheduled reconciliation is not represented as available until separate consent and managed KMS-backed credential storage are configured.

Your history outlives the logs

Claude Code deletes transcripts after roughly 30 days. Usage Radar archives every deduplicated usage event in your browser's IndexedDB, so your totals keep their history even after the source logs rotate. Event-level CSV export (with dedupe keys) makes every aggregate auditable.