Claude · 4 min read
I paid for Claude twice in one day. Check if you do too.
I pay for a Claude Max subscription. Yesterday I also had to top up my Anthropic API credits twice, 40 dollars in total, just to keep working. Both of those things should not be true at the same time.
Bram van Gestel · Published 2026-07-28
I have been a CTO for twenty years. I have chased weird AWS bills, forgotten staging clusters, and one NAT gateway that cost more than the feature it supported. So I thought I had seen every way to waste money on cloud services. This week I found a new one, and it was partly my own fault, which is the annoying kind.
Short version: I pay for a Claude Max subscription. Yesterday I also had to top up my Anthropic API credits twice, 40 dollars in total, just to keep working. Both of those things should not be true at the same time.

How I noticed
I use Claude Code every day, in the terminal and the desktop app. I also run a few small automation scripts against the Anthropic API. Those have their own key and cost me a couple of dollars a week. That part is known and budgeted.
Yesterday the console asked me to top up. A few hours later it asked again. 40 dollars in one day on an account that should only carry a few dollars of script traffic. My first thought was a runaway cron job. After twenty years it is always a cron job.
It was not a cron job.
What the Cost page showed
The Anthropic Console has a Cost page where you can group spend per API key. Mine showed 44.43 dollars in a single day, on a key called claude_code_key_<myemail>_srrg.
I never created that key.
Claude Code created it. If you ever sign in to Claude Code with your Anthropic Console account instead of your Claude subscription account, it makes an API key for itself and bills every session per token. Your subscription just sits there, paid for, unused. The breakdown made it obvious this was my own daily work: the big models doing the heavy lifting, a few cents of Haiku for background tasks, even 30 cents of web search.
Three things make this easy to miss. The terminal and the desktop app share the same login, so one wrong choice covers everything you do on that machine. Nothing breaks, the sessions work exactly the same, you only see it on the bill. And the key it created does not show up on the normal API keys page, because it sits in a separate workspace that Claude Code makes for itself. So you can see the key spending money on the Cost page and still not find it where you would expect to disable it. I looked twice.
The fix, five minutes
- In a terminal, run
/loginand pick the Claude account option, the subscription one. Not the Console account. Sign in with the account that actually has your subscription. In my case those were two different email addresses, which is probably how this started. - Restart the desktop app so it picks up the new login.
- Run
/statusand check that it now shows your subscription instead of an API key. - Go to Settings, then Workspaces, and look for a workspace with Claude Code in the name. The key is in there. Disable it, so if anything is still set up wrong it fails with an error instead of quietly billing you.
- Your sessions and history are stored locally, so nothing gets lost.
What I took from it
One key per system. My scripts have their own named key, and that is the only reason I could rule them out in one look instead of spending an evening digging through logs. If everything shares one key, every billing question turns into detective work.
And run /status today. It takes ten seconds. Not doing it cost me 44 dollars and a bit of pride.
Also published on The Code Frontier.