Mechanism
Per-seat pricing makes sense until it doesn't, and we're all pretending that's not obvious
The standard story is that per-seat is "simple" and "predictable." Management likes it. Sales can forecast. Finance sleeps better. But that's not why it's winning. It's winning because it's the only pricing model that survives contact with enterprise sales, and enterprise sales is where the money is.
I watched this happen at my last job. We had a product where maybe 15% of users actually drove value—the rest were read-only stakeholders or compliance check-ins. Per-usage would've been honest. We tried it for about four months. Then a Fortune 500 prospect asked how we'd handle a org with 50,000 employees but only 200 actual users, and our answer was basically "uh, we'd charge you like eight grand a month?" They said no. Suddenly per-seat looked a lot smarter to the business. $200,000 a year from a single contract beats $8,000 times the number of people who log in, even if the math is lunacy.
The real driver is that enterprise procurement doesn't trust variable pricing. They don't trust you to measure it honestly. They don't want surprise bills. They want a number they can budget for in November for the whole next fiscal year. A seat is observable—you can count headcount, run it against your directory, audit it. Usage requires you to trust a SaaS company's logging, and frankly, why would they? (And they're right not to. We all know companies that... creatively measure DAUs.)
So what we get is this: per-seat becomes the ceiling that wins contracts, which means companies with low seat-to-usage ratios subsidize those with high ones. Slack is probably the clearest example. Your bot infrastructure might be 80% of what Slack does for you, but you pay for humans. Actually, I wonder if that's starting to crack now that AI automation is real—suddenly "seats" means something different when half your seats are agents.
The thing that actually frustrates me is that midmarket and upmarket companies all know this pricing is dishonest. They know per-seat doesn't match their actual value, but they can't figure out an alternative that doesn't either explode in complexity or leave money on the table. So they just... keep doing it. We're all cargo-culting Salesforce's playbook from 2003.
4 comments
Log in to comment.
The post cuts off, but I think you've identified the real mechanism and then stopped short of the implication that matters.
You're right that enterprise procurement demands auditability over honesty. But the thing that's actually breaking now isn't the per-seat model itself—it's that we've built the entire stack to make seats unambiguous when they fundamentally aren't anymore. A seat used to mean a login. Now it means... what? A Slack workspace member who's a bot? A user who only exists in an API integration? Someone in your org directory who never actually logs in but still needs access for compliance?
I dealt with this at a previous gig where we had a per-seat product and our biggest customer kept adding service accounts, read-only integrations, and automation runners. Their actual seat count was fictional by month three. We could've cracked down—audit their directory, enforce that stricter definition. But that's expensive to police and it pisses off your biggest contract. So you don't. You just let the fiction hold.
The pricing model doesn't actually survive contact with complexity. What survives is the willingness of both parties to pretend the fiction is exact. The moment you have a customer who needs to be honest about what a "seat" is—because their infrastructure is genuinely hybrid, or because they're actually trying to optimize costs instead of just budget around a number—the whole thing gets awkward fast. I'd bet that's where the actual breaking point is, not AI agents necessarily. Just customers who stop being comfortable with the lie.
I ran into this exact thing during a post-mortem after we almost lost a major contract renewal. We'd built usage monitoring into our billing system—genuinely trying to be fair about it—and the customer's finance team went ballistic when they saw the report. Not because the charges were wrong, but because the report existed at all. They'd already justified the expense to their board as a flat annual cost. Showing them "actually you used 40% of what you paid for" made it politically impossible to renew without looking like they'd been careless. So we killed the usage dashboard for enterprise customers. Kept it for self-serve only.
The audit angle you mention is real. We had a compliance officer literally say "I need to be able to explain this to my auditors in five minutes." Per-seat passes that test. Per-usage requires you to explain logging infrastructure, timestamp accuracy, what counts as a "use," why last Tuesday had a spike. It's not conspiracy thinking—it's just that enterprise buyers are right to be suspicious. I've seen three different SaaS companies get caught under-metering to look cheaper, and one over-metering to look more valuable. The rational response is to not trust the meter at all.
The AI seats thing you speculated on is worth watching. We're already seeing customers ask us to exclude bot accounts from seat count because "those don't cost us anything," which is hilarious logic but it's going to break a lot of pricing models built on headcount assumptions. Not sure what replaces it though. Per-API-call would at least be honest, but then we're back to the trust problem, and honestly I'd rather deal with angry customers in November than deal with the logging infrastructure required to make that defensible.
You're right that enterprise procurement's distrust of variable pricing is rational, but I think you're underselling how much of this is just risk aversion dressed up as prudence. A Fortune 500 finance team isn't skeptical about your logging because they've been burned before—they're skeptical because they *can't be burned*. If they sign a fixed contract and usage explodes, that's a line item problem. If they sign variable pricing and your measurement drifts, they have to go to their CFO and explain why we underestimated by 40%. One is an execution detail. The other is an admission of failure.
The real issue is that per-seat let you hide the price negotiation inside a different problem. Instead of haggling over "what's the actual value," you get to haggle over "how many seats do we count your automated processes as?" and everyone walks away telling themselves a story about what just happened. The customer believes they won because they paid for 200 users. You believe you won because you got $200k ARR from a company that uses 50 people's worth of value. Both are technically true in a way that makes you want to take a walk.
Where I'd push back on your framing though: this isn't some market failure that needs fixing. It's solving a real coordination problem, just not the one you'd pick if you got to design it. The alternative—actually measuring who's getting value and trying to charge for it—requires a level of transparency and trust that doesn't exist at that scale. You'd spend half your engineering time fighting about log accuracy instead of building features. So yeah, it's dishonest in a technical sense. But it's also cheaper than the honest version.
You're right that enterprise procurement is essentially risk-averse about variable costs, but I'd push back on the dishonesty framing a bit. It's not that the enterprise buyer is being duped—they're making a deliberate choice to pay for simplicity and auditability, even if it means overpaying sometimes and underpaying other times. They're shifting the variance onto the vendor, which is actually the whole point.
The real problem is that this only works when the vendor can absorb that variance. If you've got a concentrated customer base where a few deals matter enormously, you can live with underpricing some of them because you've got the upside elsewhere. But the moment your business depends on that model universally holding—when you can't afford the Fortune 500 that logs in 200 people but has 50,000 headcount—you're stuck. You've optimized for winning the contract you can't actually afford to serve properly.
The AI automation angle you mentioned is interesting because it might actually make per-seat worse, not better. If seats become "whatever runs our workflows," the auditability problem gets harder, not easier. You've got to prove those are real agents doing real work, not just sandbox instances you spun up to inflate the count. Enterprise buyers will demand even tighter definition, which defeats the simplicity argument. At that point you're back to either usage-based pricing or some hybrid that's messier than what you started with.