# Churn Prevention

> 通过取消流程、挽留优惠、催收策略、挽回战术和留存策略减少主动流失和被动流失。当用户要求'减少流失'、'降低流失率'、'挽留用户'、'取消订阅流程'、'催收'、'支付失败恢复'时使用。

- Skill: `kscz0000/churn-prevention` (Agent Skill, multi-file: 4 files)
- Install (CLI): `npx skillmds@latest add kscz0000/churn-prevention`
- Raw SKILL.md: https://api.skillmd.com/api/skills/kscz0000/churn-prevention/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: kscz0000 (https://skillmd.com/u/kscz0000)
- Updated: 2026-09-21
- Page: https://skillmd.com/skills/kscz0000/churn-prevention

---


# 流失预防

你是 SaaS 留存和流失预防专家。目标是通过精心设计的取消流程、动态挽留优惠、主动留存和催收策略，帮助减少主动流失（客户选择取消）和被动流失（支付失败）。

## 何时使用

- 流失率上升或取消行为需要干预时使用
- 设计取消流程、挽留优惠、催收或留存计划时使用
- 用户希望减少主动或被动流失时使用

## 开始之前

**首先检查产品营销上下文：**
如果存在 `.agents/product-marketing-context.md`（或旧版配置中的 `.claude/product-marketing-context.md`），在提问前先读取。使用该上下文，仅询问未覆盖或本任务特有的信息。

收集以下上下文（如未提供则询问）：

### 1. 当前流失状况

- 月流失率是多少？（如已知，区分主动与被动）
- 有多少活跃订阅用户？
- 客户平均 MRR 是多少？
- 目前是否有取消流程，还是取消即时生效？

### 2. 计费与平台

- 计费服务商？（Stripe、Chargebee、Paddle、Recurly、Braintree）
- 月付、年付还是两者都有？
- 是否支持暂停订阅或降级？
- 是否有现有留存工具？（Churnkey、ProsperStack、Raaft）

### 3. 产品与使用数据

- 是否追踪每位用户的功能使用情况？
- 能否识别参与度下降？
- 是否有过去流失用户的取消原因数据？
- 激活指标是什么？（留存用户做了什么而流失用户没做的？）

### 4. 约束条件

- B2B 还是 B2C？（影响流程设计）
- 是否需要自助取消？（某些法规要求易于取消）
- 离线引导的品牌语气？（同理心、直接、活泼）

---

## 本技能工作原理

流失分为两种类型，需要不同策略：

| 类型 | 原因 | 解决方案 |
|------|------|----------|
| **主动流失** | 客户选择取消 | 取消流程、挽留优惠、离线调查 |
| **被动流失** | 支付失败 | 催收邮件、智能重试、卡片更新服务 |

主动流失通常占总流失的 50-70%。被动流失占 30-50%，但往往更容易修复。

本技能支持三种模式：

1. **构建取消流程** — 从零设计，包含调查、挽留优惠和确认
2. **优化现有流程** — 分析取消数据，提高挽留率
3. **设置催收** — 通过重试和邮件序列恢复支付失败

---

## 取消流程设计

### 取消流程结构

每个取消流程遵循此序列：

```
触发 → 调查 → 动态优惠 → 确认 → 取消后
```

**步骤 1：触发**
客户在账户设置中点击"取消订阅"。

**步骤 2：离线调查**
询问取消原因。这决定展示哪个挽留优惠。

**步骤 3：动态挽留优惠**
根据原因展示针对性优惠（折扣、暂停、降级等）

**步骤 4：确认**
如仍想取消，清晰确认并说明计费周期结束时间。

**步骤 5：取消后**
设定期望，提供便捷重新激活路径，触发挽回序列。

### 离线调查设计

离线调查是基础。好的原因分类：

| 原因 | 告诉你的信息 |
|------|-------------|
| 太贵 | 价格敏感，可能响应折扣或降级 |
| 用得不够 | 参与度低，可能响应暂停或入门帮助 |
| 缺少功能 | 产品缺口，展示路线图或替代方案 |
| 切换到竞品 | 竞争压力，了解对方提供什么 |
| 技术问题/Bug | 产品质量，升级到支持团队 |
| 临时/季节性需求 | 使用模式，提供暂停 |
| 业务关闭/变更 | 无法避免，学习并优雅放手 |
| 其他 | 兜底选项，包含自由文本字段 |

**调查最佳实践：**

- 1 个问题，单选加可选自由文本
- 最多 5-8 个原因选项（避免决策疲劳）
- 将最常见原因放前面（每季度审查数据）
- 不要让人感觉像道德绑架
- "帮助我们改进"比"为什么要离开？"效果更好

### 动态挽留优惠

核心洞察：**优惠与原因匹配。** 折扣无法挽留不使用产品的用户。功能路线图无法挽留付不起钱的用户。

**优惠-原因映射：**

| 取消原因 | 首选优惠 | 备选优惠 |
|---------|---------|---------|
| 太贵 | 折扣（2-3 个月 20-30%） | 降级到低价套餐 |
| 用得不够 | 暂停（1-3 个月） | 免费入门指导 |
| 缺少功能 | 路线图预览 + 时间线 | 替代方案指南 |
| 切换到竞品 | 竞品对比 + 折扣 | 反馈访谈 |
| 技术问题 | 立即升级到支持团队 | 赠金 + 优先修复 |
| 临时/季节性 | 暂停订阅 | 临时降级 |
| 业务关闭 | 跳过优惠（尊重情况） | — |

### 挽留优惠类型

**折扣**

- 2-3 个月 20-30% 折扣是最佳区间
- 避免 50%+ 折扣（训练客户为优惠而取消）
- 限时优惠（"离开此页面后优惠失效"）
- 展示节省金额，不只是百分比

**暂停订阅**

- 最多暂停 1-3 个月（更长暂停很少重新激活）
- 60-80% 的暂停用户最终回归活跃
- 自动重新激活并提前邮件通知
- 保留数据和设置

**套餐降级**

- 提供低价档位而非完全取消
- 展示保留什么 vs 失去什么
- 定位为"调整合适套餐"而非"降级"
- 准备好时可轻松升级回来

**功能解锁/延长**

- 解锁他们未尝试的高级功能
- 延长高阶试用
- 最适合"价值不够"原因

**人工触达**

- 针对高价值账户（MRR 前 10-20%）
- 路由到客户成功团队通话
- 小公司可由创始人发个人邮件

### 取消流程 UI 模式

```
┌─────────────────────────────────────┐
│  很遗憾看到您离开                    │
│                                     │
│  您取消的主要原因是什么？            │
│                                     │
│  ○ 太贵                             │
│  ○ 用得不够                         │
│  ○ 缺少我需要的功能                 │
│  ○ 切换到其他工具                   │
│  ○ 技术问题                         │
│  ○ 临时/现在不需要                  │
│  ○ 其他: [____________]             │
│                                     │
│  [继续]                             │
│  [算了，保留我的订阅]                │
└─────────────────────────────────────┘
         ↓ (选择"太贵")
┌─────────────────────────────────────┐
│  如果我们可以帮忙呢？                │
│                                     │
│  我们希望留住您。这是一个特别优惠：  │
│                                     │
│  ┌───────────────────────────────┐  │
│  │  接下来3个月享25%折扣         │  │
│  │  每月节省 ¥XX                │  │
│  │                               │  │
│  │  [接受优惠]                   │  │
│  └───────────────────────────────┘  │
│                                     │
│  或切换到 [基础版] ¥X/月 →          │
│                                     │
│  [不用了，继续取消]                  │
└─────────────────────────────────────┘
```

**UI 原则：**

- 保持"继续取消"选项可见（无暗黑模式）
- 一个首选优惠 + 一个备选，不要一堆选项
- 展示具体节省金额，不是抽象百分比
- 尽可能使用客户姓名和账户数据
- 移动端友好（很多取消发生在移动端）

各行业和计费服务商的详细取消流程模式，参见 [references/cancel-flow-patterns.md](references/cancel-flow-patterns.md)。

---

## 流失预测与主动留存

最好的挽留发生在客户点击"取消"之前。

### 风险信号

追踪这些流失领先指标：

| 信号 | 风险等级 | 时间范围 |
|------|---------|---------|
| 登录频率下降 50%+ | 高 | 取消前 2-4 周 |
| 核心功能使用停止 | 高 | 取消前 1-3 周 |
| 支持工单激增后停止 | 高 | 取消前 1-2 周 |
| 邮件打开率下降 | 中 | 取消前 2-6 周 |
| 计费页面访问增加 | 高 | 取消前几天 |
| 团队席位移除 | 高 | 取消前 1-2 周 |
| 数据导出启动 | 严重 | 取消前几天 |
| NPS 分数低于 6 | 中 | 取消前 1-3 个月 |

### 健康评分模型

从加权信号构建简单健康评分（0-100）：

```
健康评分 = (
  登录频率评分 × 0.30 +
  功能使用评分   × 0.25 +
  支持情绪       × 0.15 +
  计费健康       × 0.15 +
  参与度评分     × 0.15
)
```

| 分数 | 状态 | 行动 |
|------|------|------|
| 80-100 | 健康 | 增购机会 |
| 60-79 | 需关注 | 主动关怀 |
| 40-59 | 风险 | 干预活动 |
| 0-39 | 严重 | 人工触达 |

### 主动干预

**在他们考虑取消之前：**

| 触发条件 | 干预措施 |
|---------|---------|
| 使用量下降 >50% 持续 2 周 | "我们注意到您未使用 [功能]。需要帮助吗？"邮件 |
| 接近套餐限制 | 升级提醒（不是墙 — paywall-upgrade-cro 处理） |
| 14 天未登录 | 重新参与邮件，附带近期产品更新 |
| NPS 贬损者（0-6） | 24 小时内人工跟进 |
| 支持工单未解决 >48 小时 | 升级 + 主动状态更新 |
| 年度续费 30 天内 | 价值回顾邮件 + 续费确认 |

---

## 被动流失：支付恢复

支付失败导致 30-50% 的流失，但最容易恢复。

### 催收技术栈

```
预催收 → 智能重试 → 催收邮件 → 宽限期 → 硬取消
```

### 预催收（预防失败）

- **卡片过期提醒**：过期前 30、15、7 天发邮件
- **备用支付方式**：注册时提示添加第二支付方式
- **卡片更新服务**：Visa/Mastercard 自动更新计划（减少硬拒绝 30-50%）
- **预计费通知**：年付计划扣款前 3-5 天发邮件

### 智能重试逻辑

并非所有失败都相同。按拒绝类型制定重试策略：

| 拒绝类型 | 示例 | 重试策略 |
|---------|------|---------|
| 软拒绝（临时） | 余额不足、处理器超时 | 7-10 天内重试 3-5 次 |
| 硬拒绝（永久） | 卡被盗、账户关闭 | 不重试 — 请求新卡 |
| 需要认证 | 3D Secure、SCA | 引导客户更新支付 |

**重试时机最佳实践：**

- 重试 1：失败后 24 小时
- 重试 2：失败后 3 天
- 重试 3：失败后 5 天
- 重试 4：失败后 7 天（配合催收邮件升级）
- 4 次重试后：硬取消并提供重新激活路径

**智能重试提示：** 在原支付成功的每月同日重试（如果 1 号之前成功过，就在 1 号重试）。Stripe Smart Retries 自动处理此逻辑。

### 催收邮件序列

| 邮件 | 时机 | 语气 | 内容 |
|------|------|------|------|
| 1 | 第 0 天（失败时） | 友好提醒 | "您的支付未成功。请更新卡片。" |
| 2 | 第 3 天 | 帮助提醒 | "快速提醒 — 更新支付以保持访问。" |
| 3 | 第 7 天 | 紧迫 | "您的账户将在 3 天后暂停。立即更新。" |
| 4 | 第 10 天 | 最终警告 | "保持账户活跃的最后机会。" |

**催收邮件最佳实践：**

- 直接链接到支付更新页面（如可能无需登录）
- 展示他们将失去什么（数据、团队访问权限）
- 不责怪（"支付失败"而非"您未支付"）
- 包含支持联系方式
- 纯文本比设计邮件效果更好

### 恢复基准

| 指标 | 较差 | 平均 | 良好 |
|------|------|------|------|
| 软拒绝恢复率 | <40% | 50-60% | 70%+ |
| 硬拒绝恢复率 | <10% | 20-30% | 40%+ |
| 整体支付恢复率 | <30% | 40-50% | 60%+ |
| 预催收预防率 | 无 | 10-15% | 20-30% |

各服务商具体设置的完整催收手册，参见 [references/dunning-playbook.md](references/dunning-playbook.md)。

---

## 指标与衡量

### 关键流失指标

| 指标 | 公式 | 目标 |
|------|------|------|
| 月流失率 | 流失客户 / 月初客户 | B2C <5%，B2B <2% |
| 收入流失（净） | (流失 MRR - 扩展 MRR) / 期初 MRR | 负值（净扩展） |
| 取消流程挽留率 | 挽留数 / 总取消会话 | 25-35% |
| 优惠接受率 | 接受优惠数 / 展示优惠数 | 15-25% |
| 暂停重新激活率 | 重新激活数 / 总暂停数 | 60-80% |
| 催收恢复率 | 恢复数 / 总支付失败数 | 50-60% |
| 取消时间 | 从首个流失信号到取消的天数 | 追踪趋势 |

### 队列分析

按以下维度细分流失：

- **获客渠道** — 哪些渠道带来更粘性的客户？
- **套餐类型** — 哪些套餐流失最多？
- **使用时长** — 大多数取消发生在何时？（30、60、90 天？）
- **取消原因** — 哪些原因在增长？
- **挽留优惠类型** — 哪些优惠对哪些细分最有效？

### 取消流程 A/B 测试

一次测试一个变量：

| 测试 | 假设 | 指标 |
|------|------|------|
| 折扣比例（20% vs 30%） | 更高折扣挽留更多 | 挽留率、LTV 影响 |
| 暂停时长（1 vs 3 个月） | 更长暂停提高回归率 | 重新激活率 |
| 调查位置（优惠前 vs 后） | 先调查个性化优惠 | 挽留率 |
| 优惠展示（弹窗 vs 全页） | 全页获得更多关注 | 挽留率 |
| 文案语气（同理心 vs 直接） | 同理心减少摩擦 | 挽留率 |

**如何运行取消流程实验：** 使用 **ab-test-setup** 技能设计统计严谨的测试。PostHog 适合取消流程实验 — 其功能标志可在服务端将用户分流到不同流程，其漏斗分析追踪取消流程的每一步（调查 → 优惠 → 接受/拒绝 → 确认）。

---

## 常见错误

- **完全没有取消流程** — 即时取消浪费金钱。即使简单调查 + 一个优惠也能挽留 10-15%
- **让取消难以找到** — 隐藏取消按钮滋生怨恨和差评。许多司法管辖区要求易于取消（FTC Click-to-Cancel 规则）
- **每个原因相同优惠** — 统一折扣无法解决"缺少功能"或"用得不够"
- **折扣过深** — 50%+ 折扣训练客户为优惠而取消-回归
- **忽视被动流失** — 往往占 30-50% 且最容易修复
- **没有催收邮件** — 让支付失败静默取消账户
- **道德绑架文案** — "您确定要抛弃我们吗？"损害品牌信任
- **不追踪挽留优惠 LTV** — 30 天后又流失的"挽留"客户不算真正挽留
- **暂停过长** — 超过 3 个月的暂停很少重新激活。设限。
- **没有取消后路径** — 让重新激活变得简单并触发挽回邮件，因为有些流失用户会想回来

---

## 工具集成

实现时，使用当前环境中可用的计费、分析和实验工具。

### 留存平台

| 工具 | 最适合 | 核心功能 |
|------|--------|---------|
| **Churnkey** | 完整取消流程 + 催收 | AI 驱动自适应优惠，平均 34% 挽留率 |
| **ProsperStack** | 带分析的取消流程 | 高级规则引擎，Stripe/Chargebee 集成 |
| **Raaft** | 简单取消流程构建器 | 易于设置，适合早期阶段 |
| **Chargebee Retention** | Chargebee 客户 | 原生集成，前身 Brightback |

### 计费服务商（催收）

| 服务商 | 智能重试 | 催收邮件 | 卡片更新 |
|--------|:--------:|:--------:|:--------:|
| **Stripe** | 内置（Smart Retries） | 内置 | 自动 |
| **Chargebee** | 内置 | 内置 | 通过网关 |
| **Paddle** | 内置 | 内置 | 托管 |
| **Recurly** | 内置 | 内置 | 内置 |
| **Braintree** | 手动配置 | 手动 | 通过网关 |

### 相关 CLI 工具

| 工具 | 用途 |
|------|------|
| `stripe` | 订阅管理、催收配置、支付重试 |
| `customer-io` | 催收邮件序列、留存活动 |
| `posthog` | 通过功能标志进行取消流程 A/B 测试、漏斗分析 |
| `mixpanel` / `ga4` | 使用追踪、流失信号分析 |
| `segment` | 健康评分的事件路由 |

---

## 相关技能

- **email-sequence**：取消后的挽回邮件序列
- **paywall-upgrade-cro**：应用内升级时刻和试用到期
- **pricing-strategy**：套餐结构和年度折扣策略
- **onboarding-cro**：激活以防止早期流失
- **analytics-tracking**：设置流失信号事件
- **ab-test-setup**：统计严谨地测试取消流程变体

## 局限性

- 仅当任务明确匹配上述范围时使用本技能
- 不要将输出替代环境特定验证、测试或专家审查
- 如缺少必需输入、权限、安全边界或成功标准，停止并请求澄清

