Fetching from the wire…
Public story · 2026-07-01 · high
SaaStr's own bill shows the pattern: Salesforce spend up 83%, Notion quietly dropped, Marketo unable to honor its own unsubscribes, all while ARR looked untouched.
Why now: SaaStr published the breakdown this week and it lines up with the same seat-collapse pattern showing up separately in CRM and GTM tooling.
SaaStr just published its own vendor bill as a case study, and it's a good one. Salesforce spend jumped 83% while the human seat count fell to two. Notion usage dropped off entirely, not from a cancellation, but because agents started doing the work Notion used to hold. And Marketo, of all things, hit a wall it can't route around: it can't honor its own unsubscribes anymore because agents are running the campaigns now, not the marketing team.
None of that shows up as churn. The renewal still gets signed. The ARR line stays flat. SaaStr is calling it stealth churn, and I think that's the right name for it, because the thing that's actually leaving isn't the account, it's the humans who used to touch the product every day.
I've watched this shape before in smaller ways, tools that stay paid for but stop getting opened because something upstream started doing the job automatically. What's different here is the scale and the speed. Per-seat pricing was built on the assumption that headcount and usage move together. When an agent can run a CRM's data layer, execute a marketing campaign, or maintain a workspace without a person logging in, that assumption breaks quietly, one renewal at a time, until the vendor notices seats cratering against a consumption number that never dropped.
If you're building or buying SaaS right now, seat count stopped being a reliable usage signal. Net revenue retention against active seats is the number that'll tell you the truth before the logo ever churns. And if you're the vendor, the fix probably isn't defending the seat, it's figuring out how to price the agent that just quietly took the job.
Each link below shares sources, entities, or timing with this story.
SaaStr released Qbee / Shared entity: SaaStr / Same source domain / What happened next / Tension
Linked by a graph relationship (SaaStr released Qbee); both cover SaaStr; reported by the same outlet (saastr.com).
SaaStr uses Salesforce / Shared entity: SaaStr / Same source domain / What happened next / Tension
Linked by a graph relationship (SaaStr uses Salesforce); both cover SaaStr; reported by the same outlet (saastr.com).
SaaStr uses Salesforce / Shared entity: SaaStr / Same source
Linked by a graph relationship (SaaStr uses Salesforce); both cover SaaStr; cite the same source (SaaStr).
SaaStr uses Salesforce Marketing Cloud / Shared entity: SaaStr / Same source domain / What happened next
Linked by a graph relationship (SaaStr uses Salesforce Marketing Cloud); both cover SaaStr; reported by the same outlet (saastr.com).
Jason Lemkin works at SaaStr / Shared entity: SaaStr / Same source domain / What happened next
Linked by a graph relationship (Jason Lemkin works at SaaStr); both cover SaaStr; reported by the same outlet (saastr.com).
SaaStr uses Monaco / Shared entity: SaaStr / Same source domain / Earlier coverage
Linked by a graph relationship (SaaStr uses Monaco); both cover SaaStr; reported by the same outlet (saastr.com).
SaaStr uses Salesforce / Shared entity: SaaStr / Same source domain / Earlier coverage
Linked by a graph relationship (SaaStr uses Salesforce); both cover SaaStr; reported by the same outlet (saastr.com).
SaaStr uses Claude / Shared entity: SaaStr / Same source domain / Earlier coverage
Linked by a graph relationship (SaaStr uses Claude); both cover SaaStr; reported by the same outlet (saastr.com).