A while back I tore down a batch of well-known SaaS, and the pattern was that churn is usually a slow trust event. The product didn't get worse, the deal quietly did, and people left months later.
This batch broke that. Same root cause, no slow part. One announcement, one date, and the base walked out inside a week. I pulled four from public record.
The API had been free since 2008, then got repriced. Christian Selig, who built Apollo, did the math in public: the new rate put him near 20 million dollars a year, about 2.50 per user per month against a subscription that cost less than that. He posted a shutdown date and the third-party app ecosystem went dark, mod blackout and all. The API was never the product. The deal it represented was.
They announced a fee charged per install and made it retroactive to games already shipped. Developers weren't reacting to a number, they were reacting to a deal changing after they'd built an entire studio on the old one. The co-founder later said out loud, "we fucked up on many levels." They walked the policy back completely. The trust didn't come back with it.
Free dynos had been the on-ramp for a whole generation of developers for fifteen years, the thing bootcamps deployed their first app on. Salesforce killed the free tier with a few months notice. Render, Fly, and Vercel got a migration wave handed to them, because the thing Heroku cut wasn't revenue, it was the reason anyone tried it in the first place.
Perpetual licenses gone, everything pushed to subscription, with documented increases of 800 to 1500 percent. By the surveys, roughly three of four IT leaders started actively shopping alternatives. The lock-in everyone assumed was permanent turned out to be a grudge waiting for a reason.
The common thread isn't price. It's that every one of these was a unilateral change to a deal customers had already said yes to. Nobody got a vote. And the speed of the exodus tracked how betrayed people felt, not how good the alternative was. Apollo users didn't leave because another client was better. They left because the deal moved and they were done.
The uncomfortable version for the rest of us: the most dangerous change you can make isn't a bad feature, it's quietly rewriting a deal your existing customers already accepted. Price, free tier, access, API, seat math. If it changes the terms people committed under, it's a cliff, and the only real question is whether they got any say before it shipped.
What's the biggest "we had no choice" change you've made that, looking back, you'd never run the same way again?