From a cancellation to a decision you can defend
Eight steps. You run none of them.
Step 1
A customer cancels
Somewhere in your product or your billing provider, someone clicks cancel.
If you've installed Cancellation Capture they also get one skippable question right there, which catches the people who would never reply to an email.
ExampleCancelledMaya Restrepo
Growth · $149/mo · 14 months
Stripe · subscription.deleted
For most companies this is where it ends: one row, one number, no reason attached.
Step 2
WhyLeft detects it
Stripe, Polar, Lemon Squeezy and Paddle are picked up automatically. Any other stack sends one API call, a webhook, or a CSV.
Failed payments are detected too, and routed to Payment Recovery rather than counted as a decision to leave.
ExampleStripePolarLemon SqueezyPaddleAPICSVFour providers detected with no code
Failed payments are detected here too — and routed to Payment Recovery instead of counted as a decision to leave.
Step 3
The interview goes out
Minutes later, a short plain-text email arrives from your address, signed with your name, asking one question.
It sends through your own verified domain so it authenticates as you and reaches the inbox rather than the promotions tab.
ExampleFrom samir@northwind.io
Subject: quick question
Hey Maya — saw you cancelled today. No hard feelings, and I'm not going to try to talk you out of it. Just one question, because it genuinely helps: what made you decide to leave?
Sent from your verified domain
No logo, no survey link, no tracking pixel. Plain text, because plain text gets replies.
Step 4
They reply
Their answer comes back as a real email, in their own words and at whatever length they feel like.
There is no form to open and no page to load — they hit reply in the client they already had open.
Example…what made you decide to leave?
Honestly the reporting was too basic for our team. We needed to slice retention by acquisition channel and there was no way to do it.
Replied in 47 minutes
They answered in their own words, at their own length, in the client they already had open.
Step 5
AI asks the one follow-up that matters
A single contextual question, written from what this person actually said rather than picked from a branch you had to build.
That's where "too expensive" becomes "the seat model broke when we hit five people." Email is capped at two messages; if they want to keep going, the conversation continues on a private chat link.
ExampleWhen you say slice by acquisition channel — was that for your own weekly review, or was someone else asking you for it?
Written from what she actually said
Mainly our CEO. He asks every month and I was rebuilding it by hand each time.
Two emails, ever. If they want to keep talking, the conversation moves to a private chat link instead.
Step 6
The conversation is classified
Every interview is tagged by churn reason and joined to everything else you've heard, so it stops being an isolated anecdote.
Tags are editable and the original text always sits beside them. You're never reading a summary of a summary.
Examplemissing-featuresreporting-depth- Missing features32%
- Too expensive24%
- Switched to competitor18%
One reply is an anecdote. Joined to everything else you have heard, it becomes a position on a list.
Step 7
You get a recommendation, with evidence
Not a chart to interpret. A specific claim — this pattern, this many customers, this much MRR — with the quotes it came from and a confidence level attached.
You can cut it by plan, tenure or price point, because Starter and enterprise customers usually leave for opposite reasons. Ask Wylo Copilot a follow-up about any of it.
ExampleWhat to fix first
Segmented reporting is your most expensive gap
- Customers
- 9
- MRR
- $1,140
- Confidence
- 82%
A claim you can defend in a roadmap meeting, with the quotes it came from attached to it.
Step 8
The saveable ones get invited back
When you ship the thing they left over, WhyLeft already knows exactly who said it. Those customers — and only those — get a win-back email that references what they told you.
You approve every send or automate it, and recovered revenue is attributed back to the interview that produced it.
ExampleWon backMaya Restrepo
Growth · $149/mo
“You asked for channel-level retention in March. It shipped today.”
$640 MRR recovered this quarter
Attributed back to the interview that produced it, so you can tell which fix paid for itself.
Maya Restrepo
Growth · $149/mo · 14 months
Stripe · subscription.deleted
For most companies this is where it ends: one row, one number, no reason attached.
Surveys ask. Analytics counts. Neither one follows up.
An exit survey is a form nobody fills in. Churn analytics is a number without a cause. The gap between them is a conversation.
| Capability | WhyLeft | Exit survey | Churn analytics |
|---|---|---|---|
| Reaches the customer where they already areA reply in their inbox, not a link to a form | Yes | No | No |
| Asks a different second question based on the first answerAdaptive follow-up, not a fixed branch | Yes | No | No |
| Tells you the reason, not just the rate | Yes | Yes | No |
| Works without anyone remembering to run it | Yes | No | Yes |
| Connects one answer to every other answerTagging plus cross-interview analysis | Yes | No | No |
| Knows who to email when you ship the fix | Yes | No | No |
Reaches the customer where they already are
A reply in their inbox, not a link to a form
- YesWhyLeft
- NoExit survey
- NoChurn analytics
Asks a different second question based on the first answer
Adaptive follow-up, not a fixed branch
- YesWhyLeft
- NoExit survey
- NoChurn analytics
Tells you the reason, not just the rate
- YesWhyLeft
- YesExit survey
- NoChurn analytics
Works without anyone remembering to run it
- YesWhyLeft
- NoExit survey
- YesChurn analytics
Connects one answer to every other answer
Tagging plus cross-interview analysis
- YesWhyLeft
- NoExit survey
- NoChurn analytics
Knows who to email when you ship the fix
- YesWhyLeft
- NoExit survey
- NoChurn analytics
This is what you end up looking at
The same interface, with sample data. Click through it.

What you actually have to do
Setup is connecting your billing provider and describing your product in a sentence.
- 1Connect your billing provider, or point one API call at WhyLeft.
- 2Confirm the name and address your interviews send from, and verify your sending domain.
- 3Write a sentence or two describing what your product does, so the AI has context.
- 4Read the answers.
Your next cancellation is coming.
It can be another number on a chart, or the reason you build the right thing next quarter.
No credit card. Cancel in one click — we'd rather you tell us why.