Cancellation Flow Grader
Score your SaaS cancellation flow against the six things that actually move retention. Find out where revenue is leaking before you ever read another churn dashboard.
Check the boxes that apply
Be honest. The score is useless otherwise.
Your cancellation flow score
You are losing customers in silence. This is the highest-ROI thing on your roadmap.
Biggest leak
Do you collect a cancellation reason from every cancel?
Without a reason, every other improvement is guessing. The reason is the single most valuable signal a churning customer can give you.
Fix
Add a one-question reason picker to your cancel flow. Free-text reply box optional, structured reason required.
Other gaps
- -Do you follow up later when something changes? (20 pts)
- -Do you separate failed payments from voluntary cancels? (18 pts)
- -Do you ask why they are leaving inside the cancel flow? (16 pts)
- -Do you offer a pause option before cancel? (12 pts)
- -Do you offer a downgrade option before cancel? (12 pts)
ChurnNote helps you capture the reason and follow up later.
Connect Stripe or Lemon Squeezy and ChurnNote sends a founder-style cancellation email from your inbox, groups the replies by reason, and surfaces who to win back when something changes.
Try ChurnNoteWhat a good SaaS cancellation flow looks like
A good cancellation flow does three things at once: it captures the reason, it offers a softer alternative before the customer fully leaves, and it sets up the conversation that recovers them later. Most flows do none of those things. They show a confirm button and call it a day.
The reason-capture step is the single highest-leverage piece. Without it, you can run as many surveys as you want and still not know what's actually driving churn. With it, every other retention investment (pricing changes, feature work, onboarding fixes) becomes targeted instead of speculative.
The softer alternatives (pause, downgrade) recover the customers who were leaving for a temporary or partial reason. They are cheap to implement and have outsized impact on net revenue retention.
Why failed payments deserve their own bucket
Failed-payment cancellations are not the same problem as voluntary cancellations. The customer did not decide to leave. Their card expired, or their bank flagged a charge, or they hit a limit. Putting them through the same exit survey as a voluntary cancel is both useless and rude.
The fix is to detect Stripe's payment_failed events separately and route them into a dunning flow (email, card update link, retry schedule) instead of through your cancellation survey. Most SaaS businesses recover 30 to 50 percent of failed payments once they do this.
Frequently Asked Questions
What is a cancellation flow?
The sequence a customer goes through when they click 'cancel subscription' in your app. A good flow captures the reason, offers softer alternatives like pause or downgrade, and routes failed payments separately from voluntary cancels. A bad flow is just a confirm button.
Why do you weight the questions differently?
Not every step in a cancel flow has the same impact. Capturing the reason is the single most important thing (without it, every other retention investment is guesswork). Separating failed payments from voluntary churn comes second because it changes how you treat each. Pause and downgrade options recover specific segments but matter less than knowing why people leave in the first place.
Is a higher score always better?
Yes, with one caveat: capturing data is only valuable if you use it. A perfect score on this grader still leaves revenue on the table if you collect cancellation reasons but never email those customers back when something changes. The data is the input, the follow-up is the work.
How long does it take to fix the biggest leak?
Adding a reason-capture step usually takes a developer 2 to 6 hours. Adding pause and downgrade options is a 1-2 day project. Building a proper follow-up system from scratch is weeks. ChurnNote handles the reason-capture, the follow-up emails, and the failed-payment separation for you so you can skip most of that work.
Does this work for non-Stripe SaaS?
Yes. The six questions are billing-tool agnostic. Stripe, Lemon Squeezy, Paddle, and Chargebee all give you the same cancellation signals. The implementation differs slightly per tool but the strategy is the same.
How ChurnNote helps
A good cancel flow is the cheapest retention investment you'll ever make. Most teams skip it because building one in-house is annoying.
ChurnNote connects to Stripe or Lemon Squeezy and automatically captures cancellation reasons, recovers failed payments, and queues win-back emails. So you stop losing revenue silently.
Start recovering churnNext step
Got a reason captured? Generate the win-back email.
Pick the reason and the Win-Back Email Generator produces a copy-paste email tailored to it.