MMNTM logo
Analysis

Nobody Can Forecast Their AI Bill

Token prices fell 53% in three months and almost no company can forecast its AI bill. Measured data from a production agent shows why, and how to budget by cost per correct answer.

MMNTM Research
12 min read
#AI Economics#AI Agents#FinOps#Cost Optimization#Production

Token Prices Fell 53% and the Bill Got Harder to Predict

The LLM Token Expenditure Index, which CNBC reported on September 1, put the average price of a million tokens at $0.97. Its high was $2.07 on May 28. That is a 53% fall in three months. Two months later Apple cut some engineers' daily AI cap from $300 to $200 and said it plans to go as low as $100. Prices fell. Bills did not.

of 396 businesses could forecast their AI costs

11%

Within 10%, self-reported, surveyed April and May 2026 (Benchmarkit and Mavvrik, as reported by the Wall Street Journal). Down from 15% in 2025.

of model pairs where the cheaper model cost more

32%

106 of 336 comparisons: 8 reasoning models, 12 tasks. Chen et al., arXiv 2603.23971

average cost per million tokens, May 28 to September 1

$2.07 to $0.97

LLM Token Expenditure Index, via CNBC

Apple's daily AI cap for some engineers

$300 to $200

Planned: $100. Bloomberg, November 4

These facts do not conflict. They are one fact seen from two ends: the price list is not the bill. A company buys a finished, correct task. A vendor sells tokens. How many tokens a task takes, and how many tries until it is right, is not on the price list.

Jevons saw the same gap in coal in 1865. Cheaper steam engines did not cut coal use.

”

"It is wholly a confusion of ideas to suppose that the economical use of fuels is equivalent to a diminished consumption. The very contrary is the truth. As a rule, new modes of economy will lead to an increase of consumption according to a principle recognized in many parallel instances" — Stanley Jevons (1865), quoted in Vaclav Smil, Energy and Civilization (§ "Power densities of phytomass fuels")

Revolut shows it today. It moved coding to self-hosted GLM models at about $0.30 per million tokens, roughly a tenth of what commercial tools cost, and cut inference costs about 90% in under a year. Its AI infrastructure lead told The Register that engineers then used tokens more freely, mostly on debugging and tickets.

You Pay for Tokens and Buy Finished Work

The Stanford-led paper behind the Journal's 32% figure, with authors from Microsoft Research and Berkeley, measured what a rate card hides. Gemini 3 Flash listed 80% cheaper than GPT-5.4. Across the paper's tasks it cost 38% more. On one problem Gemini 3 Flash spent more than 60,000 thinking tokens where GPT-5.4 spent 25. On one agent task, a stronger model finished in 85 steps for about $1. The cheaper model took nearly 1,000 steps, ran up $14, and failed.

The same query on the same model varied in cost by up to 9.7 times across repeated runs. You cannot forecast that from a task count.

The paper measured cost, not correctness, so 32% understates the damage: a cheap run that fails costs its tokens, then a retry or a person.

Agents are where this matters most. SemiAnalysis estimates about 90% of Anthropic's business comes from agentic use (Financial Times, October 1), and agent runs are the workloads where tokens per task swing most. Apollo's Torsten Slok wrote on October 24 that outside tech AI has not paid off yet and that mainstream firms treat token spend as a cost that squeezes margins. Finance sees a cost center, a vendor that bills by the token and an agent whose use varies tenfold. It cannot forecast that.

What this piece adds. Cost Per Completed Task gave the formula, with illustrative success rates. The $100 Task listed where tokens go and which levers cut them. This piece adds measured numbers from one production agent, the variance that breaks forecasts, the tail that breaks budgets, and a budget built per task instead of per token.

One Agent, Four Days: Cost Per Correct Answer Moved 17x

MMNTM runs Clive, a Hermes agent that does a sales manager's admin work on a Medicare sales floor of about 20 reps. The HIPAA-ready build covers its design. Clive hands data questions to an analyst sub-agent, and we grade the analyst on a set of about 30 known-answer questions. We ran it four times in four days.

Analyst eval runs, November 8 to 11

FeatureCorrectRun costCost per correctMean time per item
Nov 8, Gemini Flash27 of 29$0.99$0.03771 s
Nov 10, Gemini Flash, updated skill28 of 30$2.02$0.072101 s
Nov 11, GPT-6 Luna22 of 29$0.09$0.004225 s
Nov 11, GPT-6.1 Sol, medium effort25 of 29$1.56$0.06219 s

Costs are Hermes's estimates from its own price table, not reconciled with an invoice. Each row is one run of about 30 questions, so small gaps between rows are noise. The large ones are not.

Two things moved the number. Between November 8 and 10 the model and its price list did not change, and cost per correct answer doubled. A skill update changed what "the floor" means, and the analyst used about twice the input tokens an item: 66,500, against about 36,500 on the earlier run. A definition changed, and the bill followed.

Then we changed the model and gave the analyst its tools directly. Luna costs $0.0042 per correct answer and Sol $0.062, a 15-fold gap on the same questions. Across the four runs the range is 17 to 1. A forecast made on November 8 from the price list was wrong by November 10.

Cheaper Per Correct Answer Can Still Lose

Luna cost 15 times less per correct answer than Sol. That runs against the Stanford result, where the cheaper model cost more. It still lost on the measure that matters.

Luna got 22 of 29 right. Sol got 25. Luna's misses included summing every agent where the answer key wanted sales teams only, and a daily sales count of 588 where the board says 567. Those are wrong figures a manager might act on.

Clive's cost and value model scores each answer by how much of it a manager can use. A figure used as it came scores 1.0. A light edit scores 0.7, a rewrite 0.3, an ignored answer 0. A wrong figure that reaches a manager scores −5, because one bad number in a director's update costs more than a week of good posts earns.

Put a stand-in value of $0.50 on a correct answer, about 36 seconds of a manager's time at $50 an hour. Sol's extra $1.47 over the 29 questions buys three more correct answers, worth $1.50. Score each of the three avoided misses at −5 and it also avoids $7.50 of harm. A manager would catch some misses, so the harm is smaller, but the sign holds. Luna saves five cents a question. Its three extra misses cost far more.

”

"If the outcome of a decision in question is highly uncertain and has significant consequences, then measurements that reduce uncertainty about it have a high value." — Douglas W. Hubbard, How to Measure Anything (§ "The Proposal: It's about Decisions")

So neither the price list nor dollars per correct answer ranks the models. Value net of wrong answers does, and you get it only by deciding what a right answer is worth and what a wrong one costs. Most teams skip that step because it needs a number nobody wants to own. The −5 is a guess. Argue about it; an argued-over number beats a missing one.

The analyst runs on Sol for a second reason the table hides: on November 8, Flash stalled and fell back to another model on 17 of 29 eval items.

Agents Add a Tail, and the Tail Is Where the Surprise Lives

Averages hide the runs that break a budget. In the analyst's eval, mean input per item was 36,515 tokens and the 95th percentile was 113,466, three times higher. Averages Lie covers why agent cost has a fat tail. Clive showed it two ways.

The first live Slack request, a team's day with a chart, took 68 minutes and 23 model calls and cost $0.16. Twelve of the calls went to Gemini and carried 186,582 input tokens. A typical analyst answer costs about 3.7 cents, so the runaway cost four times the norm in dollars, and about 57 times the mean eval item in time. Two causes: a clarification step held the turn for up to an hour, and the instructions never defined "usual level," so the analyst stopped to ask. We fixed both in configuration. Neither fix has met a live request yet.

At Flash prices that tail is cents. Price the same 186,582 input tokens at the $1.50 per million that Google set for Gemini 4 Hydrogen on November 12, before caching and output, and the input alone costs $0.28. The tail's size in dollars depends on a price you do not control and that changed this week.

A timeout does not stop the meter. Vertex's shared pool showed a median call of 3.4 seconds, a 90th percentile of 34 seconds and a 99th of 300 seconds. A call cancelled at a stall limit is probably still billed. A stall limit saves the manager's time. A cost ceiling has to stop spending, and only the ceiling does that.

The second example is a blind spot. Vertex returned 429 capacity errors on 133 of 2,904 Flash calls over a week, 4.6%. When that happens Hermes falls back to the next model in its chain, which until this week was an OpenAI model. OpenAI bills outside Google's billing export and Google's budgets, so a capacity problem at one vendor shows up as spend at another, in a system your budget alerts do not watch. Our fix is blunt. Every five minutes the agent's heartbeat reports its OpenAI spend over the last 24 hours, and an alert fires above $5 a day.

The Google budget has its own flaw. It is $150 a month, set for one team's testing. Nine teams at the expected rate would pass it, so its alerts would fire with nothing wrong. Cache hit rate also moves the bill and is not yours to set: about half the analyst's input on Gemini came from cache, and about 86% of Luna's once we set a cache key.

Budget by Task, and Let the Ratio Say Where to Spend

The budget for Clive is a table, one row per task. Each row has the minutes of manager time the task replaces, the value of those minutes at quality 1.0, the model cost, and the ratio. Minutes come from the job description, not from what managers happen to do. The cost column rests on measured eval costs, with a likely range because the routines have not yet run with a model. Read it as a budget we set, not a result.

One team, one day: value against model cost

FeatureMinutes replacedValue at $50 an hourLikely model costRatio
Morning post17$14$0.03 to $0.10140 to 1 or better
Huddle list with reasons15$12$0.03 to $0.10120 to 1
Noon review and update17$14$0.03 to $0.10140 to 1
Coaching entries drafted (8)15 of 30$12$0.2450 to 1
Scheduled checks (code, no model)20$17About nothingVery large
Questions on demand (about 10)5 to 10$4 to $8$0.10 to $0.4020 to 1
TotalAbout 95About $75$0.50 to $1.00About 100 to 1

Three things follow.

Model cost is not the constraint. Quality is. At 100 to 1, doubling a task's spend pays if it lifts quality by one point in a hundred. The budget's job is to catch the runaway, not to save cents.

One wrong figure can erase a day. The morning post is worth $14 at quality 1.0. A wrong figure in it scores −5, which is −$70, about the value of everything Clive does for the team that day.

Questions on demand have the worst ratio. Routines have a fixed shape. A question is open-ended, so it carries the tail.

Each task also gets a ceiling per run. A ceiling stops the task and reports it. It is a line, not a target.

Starting ceilings, set loose on purpose

FeatureCeilingExpected
Question answered from a report$0.05$0.01
Question sent to the analyst$0.25$0.05
Scheduled post$0.15$0.03
Weekly trends run, per team$0.75$0.25
Coaching entry drafted$0.05$0.02
One team, one month$50$20
Nine teams, one month$450$180

After two weeks of data, set each ceiling to three times the median cost of runs a manager used. Where quality is under 0.7, spend more before spending less. Stop any task whose ratio stays under 5 to 1 after tuning, because it is not worth a manager's attention.

The monthly figure a CFO asks for falls out of the rows: runs times expected cost is the forecast, and runs times ceiling is the worst case you will allow. Finance gets a range, and you can defend both ends.

Per-Person Caps Are the Blunt Version

Apple's cap is the same instinct with the wrong denominator. Bloomberg reported on November 4 that some engineers' daily limit went from $300 to $200, with $100 planned, and its reporter Mark Gurman added that other teams could see $25. A $300 day allows about $6,300 over 21 working days.

A cap per person bounds the damage and says nothing about where the money went. It cannot tell a $300 day that fixed an outage from one that ran a loop, and it makes the engineer ration instead of work. Revolut began with strict limits after some engineers spent $1,000 to $10,000 a month with little return, and lifted them once tokens were cheap.

A ceiling per task keeps the cap and fixes the denominator. It says what one unit of work may cost, so a person can do as many units as the work needs. A spend ceiling also belongs in the environment, not the prompt, for the reason Rogue Agents gives about every limit that matters.

Revolut also changed the forecasting problem. Its self-hosted GLM runs on 56 Nvidia B200 GPUs, so in effect the per-token bill became a capacity bill that does not move with tokens per task. That trades a variable cost for a fixed one, and it costs some capability: a router sends vision queries to Gemini or GPT Luna because GLM is text only. For steady, high-volume work that is a forecast you can sign.

Fixed-Answer Questions Do Not Need a Chat Model

Many agent calls are choices, not open questions: is this a report or an analyst question, does this message pass policy, which tool next. A chat model answers each by generating text, and generated text is the unpredictable part of the bill.

Both major vendors now sell the narrow tool. Google launched the Gemini Decisions API this week. It scores a fixed set of options and returns probabilities with a confidence from 0 to 1. A request can carry up to 1,000 questions over one shared input, billed once, at $0.10 per million input tokens and nothing for output, with end-to-end latency of 150 to 250 milliseconds. OpenAI made its Decisions API generally available on October 22 at the same $0.10 per million input tokens with no output charge, built on a reconfigured Luna model with latency of 100 to 180 milliseconds (TechCrunch).

For forecasting, what matters is the shape of the cost. With no generated output, a call cannot run away. Cost is a function of input size, which you control. The confidence score gives you a gate: act when it is high, escalate to the larger model when it is not.

Clive's routing step costs 0.3 to 3.5 cents a call today. A 2,000-token classification at $0.10 per million is $0.0002, 15 to 175 times less. That is list-price arithmetic, not a test. A decision endpoint will not do the analyst's work, only the sorting in front of it.

How to Build an AI Budget You Can Forecast

1

Tag every call with its task

Each model call carries the task name, its trigger, the path, the team, the stage (parse, write, query, retry) and the model, flagged when it was not the first choice. Clive's hook writes one row per call: tokens in and out, cached tokens, seconds, estimated cost. Drive untagged calls to zero. Spend you cannot name is spend you cannot judge. Tagging takes an afternoon, and the usual objection is cost.

2

Measure cost per correct answer, per task and per model

Build a known-answer set of about 30 items per task type and run it. At about $2 a run it is the cheapest forecast input you can buy. Run it again whenever the prompt, skill, tools or model change, because any of them can double the figure. Price the wrong answer at the same time: what a good output is worth, what a bad one that gets through costs.

3

Set a ceiling per task and per request

Start loose, then tighten to three times the median cost of runs people used. The ceiling stops the run and reports it. Cap the request as well as the task, because the runaway lives in one request.

4

Alert on the tail, not the mean

Watch the worst run against the median for each task, the count of untagged calls, and daily spend at each vendor from that vendor's own numbers, since your cloud budget cannot see the others. Alert when a task's worst run sits far from its median. That gap is a loop.

5

Route fixed-answer questions to decision endpoints or code

Anything with a closed set of answers goes to a decision model or a plain function. Keep the chat model for work that needs words. Test it first. We have not.

6

Review monthly, by ratio

Read one table: runs, cost per run, worst run, share of output used, quality, value, ratio, and runs stopped by a ceiling. Fix tasks whose ratio is falling. Stop tasks that stay under 5 to 1. Re-run the eval when a vendor changes a list price or ships a model, such as Gemini 4 Hydrogen, which Google presents as an upgrade on 3.8 Flash.

Hubbard's answer to "too expensive" fits step 1:

”

"If someone says a measurement would be too expensive, we have to ask, “Compared to what?” If a measurement that would just reduce uncertainty by half costs $50,000 but the EVPI is $5,000,000, then the measurement certainly is not “too expensive.” Indeed, it would be a bargain." — Douglas W. Hubbard, How to Measure Anything (§ "The Imperfect World: The Value of Partial Uncertainty Reduction")

Compared to a bill you cannot explain, an afternoon of tagging is cheap.

What to Do Monday

  • List your three highest-volume agent tasks and tag every model call with one of them.
  • Run 30 known-answer items per task and write down cost per correct answer.
  • Put a number on a wrong answer that reaches a person. Use −5 if you have no better one.
  • Set a ceiling on each task and on each request, and make it stop the run.
  • Add a daily-spend alert at every vendor your cloud budget cannot see.
  • Tell finance a range, with the ceiling as its top.

Limits of this evidence: each eval row is one run of about 30 questions, the costs are Hermes's estimates and not invoices, Clive's routines have not yet run with a model, and the $50 an hour and $0.50 an answer are stand-ins. The direction of the argument does not depend on them. The sizes do.

Technical Deep Dive9 min

The CPCT Standard: Why Cost-Per-Token is a Vanity Metric

Cost-per-token is the new "hits per second"—a vanity metric that obfuscates business health. The "cheap" model that fails 50% of the time costs 3.75x more than the premium alternative.

Read
Technical Deep Dive13 min

The $100 Task: How Production Teams Cut Agent Costs by 10x

Where tokens actually go in agent workflows, and the caching, routing, and architectural patterns that reduce costs by an order of magnitude.

Read
Technical Deep Dive10 min

Averages Lie: Agent Fleets Live in Extremistan

Your agent dashboard reports a mean. For a power-law distribution the mean is finite and arbitrarily misleading — and every intervention derived from it targets the wrong thing.

Read
Technical Deep Dive13 min

Building a HIPAA-Ready AI Agent on GCP with Hermes

A case study of Clive, a Hermes agent built in nine days to read company data under a BAA-only, read-only, egress-locked design, with real latency, cost and eval numbers.

Read
Analysis12 min

The Agent Was Only Collecting Data: Containment Is Not a Prompt

OpenAI research agents sent to fetch public data broke into government sites and a Medicare portal. Nobody told them to. What the incidents show about containing rogue AI agents.

Read
Best Practices8 min

Agent Economics: The Unit Economics of Autonomous Work

Stop measuring cost per token. The metric that matters is Cost Per Completed Task. Here is the framework for measuring, optimizing, and governing the economics of AI agents.

Read