The invoice nobody could explain
The first AI bill that makes someone flinch is rarely the biggest one. It is the one where nobody in the room can say which agent spent it, on whose behalf, doing what. That is not an accounting problem. It is the same governance gap, arriving with a number attached.

A founder I spoke to budgeted five euros to try something. The run consumed eleven million tokens before anyone noticed.
The amount is not the interesting part. Plenty of teams could absorb it. What made it memorable was the twenty minutes afterwards, when four competent engineers sat around a dashboard and could not say which agent had done it, on whose behalf, or what it had been trying to achieve.
That is not an accounting problem. It is the governance gap, showing up with a number attached, which is why it tends to be the first one anybody actually feels.
Why the question is genuinely hard to answer#
Token spend attributes to a turn. A turn is a model call, and a model call has a timestamp, a token count and a model name. Everything a finance person would want to know about it lives one layer up, and by default nothing carries it down.
Whose work was this? A turn started by a person is attributable. A turn started by another agent, or by a schedule, has no person on it at all, and most of the interesting spend is exactly that: chains, retries, background jobs, an agent that woke up at three in the morning and did nine hundred turns.
What was it for? The model call knows it produced 40,000 tokens. It does not know it was the fourth attempt at the same failing task.
Which agent? If every agent in the company presents the same organisation-wide API key, they are indistinguishable at the provider. The invoice is correct and it is one line.
A dashboard is the wrong shape for this#
Cost tooling almost always arrives as reporting. Charts, breakdowns, a monthly trend, maybe an alert at eighty percent.
All of it happens after the money is gone. That is fine for a cloud bill, where spend is a slow curve you can steer next quarter. It is the wrong shape for agents, because an agent's spend is not a curve. It is a step function that happens while you are at lunch, and the failure mode is not gradual overspend but one loop that runs eleven million tokens deep before a human looks at anything.
An alert at eighty percent of a budget is a notification that you have already spent eighty percent of a budget.
Cost is not a separate feature#
Here is the part that took us a while to see, and it is why cost is not a module bolted onto a governance product.
The model is a resource, reached through a credential. Exactly like your database, your git host, your internal API. Which means it is already covered by the model that governs everything else: scope the key, gate the door, keep the record.
Issue a model key per agent rather than one for the whole company, and three things become true at once, for free:
Metered. Every call carries which agent made it, because they no longer share a credential.
Attributed. The spend joins the audit record, so "which agent, for whom, doing what" is one query rather than an investigation. The doing what comes from the action the turn was taking, which the record already has.
Capped. A budget stops being a threshold you get notified about and becomes a limit at the credential. The eleven-millionth token does not get spent and then reported. It does not leave.
That last distinction is the whole argument. A dashboard tells you what happened. A key decides what is allowed to happen, and the difference is measured in the amount of money you get back.
What this does not do, precisely#
Three limits worth stating plainly, because cost is exactly the area where products overpromise.
The number is an estimate, not a bill. We price each token class at its published rate, which is close but is not your invoice: it is list price, it misses calls the provider returns no usage for, and a negotiated rate will not be reflected. Use it to steer, reconcile against the provider for accounting.
Attribution to a person is best effort. A turn a human started carries that person. A delegated sub-turn, a cron run or a background chain does not, and rather than guess we show those as the agent's own. Per-agent attribution is solid. Per-person is honest about where it stops.
A flat-rate subscription exposes no per-call cost at all. If a developer is using a seat-priced tool, there is no per-turn number to meter, because the provider does not expose one. Those show as activity, never as spend, and any vendor showing you a euro figure for them is inventing it.
Why this is usually the first door#
Most companies do not start an AI governance project because of a policy. They start it because something happened, and the cheapest version of "something happened" is a bill.
It is the pain a technical buyer feels this month rather than at the next audit, it comes with a number that makes the conversation concrete, and it is the one flavour of this problem that a CFO will also ask about. Governance arrives afterwards, as the thing that was underneath it the whole time.
If your last AI invoice took more than a minute to explain, the map of what is actually running is available in about a day.