Untagged spend was 22.4 percent of our AI bill. Untagged means the spend carried no label for the job behind it. We wanted to use that meter to decide whether a second Claude subscription was actually needed.
A job nobody was running
We found a runaway. A bulk rewrite of our ticket tracker, started by a work session that had since been closed, was still going. It was burning prepaid credits and popping console windows open on the machine.
We stopped it, disabled two scheduled jobs and one plugin, and added exclusions to the machine’s antivirus. Then we added a ledger, a running list that records every prepaid AI call, so every one is visible from now on.
A separate session that traced why the machine crawled found it was creation-bound. No single process was hot. We had thirteen live sessions open, and every diagnostic tool failed silently under exactly the load it was meant to measure.
Fixing the meter first
Before touching the seat question, we fixed the cost measurement instrument, in a session of 2h 27m. Untagged spend fell to 0.7 percent. Then we used the repaired meter to answer the seat question.
The recommendation was to hold off.
A seat already bought
That recommendation turned out to be moot. The second subscription had already been bought.
We also named two smaller things while we were in there. We wrote down a rule for where records live versus where the lookup lists for them live, a rule that had gone unwritten for months. And we documented how the local quota meter actually reads. Three small carry-over defects are parked on a ticket for later.
Before you add a seat
If you are about to buy a seat, a plan or a bigger credit top-up, ask your own version of these three questions.
What share of the spend can you not account for? For us it was 22.4 percent. If you can’t name the job behind a chunk of the bill, you have no demand number yet, only a bill.
Could something be running that nobody started today? Our orphan came from a session that was already closed. Scheduled jobs and old automations keep spending after the session that started them is gone.
Can you see each call as it happens? A bill arrives after the fact. A running list of calls, like the ledger we added, shows you while it is happening.
We’re not saying to skip the purchase. We’re saying the number that justifies it has to come from a meter you trust, and ours didn’t until untagged spend dropped to 0.7 percent.
AI Skills
Use this lesson with the AI assistant you already use
Untagged spend was 22.4 percent of the AI bill when the team wanted to use that meter to decide whether a second Claude subscription was needed. Fixing the meter took a 2h 27m session and brought untagged spend down to 0.7 percent.
Paste the prompt, share only the context needed to answer it, and treat the result as a draft for your review. Do not include confidential information or let an AI assistant make changes without your approval.
Optional: for a visual report and saved memory, run /dxdev first.
Don’t have it? Get it at dxdev.com/skills/dxdev. The prompt works without it.
dxdev LESSON · paste into your AI coding agent
LESSON: Trust A Cost Meter Before Using It To Justify Buying More AI Capacity
SOURCE: dxdev.com/blog/know-what-your-ai-costs-before-buying-more
WHAT HAPPENED: While preparing to answer the seat question, the team found a runaway bulk rewrite of their ticket tracker. A work session that had since been closed had started it, and it was still burning prepaid credits. They stopped it, disabled two scheduled jobs and one plugin, added antivirus exclusions, and added a ledger that records every prepaid AI call. They then repaired the cost measurement, which cut untagged spend from 22.4 percent to 0.7 percent. The repaired meter supported a recommendation to hold off on a second seat, but that was moot because the subscription had already been bought.
THE RULE: Do not justify a spending increase with a usage number until the meter behind it accounts for nearly all of the spend. Check for spend that nobody started today, and make each call visible as it happens.
CHECK MY CODE, then report PASS or FAIL with file:line for each:
1. Measure what share of your AI spend carries no label for the job behind it, and confirm that share is small enough that you could name the job behind nearly all of the bill before approving any new seat, plan or credit top-up.
2. List every scheduled job, plugin and automation that can call a paid AI service, and confirm that each one stops spending when the session or task that started it ends.
3. Confirm that a per-call ledger records each prepaid AI request as it happens, so you can see spend in progress instead of waiting for the bill.
THEN PRINT: a table (check, PASS/FAIL, evidence, fix) + a verdict (applies / partially / OUT_OF_SCOPE / no) + the single most important next action.