Six licenses. One runtime. That’s the shape of most agent quotes on the table right now, and the invoice is inverted: the six licenses are the big line, and the runtime, the thing that actually consumes scarce compute, is either a rounding error or a separate purchase order nobody brought to the renewal meeting.
Microsoft published the split more clearly than anyone else did. The E7 bundle lists at $99 per user per month. To be fair to that number, it buys the whole suite, Office and Teams and the security stack, with agent capability folded in; it is the cleanest public example of the split, not a pure agent-seat price. SAMexpert’s breakdown of the license puts the split plainly: that layer grants agent capability, it does not run them. Execution bills separately, in Agent Compute Units, through a pre-purchase plan sold in blocks. Two layers, two meters, one signature.
Treat that as the reference architecture for every agent quote you get this year, whoever the vendor is.
The seat layer and the runtime layer are priced by different physics
The interface layer is software. Marginal cost of a seventh seat: approximately zero. The vendor’s cost doesn’t move when you add a user who opens the panel twice a week.
The runtime layer is electricity, silicon, and a queue. Marginal cost of the ten-thousandth agent run is real, and it’s the only part of the stack where the vendor is buying something scarce from someone else.
So when a quote grows by multiplying the free-to-produce layer and holds the expensive layer flat or unbundled, that’s not a pricing accident. That’s the whole design. You’re being metered on the thing that isn’t scarce.
Run the six seats: 6 × $99 = $594/month, $7,128/year, before a single agent executes anything. Now ask how many of those six drove an agent in the last 30 days. If it’s two, one platform engineer and one person in support automation, the real cost per active agent user is $297/month, and the other four seats bought a login.
”Per seat” hides decisions your contract already made
The phrase does a lot of undisclosed work. Per-seat licensing is an umbrella covering separate decisions about what the unit attaches to, what time window counts it, and which type of user holds it. Vendors pick one combination, print two words, and let you assume you know which one you bought.
Two of those decisions bite agent deals in particular. Named-user counts never go down mid-term; concurrent counts can, so ask which one is in your paper. It’s usually in a definitions exhibit, not the order form. And the service identity your agent runs under may be counted as a seat even though no human ever touches it. That one line can double a bill.
The runtime is getting cheaper faster than the seat is
The direction of travel is the part procurement keeps missing. Inference prices have fallen with every model generation, and a vendor’s runtime rate card follows them down inside a contract term. Per-seat list prices move once a year, and not downward.
If a seat price was originally set to recover runtime cost, and runtime cost drops 60% over a term, the seat price should move. It won’t unless you make it a renewal condition. Put a benchmark clause in: seat price adjusts with the vendor’s own published runtime rate card, or you get the delta as runtime credits.
What the seat is actually buying, and why that argument doesn’t survive contact
The strongest counterargument is real, so take it seriously: the seat isn’t paying for compute at all. It pays for identity and SSO, audit logging, data-loss prevention, admin policy, connectors into your existing data, and a support contract with a throat to choke. Those are per-human costs. Charging per human is honest.
Fine. Then price them as such, and watch the argument come apart on its own mechanism.
Governance costs scale with directory objects and policy scope, not with who happens to use an agent. If audit and DLP are what the seat buys, they should survive the removal of the agent entitlement. So ask for that quote: the seat, priced without agent capability. Most vendors won’t produce it, because the number would be embarrassing next to the one with the agent checkbox on.
The gap between those two quotes isn’t governance. It’s a right to consume, sold as a subscription. And a right to consume, when the consumption is metered separately anyway, is a toll booth on a road you already paid to drive.
The vendor’s own bundle proves this. E7’s seat layer explicitly doesn’t execute agents. The execution meter is a different SKU with a different plan. Every argument that the seat covers runtime is refuted by the price page it came from.
The worksheet to take into the renewal
Split the quote before you sign it. It fits in your head. Do it on paper anyway, before you sign:
// renewal-worksheet.ts — split the bill by layer before signing
const quote = {
seats: 6,
seatPrice: 99, // $/user/month — interface layer, ~$0 marginal cost to vendor
activeAgentUsers: 2, // drove an agent at least once in last 30 days
runtimeSpendMonthly: 0, // metered execution, separate PO
};
const seatBill = quote.seats * quote.seatPrice; // 594
const perActive = seatBill / quote.activeAgentUsers; // 297
const runtimeShare = quote.runtimeSpendMonthly /
(seatBill + quote.runtimeSpendMonthly); // 0.00
// If runtimeShare < 0.25, you are buying interface, not capability.
That last line is the test. When less than a quarter of your total agent spend is execution, the vendor has moved the money to the layer where scarcity doesn’t apply, and your growth path is buying more logins rather than more work.
In the agent pipeline I run there is no seat at all. The interface is a terminal and a queue directory, and every dollar is metered execution: drafting this post cost $1.11 in model calls, and a second operator would have added nothing to the bill.
Where this argument breaks
Three places, honestly.
Small teams under ten people often can’t get consumption pricing at all. Vendors gate metered plans behind enterprise minimums, and a flat seat price is the cheaper administrative outcome even when the unit economics are ugly. Take the seats and stop optimizing.
Regulated buyers who need contractual data residency, retention guarantees, and a named DPA are buying something the runtime layer doesn’t include. That’s a legitimate per-tenant cost that a per-seat model approximates badly but does cover.
And if your agent usage is genuinely uniform, every seat driving the runtime every day, the two models converge and the seat is just a prepaid meter with less paperwork. Usage is rarely that flat. The common shape is a few heavy operators and a long tail of people who opened the panel twice.
None of that changes the ask. Get the runtime quoted as its own line, in its own units, with its own rate card. Then look at the two numbers side by side.
Six seats at $99 is $7,128 a year. Ask your vendor what the runtime under those six seats cost last quarter. If they can’t tell you, they’re not selling you compute. And if they can, you finally know which of the two numbers to negotiate.