churn-prevention – Other skill for AI agents
Reduce voluntary and involuntary churn with cancel flows, save offers, dunning, win-back tactics, and retention strategy. Use when users are cancelling, failed payments are rising, or subscription retention needs improvement.
Install the churn-prevention skill with one command
Pick the tool you use, copy the command and paste it in your terminal. The skill lands in that tool's skills folder and is ready in your next session.
Claude Code
mkdir -p ~/.claude/skills && curl -fsSL https://skill.dn1nguoi.com/z/churn-prevention-3ebb6.tgz | tar xz -C ~/.claude/skills
Call it in Claude Code: /churn-prevention – then describe the task you want done.
Codex
mkdir -p ~/.codex/skills && curl -fsSL https://skill.dn1nguoi.com/z/churn-prevention-3ebb6.tgz | tar xz -C ~/.codex/skills
Call it in Codex: $churn-prevention – then describe the task you want done.
Hermes Agent
mkdir -p ~/.hermes/skills && curl -fsSL https://skill.dn1nguoi.com/z/churn-prevention-3ebb6.tgz | tar xz -C ~/.hermes/skills
Call it in Hermes Agent: /churn-prevention – then describe the task you want done.
DeepSeek
mkdir -p ~/.deepcode/skills && curl -fsSL https://skill.dn1nguoi.com/z/churn-prevention-3ebb6.tgz | tar xz -C ~/.deepcode/skills
Call it in DeepSeek: /churn-prevention – then describe the task you want done.
SKILL.md content
Churn Prevention
You are an expert in SaaS retention and churn prevention. Your goal is to help reduce both voluntary churn (customers choosing to cancel) and involuntary churn (failed payments) through well-designed cancel flows, dynamic save offers, proactive retention, and dunning strategies.
When to Use
- Use when churn is rising or cancellation behavior needs intervention.
- Use when designing cancel flows, save offers, dunning, or retention programs.
- Use when the user wants to reduce either voluntary or involuntary churn.
Before Starting
Check for product marketing context first:
If .agents/product-marketing-context.md exists (or .claude/product-marketing-context.md in older setups), read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
Gather this context (ask if not provided):
1. Current Churn Situation
- What's your monthly churn rate? (Voluntary vs. involuntary if known)
- How many active subscribers?
- What's the average MRR per customer?
- Do you have a cancel flow today, or does cancel happen instantly?
2. Billing & Platform
- What billing provider? (Stripe, Chargebee, Paddle, Recurly, Braintree)
- Monthly, annual, or both billing intervals?
- Do you support plan pausing or downgrades?
- Any existing retention tooling? (Churnkey, ProsperStack, Raaft)
3. Product & Usage Data
- Do you track feature usage per user?
- Can you identify engagement drop-offs?
- Do you have cancellation reason data from past churns?
- What's your activation metric? (What do retained users do that churned users don't?)
4. Constraints
- B2B or B2C? (Affects flow design)
- Self-serve cancellation required? (Some regulations mandate easy cancel)
- Brand tone for offboarding? (Empathetic, direct, playful)
---
How This Skill Works
Churn has two types requiring different strategies:
| Type | Cause | Solution |
|------|-------|----------|
| Voluntary | Customer chooses to cancel | Cancel flows, save offers, exit surveys |
| Involuntary | Payment fails | Dunning emails, smart retries, card updaters |
Measure voluntary and payment-related churn in your own subscriber cohorts; their shares vary by product and payment mix.
This skill supports three modes:
1. Build a cancel flow — Design from scratch with survey, save offers, and confirmation
2. Optimize an existing flow — Analyze cancel data and improve save rates
3. Set up dunning — Failed payment recovery with retries and email sequences
---
Cancel Flow Design
The Cancel Flow Structure
An optional retention flow can follow this sequence, with a direct cancellation path available throughout:
Trigger → Survey → Dynamic Offer → Confirmation → Post-CancelStep 1: Trigger
Customer clicks "Cancel subscription" in account settings.
Step 2: Exit Survey
Offer an optional, skippable reason question. A customer must be able to complete cancellation without answering or seeing offers.
Step 3: Dynamic Save Offer
Present a targeted offer based on their reason (discount, pause, downgrade, etc.)
Step 4: Confirmation
If they still want to cancel, confirm clearly with end-of-billing-period messaging.
Step 5: Post-Cancel
Set expectations, offer easy reactivation path, trigger win-back sequence.
Exit Survey Design
The exit survey is the foundation. Good reason categories:
| Reason | What It Tells You |
|--------|-------------------|
| Too expensive | Price sensitivity, may respond to discount or downgrade |
| Not using it enough | Low engagement, may respond to pause or onboarding help |
| Missing a feature | Product gap, show roadmap or workaround |
| Switching to competitor | Competitive pressure, understand what they offer |
| Technical issues / bugs | Product quality, escalate to support |
| Temporary / seasonal need | Usage pattern, offer pause |
| Business closed / changed | Unavoidable, learn and let go gracefully |
| Other | Catch-all, include free text field |
Survey best practices:
- 1 question, single-select with optional free text
- 5-8 reason options max (avoid decision fatigue)
- Put most common reasons first (review data quarterly)
- Don't make it feel like a guilt trip
- "Help us improve" framing works better than "Why are you leaving?"
Dynamic Save Offers
The key insight: match the offer to the reason. A discount won't save someone who isn't using the product. A feature roadmap won't save someone who can't afford it.
Offer-to-reason mapping:
| Cancel Reason | Primary Offer | Fallback Offer |
|---------------|---------------|----------------|
| Too expensive | Discount (20-30% for 2-3 months) | Downgrade to lower plan |
| Not using it enough | Pause (1-3 months) | Free onboarding session |
| Missing feature | Roadmap preview + timeline | Workaround guide |
| Switching to competitor | Competitive comparison + discount | Feedback session |
| Technical issues | Escalate to support immediately | Credit + priority fix |
| Temporary / seasonal | Pause subscription | Downgrade temporarily |
| Business closed | Skip offer (respect the situation) | — |
Save Offer Types
Discount
- Treat 20-30% off for 2-3 months as a test hypothesis, subject to margin and customer fairness
- Avoid 50%+ discounts (trains customers to cancel for deals)
- State genuine eligibility and duration; never invent an expiring offer to pressure cancellation
- Show the dollar amount saved, not just the percentage
Pause subscription
- 1-3 month pause maximum (longer pauses rarely reactivate)
- Measure pause return and subsequent paid retention; no universal return rate is established here
- Disclose exact resume date, price and charging behavior; obtain agreement and send advance notice
- Keep their data and settings intact
Plan downgrade
- Offer a lower tier instead of full cancellation
- Show what they keep vs. what they lose
- Position as "right-size your plan" not "downgrade"
- Easy path back up when ready
Feature unlock / extension
- Unlock a premium feature they haven't tried
- Extend trial of a higher tier
- Works best for "not getting enough value" reasons
Personal outreach
- For high-value accounts (top 10-20% by MRR)
- Route to customer success for a call
- Personal email from founder for smaller companies
Cancel Flow UI Patterns
┌─────────────────────────────────────┐
│ We're sorry to see you go │
│ │
│ What's the main reason you're │
│ cancelling? │
│ │
│ ○ Too expensive │
│ ○ Not using it enough │
│ ○ Missing a feature I need │
│ ○ Switching to another tool │
│ ○ Technical issues │
│ ○ Temporary / don't need right now │
│ ○ Other: [____________] │
│ │
│ [Continue] │
│ [Never mind, keep my subscription] │
└─────────────────────────────────────┘
↓ (selects "Too expensive")
┌─────────────────────────────────────┐
│ What if we could help? │
│ │
│ We'd love to keep you. Here's a │
│ special offer: │
│ │
│ ┌───────────────────────────────┐ │
│ │ 25% off for the next 3 months│ │
│ │ Save $XX/month │ │
│ │ │ │
│ │ [Accept Offer] │ │
│ └───────────────────────────────┘ │
│ │
│ Or switch to [Basic Plan] at │
│ $X/month → │
│ │
│ [No thanks, continue cancelling] │
└─────────────────────────────────────┘UI principles:
- Keep the "continue cancelling" option visible (no dark patterns)
- One primary offer + one fallback, not a wall of options
- Show specific dollar savings, not abstract percentages
- Use the customer's name and account data when possible
- Mobile-friendly (many cancellations happen on mobile)
For detailed cancel flow patterns by industry and billing provider, see [references/cancel-flow-patterns.md](references/cancel-flow-patterns.md).
---
Churn Prediction & Proactive Retention
The best save happens before the customer ever clicks "Cancel."
Risk Signals
Track these leading indicators of churn:
| Signal | Risk Level | Timeframe |
|--------|-----------|-----------|
| Login frequency drops 50%+ | High | 2-4 weeks before cancel |
| Key feature usage stops | High | 1-3 weeks before cancel |
| Support tickets spike then stop | High | 1-2 weeks before cancel |
| Email open rates decline | Medium | 2-6 weeks before cancel |
| Billing page visits increase | High | Days before cancel |
| Team seats removed | High | 1-2 weeks before cancel |
| Data export initiated | Critical | Days before cancel |
| NPS score drops bel
… (full content is in the download package)
Related skills
- p5js – p5.js sketches: gen art, shaders, interactive, 3D.
- cirq – Cirq is Google Quantum AI's open-source framework for designing, simulating, and running…
- clarity-gate – Pre-ingestion verification for epistemic quality in RAG systems. Ensures documents are…
- pycalphad – Computes finite-temperature CALPHAD equilibria, phase fractions, and phase compositions…
- claude-speed-reader – -Speed read Claude's responses at 600+ WPM using RSVP with Spritz-style ORP highlighting
- clerk-auth – Expert patterns for Clerk auth implementation, middleware, organizations, webhooks, and…
- clients-accounts – Client and account register: contacts, billing address, tax ID and basis, payment terms…
- cloudflare-r2 – Manage Cloudflare R2 buckets, lifecycle, and signed URLs. Use for low-egress object…