You spend weeks getting a user to sign up. Cold emails, Reddit posts, replies on X, tweaking the landing page at 2am. Then one day they’re just gone, and your churn rate ticks up. No email, no complaint. They stopped logging in and you only noticed when Stripe told you.
That’s SaaS churn. And for small SaaS, it’s usually the thing quietly killing growth, not a lack of signups.
This post covers what churn actually is, how to calculate your churn rate, why it hurts more than you think, and the 3 fixes that matter most.
Key takeaways
- SaaS churn is the percentage of paying customers who cancel in a period, usually a month.
- Churn rate = customers lost ÷ customers at the start of the month × 100.
- 5% monthly churn means losing about 46% of your customers every year.
- Most churn is visible 1–2 weeks before cancellation as a drop in logins and core feature usage.
- The fixes that matter most are cheap: a better first five minutes, catching quiet users early, and recovering failed payments.
What is churn in SaaS?
Churn is the percentage of your paying customers who cancel in a given period, usually a month. If you start the month with 100 customers and 5 cancel, your monthly churn rate is 5%.
There are two ways to measure it:
- Customer churn tracks how many customers you lost.
- Revenue churn tracks how much MRR you lost. It matters when your customers pay different amounts, because losing one $200/month account hurts more than losing four $10/month ones.
For most early-stage founders, customer churn is the number to watch first. It’s simple and it tells you if people are actually sticking around.
How to calculate SaaS churn rate
Customer churn rate = (customers lost this month ÷ customers at the start of the month) × 100
Revenue churn rate = (MRR lost this month ÷ MRR at the start of the month) × 100
A quick example: you start October with 80 paying customers and $2,400 MRR. During the month, 4 customers cancel, worth $150 MRR in total.
- Customer churn = 4 ÷ 80 × 100 = 5%
- Revenue churn = $150 ÷ $2,400 × 100 = 6.25%
Don’t count new customers who signed up during the month in the starting number. Otherwise a good signup month hides a bad churn month.
Voluntary vs involuntary churn
Voluntary churn is when a user decides to leave. They hit the cancel button, or they stop using your product and cancel at renewal. This is the one everyone talks about.
Involuntary churn is when a user leaves without deciding to. Their card expires, a payment soft-declines, retries fail, and the subscription dies. They might have been happy the whole time.
Most founders ignore the second type because it feels like bad luck. It isn’t. Failed payments are a fixable leak, and we’ll get to that below.
How SaaS churn affects your business
5% a month sounds small. It isn’t. Here’s what it does over time, starting from 100 customers:
| Monthly churn | Customers left after 12 months | Lost in a year |
|---|---|---|
| 2% | 78 | ~22% |
| 5% | 54 | ~46% |
| 8% | 37 | ~63% |
It compounds. At 5% monthly churn, you lose about 46% of your customers in a year. At 8%, it’s around 63%. You’re rebuilding half your business every 12 months just to stay flat.
It caps your growth. Say you add 10 new customers a month and churn 5%. You’ll never go past roughly 200 customers, because at that point you lose 10 a month and gain 10 a month. More marketing only raises the ceiling a bit. Lower churn raises it a lot.
It burns your marketing money. Every user who leaves in month two took your time, ad spend and cold emails with them. You paid to acquire someone who never paid you back.
It cuts what each customer is worth. A rough way to see it: lifetime value (LTV) is your monthly price divided by your churn rate. At $30/month and 5% churn, a customer is worth about $600. Cut churn to 2.5% and the same customer is worth about $1,200. Same product, same price, double the value.
Why users actually leave
Price is rarely the real reason. When you dig into churned users, it’s usually one of four things:
- They never got to the value. They signed up, landed on an empty dashboard, got confused and closed the tab. If the first five minutes are a mess, most of them never come back.
- You never became part of their routine. People get busy. If your tool lives in a separate tab they have to remember to open, it slips out of their week. One founder on r/SaaS offered a user 50% off for life on a cancellation call and still lost them. The reason: the tool didn’t connect to their Slack or CRM. A discount can’t fix a workflow problem.
- They got stuck and nobody answered. A bug, a confusing step, a question that sat in your inbox for three days. Most users won’t email you twice. They just stop logging in. An unresolved support ticket is one of the clearest signs someone is on their way out.
- Their card failed. No decision at all. Just an expired card and a subscription that quietly died.
The first three have one thing in common: the user was gone in their head long before they hit cancel. The last one never meant to leave at all.
How to reduce SaaS churn: 3 fixes that matter
You don’t need a customer success team for any of this. Most of it is a weekend of work.
1. Fix the first five minutes
A new user should know exactly what to do the moment they sign up. One task, one quick win. No empty screens, no “learn more” buttons. If you have integrations (Slack, email, CRM), ask them to connect one right here, not buried in settings. A tool that shows up where people already work doesn’t need to be remembered.
For users who sign up but don’t finish setup, send 2 or 3 short emails in week one: “you’re one step away from X.” One founder said fixing his onboarding alone took his churn from around 33% to 5%.
2. Catch quiet users before they cancel
Churn is usually visible weeks before the cancel button. One founder who managed 140 customers solo noticed logins dropped about two weeks before cancellation, and core feature usage stopped about 10 days before.
Track a few basics per user: login frequency, core feature usage, last active date. When someone goes quiet, send a personal note:
“Hey Sam, noticed you haven’t used [core feature] this week. Anything blocking you?”
Half the time it’s something tiny, like a forgotten password or a missing button. He took churn from 8% to 5% with just this.
3. Recover failed payments
Set up automatic emails when a payment fails, with a one-click page to update the card. Turn on Smart Retries in Stripe or the equivalent in your billing tool. Founders regularly report recovering a big chunk of failed payments this way. It’s not exciting, but it’s money already on the table.
SaaS churn FAQ
What is a good churn rate for SaaS?
It depends on who you sell to. Small B2B SaaS often sits somewhere around 3–7% monthly. Under 2–3% is generally seen as healthy. If you’re above 10%, fix churn before you spend more on marketing.
How do you calculate monthly churn rate?
Divide the customers you lost during the month by the customers you had on day one, then multiply by 100. 5 lost out of 100 at the start = 5% monthly churn.
What’s the difference between churn and retention?
They’re two sides of the same number. If your monthly churn is 5%, your monthly retention is 95%.
What is involuntary churn?
Involuntary churn is when a customer leaves because a payment failed, not because they chose to cancel. Expired cards and soft declines are the usual causes. Dunning emails and smart payment retries recover a lot of it.
How do you predict which customers will churn?
Watch behaviour, not surveys. A drop in logins, a core feature that stops getting used, and unresolved support tickets are the most common early signals, usually 1–2 weeks before someone cancels.
Can you get churn to zero?
No. Some customers will always leave because their business closes or their needs change. The goal is to stop losing the ones who leave for fixable reasons.
The bottom line on SaaS churn
Getting users is hard. Keeping them is where the business actually gets built. If you only look at signups, you’re filling a bucket with a hole in it.
Start small: fix your first five minutes, watch for users going quiet, and recover failed payments. You don’t need fancy tools to start. You just need to look before they cancel, not after.
How to know who’s about to churn
The signals are easy to list: logins dropping, the core feature going unused, support tickets sitting open, bug reports piling up. One of them alone is noise. Together, they usually show up 1–2 weeks before someone cancels.
The hard part is watching for them. At 20 customers, a spreadsheet works. At 200, nobody has time to check who went quiet this week, so you find out when Stripe sends the cancellation email.
That’s what we’re building NChurn to do:
- Connect Stripe and your product. NChurn matches each paying customer to how they actually use your app.
- See the real reason, not a vague score. Every at-risk customer comes with the signal behind it, like “hasn’t touched reports in 9 days, used to open it 4 times a week”, plus what to do about it.
- Get alerted before it’s too late. A Slack alert when a customer goes from quiet to at-risk, so you reach out while they’re still paying you.
You get one simple list of customers with a health score, so you know exactly who to email today.
NChurn is built for small B2B SaaS teams of 1–10 people with no customer success team. Join the waitlist and get your first month free.
Know who’s slipping before they cancel.
NChurn pings you in Slack when a customer starts going quiet, weeks before they leave.