We handed four AIs the same $21K AI bill
and said: find the waste.
One month of a real-shaped AI invoice — 18 line items, six planted problems, a fistful of look-alike decoys. Same prompt, four models, one shot each. We stripped the labels off the audits. Guess which auditor ran up the biggest bill of its own — then see what each one actually caught.
The best audit cost eight cents and found half the bill was waste.
$0.0786 in, $10,777 per month out. That is the entire pitch for reading your own bill with the right model.
Annualize it. Six planted problems, $10,777/mo of live spend — that's $129,324 a year hiding in one month's invoice. The audit that surfaced it cost less than a tenth of a cent per dollar recovered. The most expensive audit in the field charged 2.5× as much and still walked past the single biggest lever.
You are a FinOps auditor. Here is one month of a company's AI usage: an $21,419.12 invoice and an 18-row aggregated request log (API key, model, volume, tokens, cache-read %, notes). Find the waste — line items where the company is overpaying for the result it needs. For each finding, name the mechanism, cite the row(s), and estimate the dollars per month. Do not flag correct, right-sized spend. Return a prioritized teardown.
Six real problems were planted in the log. Here's who caught what.
Every finding had to name the mechanism, cite the row, and land a dollar figure within 40% of truth to count. Green check = caught it. Red = walked past it.
| Planted problem | Monthly waste | A | B | C | D |
|---|---|---|---|---|---|
| Frontier model on a nightly classification crongpt-5.5 emitting a 10-token label, ~50k calls/day — a nano job | $3,862/mo | ✓ | ✕ | ✓ | ✕ |
| Responder resends a 12K system prompt uncached0% cache read on a prompt its twin row caches at 92% | $2,902/mo | ✓ | ✓ | ✓ | ✓ |
| Duplicate retries from a 28s timeout~8% same-payload dupes auto-retried against another endpoint | $979/mo | ✓ | ✓ | ✓ | ✓ |
| Staging key hitting the paid frontier model 24/7synthetic keepalive on claude-opus-4.8 — never customer traffic | $1,125/mo | ✓ | ✓ | ✓ | ✓ |
| Summarizer writing 3,400 tokens the UI throws awayoutput truncated to ~75 tokens before display — 98% discarded | $1,323/mo | ✓ | ✓ | ✓ | ✓ |
| Embeddings reindex for a feature sunset in April100k/day reindex of an index that's never queried anymore | $585/mo | ✓ | ✓ | ✓ | ✓ |
| Found | out of 6 | 6 | 5 | 6 | 5 |
The honest part: nobody hallucinated waste.
We salted the log with seven decoy rows — line items engineered to look wasteful but that are actually correct: a big responder that is cached, the priciest model doing genuinely hard escalations, high-volume nano jobs that are already right-sized. Flagging any of them as waste would be a false positive.
All four auditors held the line. Zero decoys claimed, across the board — every model scored 1.0 precision. The gap between them wasn't over-claiming; it was whether they had the nerve to call the biggest lever without a replacement model spelled out for them.
- ✕The cached twin. Same 12K prompt as the wasteful row — but at 92% cache read. Correct, not waste.
- ✕Frontier model on hard escalations. The priciest model, but on 700/day genuinely escalated tickets at 70% cache. Justified.
- ✕Volume ≠ waste. 90k–130k/day on nano models with tiny tokens and high cache. Cheap and right.
- ✕The live reindex. Same shape as the sunset job — but this index is still queried. Legit.
The sharpest line from each blind auditor.
Verbatim from the run. Two nailed the frontier-cron lever; two wrote a tight finding but left the biggest dollar on the table.
R02: 12,000-token static system prompt resent uncached. R02 bills at 0% cache-read while R07 hits 92% on the same prompt. This is a config bug, not a different workload. Savings: $2,272.86 — the row is paying ~4.6× what R07 pays per identical prompt.
R01 classification cron: 50,000/day, 910 prompt tok, 10 completion tok — a single class label — 0% cache, on the most expensive general model. = $3,862.50/mo. Moved to nano (same tokens) = $142.50/mo, saving ~$3,720/mo. R08 and R12 already run this class of job on nano.
R04 — staging synthetic keepalive on production frontier model, $1,125.00/month. A staging/test key sending synthetic keepalive traffic to the most expensive listed model. 100% waste.
R02: Uncached Support-Chat Responder — $2,272.86/month. Resends a 12,000-token static system prompt at cache_read 0%. If it cached at 92% like R07, its input rate drops from $3.00/M to $0.528/M. The delta is the waste.
What each blind audit cost to run, cheapest to priciest. Two auditors found every dollar of waste; two found five of six — and the price of the audit didn't track the quality of the audit at all.
| Auditor | Issues found | Waste surfaced | Cost to run | vs cheapest |
|---|---|---|---|---|
| Auditor DCHEAPEST | 5 of 6 | $6,915/mo | $0.0426 | 1× |
| Auditor C | 6 of 6 | $10,777/mo | $0.0786 | 1.8× |
| Auditor A | 6 of 6 | $10,777/mo | $0.0965 | 2.3× |
| Auditor BPRICIEST | 5 of 6 | $6,915/mo | $0.1940 | 4.6× |
Four leading models ran these audits — Claude Fable 5, Claude Opus 4.8, GPT-5.5, and one more. We're not telling you which auditor is which, on purpose. Note the shape: the priciest run (4.6× the cheapest) tied for the lowest score, and the cheapest run matched it dollar-for-dollar. Paying more bought nothing here.
It's routing — always sending the job to the cheapest model that clears the bar.
Two of these four found all six issues. One of the two cost 2.5× less than the priciest run that found fewer. If you'd hard-coded to a brand name, you had a coin-flip chance of buying the worse audit for more money. Routing removes the coin flip. Pareto sends each job to the cheapest model that clears your quality bar and hands you one endpoint — you land on the low number without giving up the result.
And yes — this teardown is literally our product. Reading an AI bill and routing away the waste is the job Pareto does every night. We ran it blind, published the prices, and named the models as a set with no mapping. Judge the routing logic, not the logo.
How the teardown was run.
One shot each
Identical prompt, identical invoice + 18-row log. No cherry-picking. Each teardown is exactly what the model returned in a single pass.
Scored against a key
Six planted problems, seven decoys. A finding counts only if it names the mechanism, cites the row, and lands a dollar figure within 40% of truth. Flagging a decoy is a hallucination.
Real bills, one yardstick
Cost = each audit's real token usage × the model's published rate. Same math for all four. Run date 2026-07-04.
Labels withheld on purpose
We don't map model to auditor. Price is revealed; identity isn't. If the expensive run were obviously better, we'd have shown you. It wasn't.
Honest run note. Two audits ran as Claude agent runs via the Anthropic API; GPT-5.5 and one more ran through our at-cost gateway. Same prompt, one shot each. Cost yardstick: the two Claude runs are priced at delivered output chars ÷ 4 tokens × published rate ($50/M out for one, $25/M out for the other); GPT-5.5 at real usage tokens × $30/M out + $2.50/M in; the fourth (GLM route) at real usage tokens × $3/M out + $0.93/M in. Invoice under audit reconciles to $21,419.12 to the cent.
Send us your AI bill.
We'll run this exact teardown on your real usage — free. What you're spending, where it's leaking, what a router would have paid instead. Receipts attached, no logo attached.