Field notes. John Arndt, Soxoa. Published .
Businesses spent a decade learning that SaaS subscriptions multiply quietly: a seat here, a tool there, and eventually a software line nobody can account for line by line. AI spend has the same disease with one complication. A lot of it is metered. A subscription costs the same whether you use it or not, but an API bill grows with usage, so a misconfigured automation or an over-eager feature can double your costs without anyone making a decision.
I run AI-powered software products of my own, so I pay these bills directly and I audit my own spend regularly. This post is that audit, generalized so you can run it on your business.
Know your three buckets
AI spend lands in three buckets, and they need different treatment.
The first step is listing all three with monthly figures on one page, before you form an opinion about whether the total is reasonable. The rider bucket is the easiest one to miss, because it never arrived as a new invoice.
- Per-seat subscriptions
- ChatGPT Team, Copilot, the AI add-on your CRM now charges for. Fixed cost, paid whether the seat is used or not.
- Metered API usage
- The cost behind custom automations and AI features, billed per unit of work. This is the bucket that can move without anyone touching it.
- Riders on tools you already had
- The price bump a vendor added to a plan you were already paying for, justified by AI features you may never have opened. Check this year’s renewal notice against last year’s invoice.
For subscriptions, check usage, not value
The question for a per-seat tool is not whether the tool is good. It is whether this specific person used it last month. Most AI tools have an admin panel that shows per-seat activity, so pull it before the renewal rather than after.
Dead seats are the easy part: cancel them. The harder case is the half-used seat, where someone logs in, pastes something in, gets a mediocre answer, and quietly stops, because nobody ever showed them what the tool was for. An unused seat is a cost problem. A half-used seat is a missed-return problem, and the second one is usually worth more than the first.
For metered usage, compute cost per task
Metered AI needs a unit number: what does one completed task cost? One processed document, one qualified lead, one generated report. Take the month’s bill for a single automation, divide it by the number of things that automation did, and put the result next to the minutes of staff time each one replaced. Run it per automation rather than across the whole account, or the cheap workhorse will quietly subsidize the expensive ornament.
The number tells you which way to argue. An extraction job running on real volume usually lands at a cost per document small enough that the conversation is about feeding it more work, not trimming it. A report feature that gets opened twice in a month has a cost per read of half its monthly bill, and the honest response to that is to switch it off.
When a metered bill looks bloated, three causes account for most of it.
- Schedules nobody chose
- A job running hourly because hourly was the default in the dropdown, where daily would answer the same question.
- Oversized models on simple work
- Flagship models are priced well above small ones per call, and classification, extraction, and routing rarely need the flagship. Test the small model against your real examples before assuming it cannot do the job.
- Zombie automations
- A job still running faithfully against a process that changed months ago. Nothing alerts you: the bill stays the same and the output simply stops being read.
Set caps and alarms
Every serious AI provider supports a hard spending limit and usage alerts. Set both on every account: a cap comfortably above normal use, and an alert at roughly 60 percent of the cap. That turns a runaway automation into an email on Tuesday morning instead of a surprise on the invoice.
Runaway usage is almost never gradual. It is a loop, a retry storm, or something hitting a feature far more often than a person would, and it happens between invoices. The cap is what makes the worst case survivable. The alert is what makes it boring.
Do not optimize into failure
One caution in the other direction. Downgrading the model on a task where quality is the product, customer-facing writing or anything with judgment in it, is a false economy. You pay the difference back in rework and in trust you cannot re-buy.
The pattern that works is boring: small models for high-volume mechanical work, capable models for the few tasks where the output quality is the thing you are selling. Spend follows value instead of habit.
Make it a monthly habit
Once it is set up, the monthly pass is short. What makes it fail is not difficulty. It is that nobody owns it, so it happens in month one with some enthusiasm and never again. If you want the discipline to survive the first quarter, it needs a name attached, which is the real argument for a named AI lead who is accountable month after month.
If you would rather read the bill with someone, bring one month of invoices and the one automation you already suspect. Schedule a strategy call, or start with the readiness assessment if you want to see where spend sits relative to everything else you are weighing. Scope and price are agreed before work begins.
Total the three buckets
Subscriptions, metered usage, and riders, on one page, with this month’s figures.
Check per-seat usage
Pull the admin panel for every per-seat tool and mark the seats with no meaningful activity.
Recompute cost per task
One number per metered automation, compared against last month’s number for the same automation.
Confirm the alarms are live
Caps and alerts still set, still pointing at a mailbox somebody actually reads.
Common questions
- What are the three buckets of AI spend?
- Per-seat subscriptions (ChatGPT Team, Copilot, CRM AI add-ons), metered API usage behind custom automations and AI features, and riders, meaning the price bumps vendors added to plans you already had. The first step is listing all three with monthly figures on one page. The riders are the easiest to miss, because they never arrived as a new invoice.
- How do I know if a metered AI bill is too high?
- Compute cost per completed task: divide each automation’s monthly bill by the number of things it did, per automation rather than across the whole account. Then check the three usual suspects: schedules nobody chose deliberately, oversized models doing simple work, and automations still running against a process that changed.
- How do I prevent a runaway AI bill?
- Set a hard spending cap on each API account comfortably above normal use, plus an alert at roughly 60 percent of it. It is a one-time configuration, and it turns a runaway automation into a Tuesday-morning email instead of a surprise invoice.
- Should I downgrade to cheaper AI models to save money?
- Not blindly. Use small models for high-volume mechanical work and capable models for the tasks where output quality is the product. Downgrading customer-facing or judgment-heavy work is a false economy that gets paid back in rework and damaged trust.