Claude Code · Codex · Cursor · OpenRouter

Your AI bill came in, and you have no idea why. We'll explain.

Not "how much you spent" but "why it cost that much and what to do about it". We read the local logs of your AI tools and name the specific cause, with a dollar amount and a fix.

Work in progress. The Claude Code analyzer already works: in your browser for one session, and your file never leaves it; in the terminal for all your sessions at once: npx github:SergHomka/why-so-expensive-landing

You see the total. Not the reason.

If you pay for AI tools out of your own pocket, the bill swings from week to week and nobody tells you why.

Trackers show "how much"

There are free tools that draw nice spending charts. But they don't answer the real question: what exactly burned the money?

The cause is buried in the logs

The same file sent into context again and again, an expensive model on a trivial task, retries after errors. It's all in the logs — but nobody reads them by hand.

Why this matters more now. On August 24, 2026, Cursor switched to per-token billing. A huge audience is seeing a bill they don't understand for the first time. Cursor support comes in a later update: we start with Claude Code, where the data is exact.

On a subscription? Claude Pro and Max don't send you a bill, but the usage limit runs out by lunchtime. The causes are the same: a bloated conversation, the model going in circles, background tasks running without you. That's what we look for.

An answer in dollars, with a fix

Instead of a chart you get a diagnosis: where the money leaked, why, and how much fixing it will save.

This is a real, shortened report on the sample session from the demo. Open it in full or check your own session →

How it works

Everything runs on your machine: your logs never leave it.

  1. Reads local logs

    Claude Code and Codex write session history to disk. OpenRouter serves data via your API key. Cursor comes last.

  2. Normalizes everything into one schema

    Every event becomes a single record: model, tokens, cache, step, project, cost, and an accuracy flag.

  3. Runs ten checks

    Each check looks for its own reason the bill grows unnoticed. The checks are written once and work for every tool at the same time. All ten already work in the Claude Code demo.

    What the model rereads
    • Conversation length
    • Files reopened
    • Images in the conversation
    • Rereading discount
    How the task was set
    • Most expensive request
    • Errors and retries
    • Work with no result
    Model and settings
    • Model's thinking
    • Expensive model for small stuff
    • Forgotten background processes
  4. Answers: why, and what to do

    You get the cause, the amount, and a concrete action. Already today: in the browser for one session, or in the terminal for all of them. Next: a skill, so you can ask right inside Claude Code.

How it differs from usual trackers

Explains, doesn't just count

Totals are free these days. We answer the question that's left after you see one: why did it turn out this way?

One picture across all tools

One schema and shared rules instead of a separate tool per provider. Every new adapter gets all ten checks for free.

Your data stays with you

Analysis runs locally, no sign-up. Logs never leave your computer.

Honest about accuracy

Every number is flagged as exact or estimated. For Cursor there's no full picture locally, and we say so plainly.

Open source on GitHub

The code is open under the MIT license. The command-line version already works and is free. A Claude Code skill and an MCP server come next. A paid cloud comes later, once there's something worth storing in it.

Built by an incident investigator

Eleven years of hunting bottlenecks and dissecting outages. The diagnostic rules come from that experience, not from pretty charts.

What's next

Claude Code ships first, the rest follow

Right now I'm checking how much people need this. If it rings a bell — you recognized your own bill, want early access, or have an idea for a diagnostic rule — drop me a message.

  • 1. Claude Code
  • 2. Codex
  • 3. OpenRouter
  • 4. Cursor

Try it on all your sessions at once — in the terminal, Node.js required: npx github:SergHomka/why-so-expensive-landing