Free · one paste · no account
You pay a flat fee for Claude, ChatGPT or Codex. Behind that fee, your coding assistant does work that would cost real money at full price. comped adds it up from the receipts your tools already keep, gives you a score, and puts you on the leaderboard. Your logs never leave your computer.
npx. No account. No app to install.
Get your score
No app, no sign-up, nothing installed. The line downloads about 150 KB of Python into a temporary folder, reads your AI tools' logs on your own machine, prints your card, posts your score to the board, and deletes itself. That's the whole thing.
curl -fsSL https://gotcomped.com/comped.sh | sh
On a Mac: press ⌘ space, type Terminal, press Enter. Then ⌘ V and Enter. About ten seconds later you have a card. The script is sixty lines and worth a glance before you paste it.
Have node? npx comped does the same thing. Want a consent screen and a public archive to read first? Run it as a rote Play instead.
The big number is your comp score. 13× means your subscription paid for itself thirteen times over. Under it: your tier, and your rank on the leaderboard. A picture you can post lands in ~/comped/comped-card.png, a line ready to paste, rank included, in comped-share.txt, and a link to your card on this site, ready to download as a PNG.
Or don't open a terminal at all. If you live in Claude Code, Codex, Cursor or anything else that can run commands for you, paste this at it instead:
Fetch https://gotcomped.com/llms.txt and do what it says.
Your agent reads that file, runs comped the way it says to, and reads the card back to you. No account, nothing installed. It has to ask you before it puts your score on the board, and it is told in writing not to copy anything out of ~/comped into a message or a commit. Read it first; it was written to be read.
leaderboard=false stops even that. Here is exactly what goes.~/comped.Live
Every run posts one line: the score, the tier, the dollars, a name. Ranked by comp score, so a $20 plan can beat a $200 one.
You get ranked from $20 at full price over 3 active days. One row per person; a re-run replaces it. Rather not be on it? Add leaderboard=false and nothing is sent at all.
No setup
Every AI tool on your computer writes down which model answered each request. comped reads that, works out whether you're on Claude, ChatGPT, Kimi or something else, and prices every plan those companies sell. You just find your row.
→ Claude Code 98 sessions
→ Codex 12 sessions
→ Pi, OpenCode not installed
you use Claude 90% · Kimi 10%
plan Claude Max 20× assumed, not typed
$2,578 at full price · 13× comped
Claude Code, Codex, Pi and OpenCode. Whatever you have gets read. Whatever you don't is skipped, and the card says so.
Claude, GPT and Codex, Kimi, GLM, DeepSeek, Gemini, Grok, Qwen, MiniMax, Mistral. If you've pointed a tool at a different provider, that shows up too.
That's the one thing your logs don't say. So the card prices every plan at once, Pro and Max and Plus, and marks the most expensive one that fits as the safe assumption. Your real score is at least that.
A quick game
Drag to what you think a month of your AI use is worth at full price. Every plan gets scored at once, the same way the card does it. Then run the real thing and see how wrong you were.
This is just arithmetic in your browser. Nothing is sent anywhere.
How it gets the number
It reads the files your AI tools already wrote and does the sums.
Every request your AI tools make is logged on your computer, with the model used and how much it read and wrote. Nobody looks at those files. comped does, including the extra ones sub-agents leave behind.
Each request is costed at the provider's published API rates, from a price list bundled with the tool that says where it came from and when. A model it doesn't know is listed, not guessed.
Full price divided by your plan is your comp score. Under it: which AI cost what, what you keep asking your agent to do again, and what changed since you last looked.
Want the exact arithmetic, the rules for collapsing duplicate log lines, and the tests that check it all against an independent tool? That's on the developers page.
Privacy
A tool that reads your logs is asking for trust. So here is the whole deal, in plain words, and a way to check it rather than take our word for it.
Sends one thing: your score. After the card is written, one short script posts your score, tier, the full-price total, your plan, which AIs it found, the day counts and your handle to the leaderboard. Not a path, not a prompt, not a model name, not "anonymous stats". The exact payload is saved in ~/comped/comped-rank.json so you can read it. leaderboard=false means no network calls of any kind.
Never reads your login files, API keys or any credential, keychain or token file. It doesn't need them. Which AI you use comes from the logs, and your plan is never looked up, because every plan is priced instead.
Your messages are cut to 120 characters and hashed before anything is written down. Never the full text, never the code it read, never a file it edited. None of it ever appears on a card.
The code is open and has no dependencies. The part that reads your logs is tested to be unable to open a network connection at all (that test is 20 lines), and the part that posts your score is one short file you can read in five minutes.
The other thirty
Same idea every time: your machine already wrote the answer down, and nothing reads it back. Same rules every time too. Stdlib Python, no pip install, no keys, no network in any core, and a public archive you can read before you run it.
What your agents cost
comped, session-ledger, wrong-turns. The card, the one clean ledger underneath it with the duplicate log lines collapsed, and the mistakes your agent keeps repeating with a drafted rule for each.
What your machine has been hoarding
tab-debt, desktop-clutter, app-graveyard, vault-pulse, birthday-radar, receipt-ledger. Six read-only scans, each one running cold on bundled fixtures first.
Ten seconds, many times a day
whatis, is-it-secret, fits, cron-when, safe-to-commit, last-turn and six more. Small enough to run on reflex.
What your git history knows
bus-factor, night-shift, kept, upstream-pulse. Which files have one author left, when you were really working, how much agent-written code survived, and which dependency nobody maintains.
What your browser, disk and calendar hold
extension-reach, where-it-went, photo-debt, what-grew, reply-debt, standing-cost. What your extensions can see, where the quarter went, and what that recurring meeting costs per year.
Questions
No. You're on a subscription and you paid what you paid. The number is what the same work would have cost at the provider's public API prices. It's there so you can see how much your plan is actually worth to you.
Your handle (or anon-xxxx if you didn't give one), the comp score, its tier, the full-price total, the plan it was scored against and its price, which AIs and tools were found, the window in days, active days, session count, cache-read share, and a random id so a re-run replaces your row. That's the whole list. It's written to ~/comped/comped-rank.json before it's sent, so you can check.
Yes. Add leaderboard=false to the line, like this: curl -fsSL https://gotcomped.com/comped.sh | sh -s -- leaderboard=false. Then the run makes no network calls at all. Already on the board and want off? Open an issue with your handle and the row goes.
No. If you use an AI coding tool you've opened Terminal before. Copy one line, paste it, press Enter. That's it.
No. The line above installs nothing and signs you in to nothing. Without a name you go up as anon-xxxx; to claim one, put handle=yourname on the end of the line, after sh -s --: curl -fsSL https://gotcomped.com/comped.sh | sh -s -- handle=yourname. The -s -- is what makes sh pass it through, so | sh handle=yourname will not work. The leaderboard page has it as a copy button.
rote is a free command-line tool from Modiqo that runs small, versioned programs called Plays. comped is one, and running it that way gives you a consent screen listing every file it will touch, plus a public archive you can read before anything happens. It is the careful way in, and it needs a free Modiqo account. The line above is the quick way in. Same code, same card, same numbers. Both are in the docs.
Claude Code (including sub-agent transcripts), Codex CLI, Pi and OpenCode. Ones you don't have are skipped. If you've pointed one of them at another provider, like Kimi, GLM, DeepSeek or Gemini, that's found and priced too.
It doesn't, and it doesn't try to find out, because that would mean reading your account, which it refuses to do. Instead it prices every plan your provider sells and marks the most expensive one that fits. Your real score is at least that. Find your row for the exact one.
No, and neither can anything else that only reads your logs. A Pro session and a Max session look exactly the same. The only file on your computer that knows your tier is your account file, and we won't open it. So the card scores every tier and assumes the priciest one that fits, which is the smallest number you could honestly claim. Say plan=claude-pro-20 once and it remembers.
Yes, with npx comped. It needs node and Python but no Unix shell, and every commit installs and runs it on a Windows machine before it ships. The curl line is the one that needs a Unix shell, so for that use WSL. You can also download the archive, unpack it and run py comped.py.
Yes. The tool ships with sample logs. The docs have the one-liner that runs on those first.
One line, about ten seconds, no account, your logs stay home. Then see where you land.
curl -fsSL https://gotcomped.com/comped.sh | sh
Prefer a consent screen and an archive you can read first? Run it as a rote Play: curl -fsSL https://gotcomped.com/run.sh | sh, or the registry's own installer, curl -fsSL "https://play.modiqo.ai/install?play=rajkaria/comped" | sh. Already have rote? rote play run https://play.modiqo.ai/rajkaria/comped --yes.