AI bill analysis

Analyze
your AI bill.

Upload supported billing exports to see reported costs by provider, model or project. Files are processed in browser memory; review missing data and decide what to test next.

Explore model prices Analyze your own spend

Your bill stays in this browser. Selected files are processed in memory. Reload or clear to remove them. Export only when you choose.

01 / Upload files

Upload your billing exports

OpenRouter CSV · OpenAI usage / cost JSON · Anthropic analytics JSON · ccusage Claude/Codex daily JSON · normalized CSV. Up to 20 files, 5 MB each. Processing happens in this browser.

Supported exports and sample data

Explore sample data first, or upload a supported export to replace it with your own data. Review coverage warnings before comparing costs.

Download sample CSV · Read the supported format guide

For a spreadsheet, use the normalized CSV columns in the guide. Leave unknown values blank; zero means a measured zero. Usage and cost reports can describe different scopes. Credits, taxes and refunds still need invoice reconciliation.

Sample dataEvery amount below is synthetic sample data. Your first successful upload replaces the sample.
3 selected exports
Synthetic OpenRouter activity.csvOpenRouter CSV · 2 rows
Synthetic OpenAI costs.jsonOpenAI costs JSON · 1 rows
Synthetic Anthropic costs.jsonAnthropic analytics cost JSON · 1 rows
Reported API cost
$27.80

Selected exports, after duplicate and overlap checks. Currencies stay separate.

Input / output tokens1.3M / 250,000

200,000 cache-read tokens reported

Known input: 2/2 rows; output: 2/2; cache reads: 2/2. Totals sum known values only.

Evidence coverage4 / 4

rows with reported cost · 2 with token data

02 / Cost breakdown

Costs by provider, model or project

Reported spend by provider

openai$12.50
anthropic$8.25
openrouter$7.05

Missing model or project names stay “Unknown.” A provider cost export may report dollars without a model or project breakdown.

03 / Findings and next steps

What your data shows

observed

Start with recorded spend

4 accepted money rows are grouped below. Different currencies are kept separate; these are reported costs, not a reconciled payable invoice.

Next stepCompare this period and currency with the provider invoice, including credits and tax.
missing data

Some spend has no model or project attribution

Missing source dimensions remain unattributed. A project or model is not inferred from a price, API-key name or neighbouring usage report.

Next stepExport cost grouped by project/workspace and model where the provider supports it.
conditional

Test the work before changing the model

Price alone does not establish quality, latency, reliability or suitability. The price explorer can model an editable future text workload; that is not verified savings on this bill.

Next stepChoose one repeatable task, record quality and latency targets, then compare candidates on a small evaluation set.
04 / Estimate future usage cost

Estimate a future workload

Use your reported token mix to explore a future volume through OpenRouter. This changes billing channel if your exports came from another provider. It does not reconcile a past invoice or verify savings.

More usage detail is needed for a fair comparison.

We need request counts, input/output, cache reads and confirmed zero cache writes on the accepted usage rows. Duplicate or overlapping usage is excluded automatically. Missing data stays unknown.

Enter workload assumptions in the price calculator →

Price catalogue: OpenRouter · observed Nov 7, 2026, 7:28 AM UTC

Choose your next step

Review your largest costs and any missing data, choose one change to test, then download your analysis before closing this tab. Reloading clears your workspace. Keep the report to compare with your next billing period.

Continue with your assistant or local dashboard · Tell us what helped or where you got stuck

For feedback, describe the format and the decision you wanted to make. Please leave out bill files, credentials and private project details. Email opens your mail app; nothing is attached automatically.

Recurring plans

Add recurring subscriptions

Add ChatGPT, Claude, Cursor or another recurring plan manually. Annual plans are divided by 12. Subscription totals stay separate from reported API cost.

No subscriptions added yet. Add a plan and its seat count to see its monthly cost. Check actual usage before cancelling a plan.

Download your analysis

Export a report for your team or an AI assistant. Review it before sharing.

Stay on top of the bill

What AI costs, once a month.

Each issue reports what changed and what it means for a builder — every figure linked and dated. This sends only the address you type; your exports never leave this browser.

Use it where you work

Analyze bills with your AI assistant

The bill-analysis skill and local MCP use this analysis engine. Your MCP client receives the data you give it; check your assistant’s own data settings.

Download skill ↗Local MCP setup ↗