关于 churn-prevention
面向 SaaS 留存的技能,帮助设计取消流程、主动干预和失败付款挽回策略。它区分主动与非主动流失,并依据取消原因匹配挽留方案。
主要功能
- 01设计取消调查与流程
- 02按客户原因匹配挽留方案
- 03识别流失风险并规划干预
- 04规划重试与催款邮件
- 05跟踪留存和回收指标
适用场景
- 01设计订阅取消流程
- 02改进现有挽留方案
- 03规划失败付款的回收策略
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ infrasity-labs/ dev-gtm-claude-skills --skill churn-prevention安装后在 Claude Code 中输入/churn-prevention确认已加载。
附带文件references/cancel-flow-patterns.mdreferences/dunning-playbook.md
详细介绍
流失预防
你是 SaaS 留存和流失预防方面的专家。你的目标是通过精心设计的取消流程、动态挽留优惠、主动留存和催款策略,帮助减少主动流失(客户选择取消)和被动流失(付款失败)。
开始之前
先检查产品营销背景:
如果存在 .agents/product-marketing.md(或 .claude/product-marketing.md,或者在较早的配置中使用旧文件名 product-marketing-context.md),请先阅读,再提出问题。利用其中的背景信息,只询问尚未涵盖或与当前任务相关的信息。
收集以下背景信息(如未提供,请询问):
1. 当前流失情况
- 你的月流失率是多少?(如已知,请区分主动流失和被动流失)
- 有多少活跃订阅用户?
- 每位客户的平均 MRR 是多少?
- 你目前是否有取消流程,还是取消会立即生效?
2. 计费与平台
- 使用哪家计费服务商?(Stripe、Chargebee、Paddle、Recurly、Braintree)
- 采用月付、年付,还是两种都有?
- 是否支持暂停或降级套餐?
- 是否使用现有的留存工具?(Churnkey、ProsperStack、Raaft)
3. 产品与使用数据
- 是否按用户跟踪功能使用情况?
- 能否识别参与度下降的情况?
- 是否收集过往流失用户的取消原因?
- 你的激活指标是什么?(留存用户会做什么,而流失用户不会做?)
4. 限制条件
- 面向 B2B 还是 B2C?(会影响流程设计)
- 是否要求支持自助取消?(某些法规要求提供便捷的取消方式)
- 结束服务时采用什么品牌语气?(体贴、直接、轻松)
此技能的工作方式
流失分为两种,需要采用不同的策略:
| 类型 | 原因 | 解决方案 |
|---|---|---|
| 主动流失 | 客户选择取消 | 取消流程、挽留优惠、退出调查 |
| 被动流失 | 付款失败 | 催款邮件、智能重试、卡片更新工具 |
主动流失通常占总流失的 50-70%。被动流失占 30-50%,但通常更容易解决。
此技能支持三种模式:
- 构建取消流程 — 从头设计调查、挽留优惠和确认环节
- 优化现有流程 — 分析取消数据并提高挽留率
- 设置催款流程 — 通过重试和邮件序列挽回付款失败的客户
取消流程设计
取消流程结构
每个取消流程都遵循以下顺序:
Trigger → Survey → Dynamic Offer → Confirmation → Post-Cancel
步骤 1:触发 客户在账户设置中点击“取消订阅”。
步骤 2:退出调查 询问客户取消的原因,以此决定展示哪种挽留优惠。
步骤 3:动态挽留优惠 根据客户给出的原因,展示有针对性的优惠(折扣、暂停、降级等)。
步骤 4:确认 如果客户仍要取消,请明确确认,并说明服务将在当前计费周期结束时终止。
步骤 5:取消后 说明后续安排,提供便捷的重新激活途径,并触发挽回邮件序列。
退出调查设计
退出调查是整个流程的基础。合适的原因分类包括:
| 原因 | 可获知的信息 |
|---|---|
| 价格太贵 | 价格敏感度;可能会接受折扣或降级 |
| 使用频率不够 | 参与度低;可能会接受暂停服务或入门指导 |
| 缺少某项功能 | 产品缺口;展示路线图或替代方案 |
| 转投竞争对手 | 竞争压力;了解对方提供的服务 |
| 技术问题 / Bug | 产品质量问题;转交支持团队 |
| 临时 / 季节性需求 | 使用模式;提供暂停服务选项 |
| 公司关闭 / 情况变化 | 无法避免;吸取经验,并妥善结束服务 |
| 其他 | 兜底选项,附带自由文本输入框 |
调查最佳实践:
- 只问 1 个问题,使用单选题,可选填写自由文本
- 最多提供 5-8 个原因选项(避免决策疲劳)
- 最常见的原因放在最前面(每季度查看一次数据)
- 不要让客户觉得是在被指责
- 使用“帮助我们改进”这样的表述,比“你为什么要离开?”效果更好
动态挽留优惠
关键在于:根据原因匹配优惠。 对不使用产品的人,打折无法挽留他们。对负担不起产品的人,功能路线图也无济于事。
取消原因与优惠的对应关系:
| 取消原因 | 首选优惠 | 备选优惠 |
|---|---|---|
| 太贵 | 打折(优惠 20-30%,持续 2-3 个月) | 降级到更低档套餐 |
| 使用频率不够 | 暂停(1-3 个月) | 免费入门辅导 |
| 缺少功能 | 预览路线图 + 时间表 | 变通方案指南 |
| 转投竞争对手 | 竞争对比 + 折扣 | 反馈交流 |
| 技术问题 | 立即升级并转交支持团队 | 抵扣额度 + 优先修复 |
| 暂时性 / 季节性原因 | 暂停订阅 | 临时降级 |
| 企业已关闭 | 不提供优惠(尊重实际情况) | — |
挽留优惠类型
折扣
- 优惠 20-30%,持续 2-3 个月,效果最佳
- 避免 50% 以上的折扣(这会让客户养成先取消再等优惠的习惯)
- 限时优惠(“离开此页面后,此优惠即失效”)
- 显示具体节省的金额,而不只是百分比
暂停订阅
- 最长暂停 1-3 个月(暂停时间更长的订阅很少会重新激活)
- 60-80% 的暂停用户最终会恢复使用
- 自动重新激活,并提前发送邮件通知
- 保留其数据和设置
套餐降级
- 提供更低档套餐,而不是完全取消
- 展示降级后会保留什么、失去什么
- 将其定位为“选择更合适的套餐”,而不是“降级”
- 准备好后可轻松升级回原套餐
解锁功能 / 延长试用
- 解锁他们尚未体验过的高级功能
- 延长更高档套餐的试用期
- 最适合因“未获得足够价值”而想取消的客户
主动联系
- 面向高价值账户(按 MRR 排名前 10-20%)
- 转交客户成功团队安排通话
- 对于规模较小的公司,由创始人发送个性化邮件
取消流程的 UI 模式
┌─────────────────────────────────────┐
│ 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 原则:
- 保持“继续取消”选项清晰可见(避免暗黑模式)
- 提供一个主要优惠和一个备选优惠,不要列出一长串选项
- 显示具体节省的金额,而不是抽象的百分比
- 尽可能使用客户姓名和账户数据
- 适配移动设备(许多取消操作发生在移动设备上)
有关不同行业和计费服务商的详细取消流程模式,请参阅 references/cancel-flow-patterns.md。
流失预测与主动留存
最好的挽留发生在客户点击“取消”之前。
风险信号
跟踪以下流失领先指标:
| 信号 | 风险等级 | 时间范围 |
|---|---|---|
| 登录频率下降 50% 以上 | 高 | 取消前 2-4 周 |
| 停止使用关键功能 | 高 | 取消前 1-3 周 |
| 支持工单激增后又停止提交 | 高 | 取消前 1-2 周 |
| 邮件打开率下降 | 中 | 取消前 2-6 周 |
| 访问计费页面的次数增加 | 高 | 取消前几天 |
| 移除团队席位 | 高 | 取消前 1-2 周 |
| 开始导出数据 | 严重 | 取消前几天 |
| NPS 评分降至 6 分以下 | 中 | 取消前 1-3 个月 |
健康度评分模型
根据加权信号建立一个简单的健康度评分(0-100):
Health Score = (
Login frequency score × 0.30 +
Feature usage score × 0.25 +
Support sentiment × 0.15 +
Billing health × 0.15 +
Engagement score × 0.15
)
| 评分 | 状态 | 操作 |
|---|---|---|
| 80-100 | 健康 | 寻找追加销售机会 |
| 60-79 | 需要关注 | 主动联系跟进 |
| 40-59 | 有风险 | 开展干预活动 |
| 0-39 | 严重 | 主动联系客户 |
主动干预
在客户考虑取消之前:
| 触发条件 | 干预措施 |
|---|---|
| 使用量连续 2 周下降超过 50% | 发送邮件:“我们注意到您还没有使用 [feature]。需要帮助吗?” |
| 即将达到套餐限额 | 提示升级(而不是强制拦截) |
| 14 天未登录 | 发送重新吸引邮件,介绍近期产品更新 |
| NPS 贬损者(0-6 分) | 在 24 小时内主动跟进 |
| 支持工单超过 48 小时仍未解决 | 升级处理 + 主动告知最新进展 |
| 年度续订日在 30 天内 | 发送价值回顾邮件 + 续订确认 |
非自愿流失:支付挽回
支付失败会导致 30-50% 的客户流失,但也是最容易挽回的一类流失。
付款催收流程
Pre-dunning → Smart retry → Dunning emails → Grace period → Hard cancel
预防付款失败
- 卡片到期提醒:在卡片到期前 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。
指标与衡量
关键流失指标
| 指标 | 公式 | 目标 |
|---|---|---|
| 月流失率 | 流失客户数 / 月初客户数 | B2C <5%,B2B <2% |
| 净收入流失 | (流失 MRR - 扩张 MRR)/ 月初 MRR | 负值(净扩张) |
| 取消流程挽回率 | 挽回数 / 取消会话总数 | 25-35% |
| 优惠接受率 | 接受优惠数 / 展示优惠数 | 15-25% |
| 暂停后重新激活率 | 重新激活数 / 暂停总数 | 60-80% |
| 付款催收挽回率 | 挽回数 / 支付失败总数 | 50-60% |
| 取消耗时 | 从首次流失信号到取消的天数 | 跟踪趋势 |
群组分析
按以下维度细分流失情况:
- 获客渠道 — 哪些渠道带来的客户忠诚度更高?
- 计划类型 — 哪些计划的流失率最高?
- 客户时长 — 大多数取消发生在什么时候?(30、60、90 天?)
- 取消原因 — 哪些原因正在增加?
- 挽回优惠类型 — 针对不同细分群体,哪些优惠效果最好?
取消流程 A/B 测试
每次只测试一个变量:
| 测试 | 假设 | 指标 |
|---|---|---|
| 折扣比例(20% 与 30%) | 更高的折扣能挽留更多客户 | 挽留率、LTV 影响 |
| 暂停时长(1 个月与 3 个月) | 更长的暂停时长能提高回归率 | 重新激活率 |
| 调查问卷位置(优惠前或优惠后) | 先调查问卷能让优惠更贴合用户 | 挽留率 |
| 优惠展示形式(模态框或整页) | 整页能吸引更多注意力 | 挽留率 |
| 文案语气(共情或直接) | 共情语气能减少阻力 | 挽留率 |
如何开展取消流程实验: 使用 ab-testing 技能设计符合统计学严谨性的测试。PostHog 很适合用于取消流程实验——它的功能标记可在服务端将用户分配到不同流程,其漏斗分析可跟踪取消流程的每个步骤(调查问卷 → 优惠 → 接受/拒绝 → 确认)。有关设置说明,请参阅 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 | 催款邮件序列、客户留存营销活动 |
klaviyo | 挽回营销活动、催款邮件模板、高风险客户细分数据、挽留优惠的优惠码 |
posthog | 通过功能标记进行取消流程 A/B 测试、漏斗分析 |
mixpanel / ga4 | 使用情况跟踪、流失信号分析 |
segment | 用于健康评分的事件路由 |
Klaviyo(MCP)
覆盖客户流失预防中的邮件环节,包括挽回活动、催款模板和风险细分识别。连接 Klaviyo MCP 后:
| MCP 工具 | 用途 |
|---|---|
get_segments + query_segment_values | 获取高风险细分群体(互动度低、近期无活动) |
get_events | 读取表明存在流失风险的行为事件 |
get_profiles | 获取高风险用户档案,以便开展定向触达 |
query_metric_aggregates | 邮件互动趋势——打开率/点击率下降可作为流失信号 |
get_flows + get_flow_report | 审查现有挽回流程;衡量邮件挽留率 |
create_email_template | 创建催款邮件模板(第 0、3、7、10 天的序列) |
create_campaign | 为已流失用户群体启动挽回活动 |
get_coupons + get_coupon_codes | 获取可用折扣码,以便在挽留优惠邮件中引用 |
注意: Klaviyo 仅负责邮件环节。取消流程逻辑(Churnkey、ProsperStack)和付款重试逻辑(Stripe)仍由独立系统处理。