Budgets for AI revenue systems usually model the model. It is normally the smallest of five recurring lines.
The five lines
1. Model usage. Priced per token. Controllable through prompt size, choosing a smaller model for simple classification, and caching repeated context. Real but rarely dominant for revenue workloads.
2. Automation platform executions. Per task pricing that feels free at hundreds of runs and uncomfortable at hundreds of thousands. This is the line that drives teams to self host, and self hosting trades the bill for operational responsibility.
3. Channel costs. Telephony per minute, numbers per month, sending infrastructure, message fees. Predictable once volume is known, and easy to forget in the first model.
4. Enrichment per record. The one that surprises. Priced per row and scaling with list size rather than with outcomes. A list you enrich and never contact costs exactly as much as one you do.
5. Human time that did not disappear. QA, exception handling, the person who owns the system. Automation moves this cost, it does not remove it, and pretending otherwise is how projects lose credibility at the first review.
The lever that matters most
Filter before you enrich.
Every row you exclude before the enrichment step is money saved with no loss of outcome. Most lists can be cut substantially on cheap criteria such as geography, size and obvious disqualifiers before anything paid touches them.
This single discipline changes the total more than any model choice.
Control the runaway risk
The expensive incidents in this field are not gradual, they are loops. A flow that retries without a limit, a list processed twice, a webhook that fires in a cycle.
Three protections: a cap on every metered service, alerting on daily spend rather than monthly, and a hard limit on records processed per run. All three are cheap and all three are usually added after the first incident rather than before.
Measure cost per result
Cost per execution falls as you optimise and tells you nothing about whether the system is worth running. Cost per qualified conversation is the number that decides renewals and budget.
Track it monthly next to the alternative: what the same outcome costs through headcount. That comparison is the one that survives a budget review.
What to model before launch
- Expected records per month, and how many survive the filter
- Enrichment cost per surviving record
- Executions per record, times the platform rate
- Channel cost per contact attempt
- The human hours that remain
Add thirty percent. Every one of these estimates is optimistic on the first pass, and the projects that get cancelled are usually the ones that promised a number they never revisited.
