$npx -y skills add MoizIbnYousaf/marketing-cli --skill churn-preventionDesigns cancel flow UX, dunning email sequences, win-back campaigns, and retention triggers. Covers the full churn prevention lifecycle from early warning signals to 90-day win-back. Use when someone mentions 'churn', 'retention', 'cancel flow', 'dunning', 'win-back', 'users leav
| 1 | # Churn Prevention |
| 2 | |
| 3 | ## Purpose |
| 4 | |
| 5 | Reduce churn across three stages: before they want to leave (health scoring + proactive outreach), while they're leaving (cancel flow + save offers), and after they've left (win-back campaigns). Plus dunning sequences for involuntary churn from failed payments. |
| 6 | |
| 7 | ## Reads |
| 8 | |
| 9 | - `brand/audience.md` — Personas, pain points, what they value most |
| 10 | - `brand/positioning.md` — Value props for reinforcement in save offers and win-back copy |
| 11 | - `brand/voice-profile.md` — Brand voice for all cancel flow and email copy |
| 12 | |
| 13 | ## Brand Integration |
| 14 | |
| 15 | - **audience.md** — Churn signals vary by persona. Power users churn from missing features; casual users churn from confusion. Tailor intervention messaging to the persona's primary motivation. |
| 16 | - **positioning.md** — Save offers and win-back copy should reinforce the brand's core value proposition, not just offer discounts. Remind users of the specific value they're losing. |
| 17 | - **voice-profile.md** — Cancel flow copy must match brand voice. A playful brand says 'We'll miss you! Here's what you'll lose...' A professional brand says 'Before you go, here's a summary of your account value.' Win-back emails must sound like the brand, not like a desperate ex. |
| 18 | |
| 19 | ## Workflow |
| 20 | |
| 21 | ### Step 1: Analyze Churn Triggers |
| 22 | |
| 23 | Identify and categorize churn drivers: |
| 24 | |
| 25 | **Voluntary Churn (they chose to leave):** |
| 26 | |
| 27 | | Trigger | Signal | Intervention Window | |
| 28 | |---------|--------|-------------------| |
| 29 | | Not using core feature | <2 logins/week for 2 weeks | Early — usage prompt | |
| 30 | | Price sensitivity | Viewed pricing page after billing | Pre-renewal — value reinforcement | |
| 31 | | Missing feature | Feature request + competitor mention | Medium — roadmap update | |
| 32 | | Poor onboarding | Never completed setup | Immediate — guided help | |
| 33 | | Support frustration | Multiple tickets, low CSAT | Immediate — escalation | |
| 34 | | Outgrew the product | Hitting limits frequently | Pre-churn — upgrade path | |
| 35 | | Champion left | Key user deactivated | Immediate — new champion onboarding | |
| 36 | |
| 37 | **Involuntary Churn (payment failed):** |
| 38 | |
| 39 | | Trigger | Signal | Intervention | |
| 40 | |---------|--------|-------------| |
| 41 | | Card expired | Payment decline code | Dunning sequence | |
| 42 | | Insufficient funds | Soft decline | Retry schedule | |
| 43 | | Card replaced | Hard decline | Update payment prompt | |
| 44 | | Bank block | Fraud decline | Direct outreach | |
| 45 | |
| 46 | ### Step 2: Design Health Score |
| 47 | |
| 48 | Define a customer health score (0-100) based on: |
| 49 | |
| 50 | ``` |
| 51 | Health Score Components: |
| 52 | - Usage frequency (0-25): Logins, feature usage, API calls |
| 53 | - Feature adoption (0-25): % of key features used |
| 54 | - Engagement depth (0-20): Session duration, actions per session |
| 55 | - Support sentiment (0-15): Ticket volume (inverse), CSAT scores |
| 56 | - Account growth (0-15): Seats added, plan upgrades, expansion |
| 57 | ``` |
| 58 | |
| 59 | Health score thresholds: |
| 60 | - **80-100:** Healthy — nurture and expand |
| 61 | - **60-79:** Monitor — proactive check-in |
| 62 | - **40-59:** At risk — intervention needed |
| 63 | - **0-39:** Critical — immediate outreach |
| 64 | |
| 65 | ### Step 3: Design Cancel Flow |
| 66 | |
| 67 | The cancel flow is not a wall — it's a conversation. Goal: understand why and offer a genuine solution. |
| 68 | |
| 69 | ``` |
| 70 | Screen 1: "Before you go..." |
| 71 | |- "What's the main reason you're canceling?" |
| 72 | | |- Too expensive -> Screen 2A |
| 73 | | |- Missing features I need -> Screen 2B |
| 74 | | |- Not using it enough -> Screen 2C |
| 75 | | |- Switching to another tool -> Screen 2D |
| 76 | | |- Just need a break -> Screen 2E |
| 77 | | |- Other -> Screen 2F |
| 78 | |
| 79 | Screen 2A (Too expensive): |
| 80 | |- Show usage stats: "You've [achievement] with [Product] this month" |
| 81 | |- Offer: Downgrade to lower plan / Annual discount / Pause billing |
| 82 | |- CTA: "Switch to [cheaper plan] — keep [key features]" |
| 83 | |- Skip: "No thanks, continue canceling" |
| 84 | |
| 85 | Screen 2B (Missing features): |
| 86 | |- "Which features would keep you?" |
| 87 | |- Show roadmap items if relevant: "[Feature] ships in [timeframe]" |
| 88 | |- Offer: "We'll notify you when [feature] launches" |
| 89 | |- Skip: "Continue canceling" |
| 90 | |
| 91 | Screen 2C (Not using it enough): |
| 92 | |- Show quick wins: "Here are 3 things you haven't tried yet" |
| 93 | |- Offer: Pause for 1-3 months instead of canceling |
| 94 | |- Offer: Free onboarding call |
| 95 | |- Skip: "Continue canceling" |
| 96 | |
| 97 | Screen 2D (Switching to competitor): |
| 98 | |- "Which tool are you switching to?" (optional) |
| 99 | |- Show comparison: "Here's how [Product] compares on [key f |