Cancel Flow Patterns
Detailed cancel flow patterns by business type, billing provider, and industry.
Cancel Flow by Business Type
B2C / Self-Serve SaaS
High volume, low touch. The flow must work without human intervention.
Flow structure:
Cancel button → Exit survey (1 question) → Dynamic offer → Confirm → Post-cancelCharacteristics:
- Fully automated, no human in the loop
- Quick — 2-3 screens maximum
- One offer + one fallback, not a menu of options
- Mobile-optimized (significant cancellations on mobile)
- Clear "continue cancelling" at every step
Typical save rate: 20-30%
Example flow for a $29/mo productivity app:
- "What's the main reason?" → 6 options
- Selected "Too expensive" → "Get 25% off for 3 months (save $21.75)"
- Declined → "Or switch to our Starter plan at $12/mo"
- Declined → "We're sorry to see you go. Your access continues until [date]."
B2B / Team Plans
Lower volume, higher stakes. Personal outreach is worth the cost.
Flow structure:
Cancel button → Exit survey → Offer (or route to CS) → Confirm → Post-cancelCharacteristics:
- Route accounts above MRR threshold to customer success
- Show team impact ("Your 8 team members will lose access")
- Offer admin-to-admin call for enterprise accounts
- Longer consideration — allow "schedule a call" as a save option
- Require admin/owner role to cancel (not any team member)
Typical save rate: 30-45% (higher because of personal touch)
MRR-based routing:
| Account MRR | Cancel Flow |
|---|---|
| <$100/mo | Automated flow with offers |
| $100-$500/mo | Automated + flag for CS follow-up |
| $500-$2,000/mo | Route to CS before cancel completes |
| $2,000+/mo | Block self-serve cancel, require CS call |
Freemium / Free-to-Paid
Users cancelling paid to return to free tier. Different psychology — they're not leaving, they're downgrading.
Flow structure:
Cancel button → "Switch to Free?" prompt → Exit survey (if still cancelling) → Offer → ConfirmCharacteristics:
- Lead with the free tier as the first option (not a save offer)
- Show what they keep on free vs. what they lose
- The "save" is keeping them on free, not losing them entirely
- Track free-tier users for future re-upgrade campaigns
Cancel Flow by Billing Interval
Monthly Subscribers
- More price-sensitive, shorter commitment
- Discount offers work well (20-30% for 2-3 months)
- Pause is effective (1-2 months)
- Suggest annual plan at a discount as an alternative
Offer priority:
- Discount (if reason = price)
- Pause (if reason = not using / temporary)
- Annual plan switch (if engaged but price-sensitive)
Annual Subscribers
- Higher commitment, often cancelling for stronger reasons
- Prorate refund expectations matter
- Longer save window (they've already paid)
- Personal outreach more justified (higher LTV at stake)
Offer priority:
- Pause remainder of term (if temporary)
- Plan adjustment + credit for next renewal
- Personal outreach from CS
- Partial refund + downgrade (better than full refund + cancel)
Refund handling:
- Offer prorated refund if significant time remaining
- "Pause until renewal" if less than 3 months left
- Be generous — bad refund experiences create vocal detractors
Save Offer Patterns
The Discount Ladder
Don't lead with your biggest discount. Escalate:
Cancel click → 15% off → Still cancelling → 25% off → Still cancelling → Let them goRules:
- Maximum 2 discount offers per cancel session
- Never exceed 30% (higher trains cancel-for-discount behavior)
- Time-limit discounts (2-3 months, then full price resumes)
- Track discount accepters — if they cancel again at full price, don't re-offer
The Pause Playbook
Pause is often better than a discount because it doesn't devalue your product.
Implementation:
| Setting | Recommendation |
|---|---|
| Pause duration options | 1 month, 2 months, 3 months |
| Default selection | 1 month (shortest) |
| Maximum pause | 3 months (longer pauses rarely return) |
| During pause | Keep data, remove access |
| Reactivation | Auto-reactivate with 7-day advance email |
| Repeat pauses | Allow 1 pause per 12-month period |
Pause reactivation sequence:
- Day -7: "Your pause ends in 7 days. We've been busy — here's what's new."
- Day -1: "Welcome back tomorrow! Here's what's waiting for you."
- Day 0: "You're back! Here's a quick tour of what's new."
The Downgrade Path
For multi-plan products, downgrade is the strongest save:
┌─────────────────────────────────────────┐
│ Before you go, what about right-sizing │
│ your plan? │
│ │
│ Current: Pro ($49/mo) │
│ │
│ ┌─────────────────────────────────┐ │
│ │ Switch to Starter ($19/mo) │ │
│ │ │ │
│ │ ✓ Keep: Projects, integrations │ │
│ │ ✗ Lose: Advanced analytics, │ │
│ │ team features │ │
│ │ │ │
│ │ [Switch to Starter] │ │
│ └─────────────────────────────────┘ │
│ │
│ [No thanks, continue cancelling] │
└─────────────────────────────────────────┘Downgrade best practices:
- Show exactly what they keep and what they lose
- Use checkmarks and X marks for scanability
- Preserve their data even on the lower plan
- If they downgrade, don't show upgrade prompts for at least 30 days
The Competitor Switch Handler
When the cancel reason is "switching to competitor":
- Ask which competitor (optional, don't force it)
- Show a comparison if you have one (see competitor-alternatives skill)
- Offer a migration credit ("We'll match their price for 3 months")
- Request a feedback call ("15 minutes to understand what we're missing")
This data is gold for product and marketing teams.
Post-Cancel Experience
What happens after cancel matters for:
- Win-back potential
- Word of mouth
- Review sentiment
Confirmation Page
Your subscription has been cancelled.
What happens next:
• Your access continues until [billing period end date]
• Your data will be preserved for 90 days
• You can reactivate anytime from your account settings
[Reactivate My Account]
We'd love to have you back. We'll keep improving based on feedback
from customers like you.Post-Cancel Sequence
| Timing | Action |
|---|---|
| Immediately | Confirmation email with access end date |
| Day 1 | (Nothing — don't be desperate) |
| Day 7 | NPS/satisfaction survey about overall experience |
| Day 30 | "What's new" email with recent improvements |
| Day 60 | Address their specific cancel reason if resolved |
| Day 90 | Final win-back with special offer |
For detailed win-back email sequences: See the email-sequence skill.
Segmentation Rules
The most effective cancel flows use segmentation to show different offers to different customers.
Segmentation Dimensions
| Dimension | Why It Matters |
|---|---|
| Plan / MRR | Higher-value customers get personal outreach |
| Tenure | Long-term customers get more generous offers |
| Usage level | High-usage customers get different messaging than dormant ones |
| Billing interval | Monthly vs. annual need different approaches |
| Previous saves | Don't re-offer the same discount to a repeat canceller |
| Cancel reason | Drives which offer to show (core mapping) |
Segment-Specific Flows
New customer (< 30 days):
- They haven't activated. The save is onboarding, not discounts.
- Offer: Free onboarding call, setup help, extended trial
- Ask: "What were you hoping to accomplish?" (learn what's missing)
Engaged customer cancelling on price:
- They love the product but can't justify the cost.
- Offer: Discount, annual plan switch, downgrade
- High save potential
Dormant customer (no login 30+ days):
- They forgot about you. A discount won't bring them back.
- Offer: Pause subscription, "what changed?" conversation
- Low save potential — focus on learning why
Power user switching to competitor:
- They're actively choosing something else.
- Offer: Competitive match, feedback call, roadmap preview
- Medium save potential — depends on reason
Implementation Checklist
Phase 1: Foundation (Week 1)
- [ ] Add cancel flow (survey + 1 offer + confirmation)
- [ ] Set up exit survey with 5-7 reason categories
- [ ] Map one offer per reason (simple 1:1 mapping)
- [ ] Track cancel reasons and save rate in analytics
- [ ] Enable pre-dunning card expiry emails
Phase 2: Optimization (Weeks 2-4)
- [ ] Add fallback offers (primary + secondary per reason)
- [ ] Implement pause subscription option
- [ ] Set up dunning email sequence (4 emails over 10 days)
- [ ] Enable smart retries (Stripe Smart Retries or equivalent)
- [ ] Add MRR-based routing for high-value accounts
Phase 3: Advanced (Month 2+)
- [ ] Build health score from usage signals
- [ ] Set up proactive intervention triggers
- [ ] A/B test discount amounts and offer types
- [ ] Segment flows by plan, tenure, and usage
- [ ] Post-cancel win-back sequence (coordinate with email-sequence skill)
- [ ] Cohort analysis: churn by channel, plan, tenure
Compliance Notes
FTC Click-to-Cancel Rule (US)
- Cancellation must be as easy as signup
- Cannot require a phone call to cancel if signup was online
- Cannot add excessive steps to discourage cancellation
- Save offers are allowed but "continue cancelling" must be clear
GDPR / Data Retention (EU)
- Inform users about data retention period post-cancel
- Offer data export before account deletion
- Honor deletion requests within 30 days
- Don't use post-cancel data for marketing without consent
General Best Practices
- Always show a clear path to complete cancellation
- Never hide the cancel button (dark pattern)
- Process cancellation even if save flow has errors
- Confirm cancellation with email receipt