客户成功与收入扩张 — 完整的留存操作系统
将客户转化为长期的收入引擎。这不是建议 — 这是一个完整的操作系统,包含评分模型、模板、剧本和自动化模式,适用于任何B2B或B2C的订阅业务。
使用时机
- 设计或审计你的留存策略端到端
- 客户显示出流失信号,你需要一个干预剧本
- 构建粘性的入门流程(前90天)
- 计划从现有账户中增加收入
- 运行季度业务回顾(QBR)
- 分析队列留存数据,识别流失原因
- 为流失用户创建重新激活活动
- 构建客户健康评分系统
- 预防非自愿流失(支付失败)
不使用时机
- 获取全新客户(使用潜在客户生成/外展技能)
- 一次性产品销售,没有重复成分
- 客户真的是一个糟糕的匹配 —— 让他们优雅地离开
第一阶段:客户健康评分(你的早期预警系统)
在其他任何事情之前,建立一个健康评分。没有它,你就是在盲目飞行 —— 对流失做出反应,而不是预防它。
健康评分模型(0-100)
每周对每个账户进行评分。尽可能自动化。
health_score:
dimensions:
usage:
weight: 30
signals:
- login_frequency_vs_baseline: # % of their normal
90-100%: 10
70-89%: 7
50-69%: 4
below_50%: 1
- core_feature_adoption: # % of key features used
4+_features: 10
3_features: 7
2_features: 4
1_or_fewer: 1
- depth_of_usage: # power user vs surface
advanced_features: 10
intermediate: 6
basic_only: 3
engagement:
weight: 25
signals:
- response_time_to_comms: # avg days to reply
same_day: 10
1-2_days: 7
3-5_days: 4
5+_days_or_no_reply: 1
- attends_check_ins: # QBR/call attendance
always: 10
usually: 7
sometimes: 4
never: 1
- proactive_requests: # they ask for more
monthly: 10
quarterly: 6
rarely: 3
never: 1
financial:
weight: 20
signals:
- payment_history: # last 6 months
always_on_time: 10
1_late: 7
2+_late: 3
failed_payment_unresolved: 0
- contract_value_trend:
expanding: 10
stable: 6
contracting: 2
- billing_page_visits: # in last 30 days
none: 10
1-2: 6 # curious
3+: 2 # shopping to leave
relationship:
weight: 15
signals:
- champion_status: # your internal advocate
strong_champion: 10
moderate: 6
weak_or_unknown: 3
champion_left_company: 0
- stakeholder_breadth: # contacts you have
3+_contacts: 10
2_contacts: 6
single_threaded: 2
- sentiment_last_interaction:
positive: 10
neutral: 6
negative: 2
outcome:
weight: 10
signals:
- achieving_stated_goals: # their original objectives
exceeding: 10
on_track: 7
behind: 3
unclear_goals: 2
- roi_demonstrated:
clear_positive_roi: 10
probable_roi: 6
unclear: 3
negative: 0
risk_tiers:
healthy: 75-100 # green — nurture & expand
monitor: 50-74 # yellow — proactive outreach
at_risk: 25-49 # orange — intervention required
critical: 0-24 # red — save or graceful exit
自动化健康警报
| 评分变化 | 行动 |
|---|---|
| 一周内下降15+分 | 立即外展 — 发生了变化 |
| 进入"处于风险"等级 | 触发保存剧本(第五阶段) |
| 进入"关键" | 在24小时内上报给创始人/CEO |
| 从较低等级上升到"健康" | 发送祝贺 + 扩张对话 |
| 冠军离开公司 | 紧急情况:在48小时内识别新冠军 |
第二阶段:入门(0-90天) — 留存基础
20%+的自愿流失可以追溯到糟糕的入门(Recurly)。前90天决定了接下来的900天。
天对天入门框架
onboarding_playbook:
day_0:
- welcome_message: |
个性化,不是模板化的。参考他们在销售过程中的具体目标。
包括:接下来会发生什么,时间表,他们将与谁合作,如何联系你。
- access_setup: 授予所有必要的访问权限,工具,集成
- kickoff_call: 30分钟 — 对齐目标,成功指标,沟通节奏
- document: 在CRM中记录他们声明的目标和成功标准
day_1-3:
- quick_win: 尽快交付一个可见的结果
- examples:
- SaaS: 第一个工作流程自动化
- Agency: 第一个可交付物草稿
- Consulting: 第一个见解或建议
- why: 快速胜利创造了承诺偏见 —— 他们现在已经看到了价值
day_7:
- check_in_1: |
"一切都好吗?有任何问题或阻碍吗?"
目标:尽早发现困惑。不要等到他们抱怨。
- share_progress: 展示已经完成的内容,即使很小
day_14:
- first_result: 分享可衡量的结果和数字
- format: "[指标]从[X]变到[Y] — 这对您意味着什么"
- ask: "这是否符合您的预期?"
day_30:
- milestone_review:
- 展示ROI计算
- 确认成功指标是否达到
- 讨论接下来的60天
- 介绍扩张可能性(播种,不销售)
- document: 在CRM中更新30天健康评估
day_60:
- deeper_review:
- 功能采用检查 — 他们是否使用了所有可用的功能?
- 识别未使用的能力和对他们进行培训
- 利益相关者扩展 — 会见其他应该参与的团队成员
day_90:
- graduation:
- 完整的QBR格式(见第四阶段)
- 从"入门"过渡到"持续"节奏
- 设置年度目标
- 如果健康评分是绿色:讨论第一年路线图
- 如果是黄色/橙色:在它变成习惯之前进行干预
入门评分标准(0-100)
对你的入门过程进行评分:
| 维度 | 权重 | 10分 | 5分 | 1分 |
|---|---|---|---|---|
| 第一个价值的时间 | 25 | < 3天 | 1-2周 | > 2周 |
| 客户所需努力 | 20 | 最小(你来做) | 中等 | 重劳动 |
| 个性化 | 15 | 完全定制到目标 | 半模板化 | 通用 |
| 沟通清晰度 | 15 | 主动,清晰的时间表 | 反应性 | 混乱 |
| 快速胜利交付 | 15 | 第一周内可衡量的结果 | 模糊的进展 | 没有胜利 |
| 文档化 | 10 | 完整的知识库/指南 | 基本文档 | 无 |
目标:80+。 低于60 = 你的入门是一个流失工厂。
第三阶段:持续价值交付(每月证明)
客户不是因为你的服务停止工作而流失。他们流失是因为他们忘记了它在工作。
月度价值报告模板
# [月份]绩效报告 — [客户名称]
## 关键指标
| 指标 | 本月 | 上个月 | 变化 |
|--------|-----------|------------|--------|
| [主要KPI] | [值] | [值] | [+/-]% |
| [次要KPI] | [值] | [值] | [+/-]% |
| [第三KPI] | [值] | [值] | [+/-]% |
## 我们做了什么
- [具体行动1和结果]
- [具体行动2和结果]
- [所做的优化或改进]
## ROI总结
- 您的投资:$[月成本]
- 交付的价值:$[量化价值]
- ROI:[X]倍回报
## 下一步
- [计划改进1]
- [计划改进2]
## 快速问题
[一个具体问题,保持对话开放]
价值报告规则
- 每个月都发送,无一例外 —— 自动化数据拉取
- 只有真实数字 —— 从不含糊的"事情进展顺利"
- 展示趋势 —— 月对月显示轨迹
- 总是以一个问题结束 —— 保持沟通双向
- 突出一个主动改进 —— 即使他们不问,也表明你在工作
- 保持在1页以内 —— 执行人员略读,不读小说
第四阶段:季度业务回顾(QBR)
QBR是你最有可能的留存活动。一个好的QBR同时可以预防流失,发现扩张,加深关系。
QBR议程模板(45-60分钟)
qbr_agenda:
1_celebrate_wins: # 10分钟
- "这是我们这个季度一起取得的成就"
- 展示3-5个头条指标和趋势
- 将结果与他们原来的目标联系起来
- 问:"这是否符合你的感知?"
2_deep_dive: # 15分钟
- 一个关注领域(他们的选择或你的建议)
- 带来他们没有见过的分析
- 如果可能的话,与行业基准比较
- "这是我们学到的,以及它意味着什么"
3_feedback_loop: # 10分钟
- "什么做得好?"(加强,不要跳过这个)
- "我们能做得更好吗?"(明显地写下来)
- "你的业务有什么变化我们应该知道的吗?"
- 聆听流失信号(见下面的列表)
4_roadmap: # 10分钟
- 下个季度的计划
- 任何与他们相关的新功能或功能
- 将路线图项目与他们声明的需求联系起来
5_expansion: # 5分钟
- "根据你的成长,这里是我们可以更多帮助的地方"
- 呈现一个扩张想法(不是三个 —— 专注)
- 框架:"其他处于你这种情况的客户发现X很有价值"
- 没有压力 —— 播种
6_next_steps: # 5分钟
- 总结行动项目(你的和他们的)
- 确认下一次QBR日期
- 在24小时内发送书面总结
QBR评分(对账户1-5评分)
| 维度 | 5(优秀) | 3(尚可) | 1(危险) |
|---|---|---|---|
| 目标实现 | 超过所有目标 | 达到一些 | 大部分未达到 |
| 参与度 | 主动,热情 | 响应 | 脱离 |
| 关系深度 | 多线程,执行赞助 | 单一联系 | 联系人离开 |
| 扩张信号 | 询问更多服务 | 开放讨论 | 削减范围 |
| 支付健康 | 总是准时,扩张 | 稳定 | 迟到,质疑成本 |
得分20-25: 扩张候选 —— 推动升级销售 得分15-19: 健康 —— 保持节奏 得分10-14: 处于风险 —— 增加接触点 得分5-9: 临界 —— 立即激活保存剧本
第五阶段:流失预防与保存剧本
14个流失信号(按严重程度排名)
| # | 信号 | 严重程度 | 响应时间 |
|---|---|---|---|
| 1 | 数据导出请求 | 🔴 临界 | 同一天 |
| 2 | 询问取消条款 | 🔴 临界 | 同一天 |
| 3 | 冠军离开公司 | 🔴 临界 | 48小时 |
| 4 | 支付失败(第二次尝试) | 🔴 临界 | 同一天 |
| 5 | 使用量比基线下降50%+ | 🟠 高 | 3天 |
| 6 | 停止回复消息 | 🟠 高 | 1周 |
| 7 | 错过2+预定检查 | 🟠 高 | 1周 |
| 8 | 在对话中提到竞争对手 | 🟡 中等 | 下一个接触点 |
| 9 | 内部宣布预算审查 | 🟡 中等 | 1周 |
| 10 | 关键利益相关者变化 | 🟡 中等 | 2周 |
| 11 | 请求减少范围/层级 | 🟡 中等 | 下一个接触点 |
| 12 | 支持票飙升然后沉默 | 🟡 中等 | 1周 |
| 13 | 账单页面访问增加 | 🟡 中等 | 下一个接触点 |
| 14 | 连续3周参与度评分下降 | 🟡 中等 | 2周 |
保存剧本(5个阶段)
save_playbook:
stage_1_detect:
trigger: 健康评分进入"处于风险" OR 检测到流失信号
action: |
向账户所有者+经理发出内部警报。
拉取完整的账户历史:使用情况,支付,最后互动,开放问题。
准备价值总结(迄今为止交付的总ROI)。
stage_2_reach_out:
timing: 在信号严重性的响应时间内
approach: |
个性化,不是模板化的。来自人类,不是"团队"。
"嗨[名字],我注意到[具体观察]。想检查一下 ——
[具体事情]一切都好吗?"
不要:提到流失,防御性,或预先提供折扣。
channel: 匹配他们首选的渠道(电子邮件,电话,Slack等)
stage_3_listen:
goal: 了解真正的原因,而不是表面的借口
common_real_reasons:
- "看不到价值" → ROI没有清楚地展示
- "太贵了" → 价值感知差距(或真正的预算削减)
- "转向竞争对手" → 你不知道的功能/价格差距
- "冠军离开" → 关系不够广泛
- "不经常使用" → 采用/培训差距
- "优先事项变了" → 他们的业务转移了
technique: |
问"要让这对你有效,需要改变什么?"
不是"怎么了?"(防御性)或"我们能做什么?"(绝望)
stage_4_intervene:
options_by_reason:
not_seeing_value:
- 紧急价值审查 — 用硬数字展示ROI
- 提供专门的优化会议
- 设置新的,可衡量的目标,30天检查点
too_expensive:
- 层级调整(降级>取消)
- 暂停选项(1-2个月,保留他们的数据/设置)
- 如果他们承诺,年度折扣
- 最后手段:临时价格降低,有到期日
low_usage:
- 个性化培训课程
- 分配一个入门伙伴
- 简化他们的设置(减少复杂性)
champion_left:
- 请求在48小时内介绍继任者
- 准备"新利益相关者简报",包括全部历史+ROI
- 提供新的启动电话与新联系人
competitor:
- 了解他们比较的具体功能/价格
- 构建竞争比较(诚实的,不是FUD)
- 如果你真的不能竞争:让他们优雅地离开
stage_5_outcome:
saved:
- 文档化什么有效 → 更新剧本
- 设置30/60/90天健康检查点
- 永久解决根本原因(不要只是修补)
churned:
- 退出面试:"我们本可以做些什么不同?"
- 保持门敞开:"如果事情改变,我们在这里"
- 添加到重新激活管道(见第七阶段)
- 分析:这是否可预测?更新健康评分模型
暂停与取消框架
在接受取消之前总是提供暂停。
| 场景 | 提供 | 条款 |
|---|---|---|
| 预算削减(临时) | 暂停1-3个月 | 保留数据,保留价格,随时恢复 |
| 低使用量(季节性) | 降级到维护层级 | 减少范围,减少价格 |
| 团队过渡 | 暂停1个月 | 新团队准备好时免费重新入门 |
| “只是不是优先事项” | 暂停,每月检查 | 快速电子邮件:“准备好恢复了吗?” |
为什么暂停有效: 40-60%的暂停账户重新激活。0%的取消账户自愿回来。
第六阶段:扩张收入(无需获取即可增长)
扩张剧本
顶级B2B SaaS公司从现有客户中产生30-50%的新ARR。 扩张比获取更便宜,更快,更可靠。
5个扩张触发器
| 触发器 | 信号 | 方法 |
|---|---|---|
| 使用上限 | 达到计划限制 | “你增长得很快 —— 这里是如何Scale层级移除上限” |
| 新用例 | 他们提到相邻问题 | “我们实际上也解决这个问题 —— 想要一个快速演示吗?” |
| 团队增长 | 新员工,部门 | “你的团队增长了 —— 想要增加座位/扩展访问吗?” |
| 成功里程碑 | 达到一个重要目标 | “恭喜[里程碑]!处于你这个阶段的客户通常会从[X]中受益” |
| 年度续订 | 合同续订临近 | “在我们续订之前,让我们看看发生了什么变化,以及你可能需要什么” |
扩张的定价心理学
expansion_pricing:
anchor_to_value:
- "这个功能为类似客户产生每月$X"
- "以你目前的体量,升级在[N]周内为自己买单"
bundle_discount:
- 将2-3个附加组件打包在一起,比单独价格低15-20%
- "大多数处于你这个阶段的客户将[X]和[Y]一起添加"
annual_commit:
- 年度支付享受15-20%的折扣
- 定位为:"在我们下一次价格上涨之前锁定这个价格"
- 只有在健康评分为绿色时才提供(不要奖励处于风险的折扣)
land_and_expand:
- 从小开始,证明价值,扩大范围
- "让我们用一个团队试点这个30天,然后扩展"
- 较低风险 = 更高转化
never_do:
- 为挽救流失客户而打折(训练他们威胁流失以获得交易)
- 将所有内容捆绑在一起(没有扩张空间)
- 没有增加价值的惊喜价格上涨
净收入留存(NRR)计算
NRR = (起始MRR + 扩张 - 收缩 - 流失) / 起始MRR × 100
示例:
起始MRR:$50,000
扩张(升级销售):+$8,000
收缩(降级):-$2,000
流失:-$3,000
NRR = ($50,000 + $8,000 - $2,000 - $3,000) / $50,000 × 100 = 106%
按细分市场目标NRR:
SMB:90-100%(一些流失是正常的)
中端市场:100-110%
企业:110-130%
最佳类别:130%+(Snowflake,Twilio在规模上)
第七阶段:重新激活(赢回活动)
重新激活时间序列
reactivation_sequence:
day_7:
subject: "我们保存了你的设置"
tone: 柔和,无压力
message: |
嘿[名字],你的[数据/设置/配置]仍然在这里。
如果有什么变化,你可以在任何地方恢复。
cta: "一键重新激活"
day_30:
subject: "这是你错过的"
tone: 以价值为中心
message: |
自从你离开后,我们增加了[新功能/改进]。
像你这样的客户看到[具体结果]。
cta: "看看有什么新东西"
incentive: 还没有
day_60:
subject: "[名字],快速问题"
tone: 个人,好奇
message: |
我一直想知道 —— 你找到[他们原来的问题]的解决方案了吗?
如果没有,我很想向你展示[具体改进]如何解决
正是以前不起作用的地方。
cta: "15分钟电话"
incentive: 可选 —— 免费一个月或前3个月降低费率
day_90:
subject: "这是我最后一次"
tone: 尊重结束
message: |
我不会继续发电子邮件 —— 我知道你的收件箱很忙。
如果你想重新审视[我们解决的问题],我们会在这里。
你的数据将再保存90天。
cta: "随时重新激活"
incentive: 最好报价(前3个月30%折扣,或免费一个月)
day_180:
subject: "你的数据即将过期"
tone: 事实,紧急
message: |
根据我们的保留政策,你的[数据/设置]将在30天内被删除。
想保留它吗?在[日期]之前重新激活或导出。
cta: "保存我的数据" / "导出"
重新激活性能基准
| 指标 | 好 | 伟大 | 最佳类别 |
|---|---|---|---|
| 总体赢回率 | 5-10% | 10-15% | 15-25% |
| 7-30天重新激活 | 3-5% | 5-8% | 8-12% |
| 激励转换提升 | 2倍基线 | 3倍 | 4倍 |
| 重新激活客户留存(6个月) | 50% | 65% | 80% |
第八阶段:非自愿流失预防(支付恢复)
30-40%的所有流失是非自愿的 —— 支付失败,过期卡,账单错误。这是你可以放在桌子上的免费收入。
支付恢复序列
payment_recovery:
attempt_1_failed:
action: 在24小时内重试支付(自动)
notification: 无(许多是暂时性的持有)
attempt_2_failed:
action: 在48小时内重试
notification: |
友好的电子邮件:"注意 —— 你的支付没有通过。
这通常发生在卡过期或有暂时性的持有时。
在这里更新你的支付方式:[链接]"
tone: 有帮助的,不是威胁的
attempt_3_failed:
action: 在72小时内重试
notification: |
更紧急:"你的账户有被中断的风险。
我们不希望您失去对[他们使用的具体价值]的访问。
更新只需30秒:[链接]"
add: 如果适用,在应用内横幅
day_10:
action: 最后一次重试
notification: |
"在我们暂停你的账户之前最后一次尝试。
你的[数据/设置/进度]是安全的 —— 只需更新支付即可继续。"
escalation: 对于高价值账户,个人电子邮件来自账户经理
day_14:
action: 暂停账户(不删除)
notification: |
"你的账户已暂停。一切都已保存。
随时重新激活:[链接]"
retention: 至少保留数据90天
卡更新优化
- 预到期提醒: 在卡到期前30天发送电子邮件:“你的卡以[XXXX]结尾,将在下个月到期。更新以避免中断。”
- 多种支付方式: 允许备份卡
- 智能重试时机: 在1日和15日重试(发薪日对齐)
- 账户更新服务: 使用Stripe/处理器卡更新器自动刷新过期卡
第九阶段:细分留存策略
不同的客户需要不同的方法。
按收入层级
retention_by_tier:
enterprise: # >$5,000/mo
cadence: 每周接触点,每月深入研究,季度QBR
team: 专属CSM + 执行赞助商
expansion: 定制解决方案,多年交易
save_budget: 长达6个月高达25%的折扣
mid_market: # $500-5,000/mo
cadence: 双周检查,季度QBR
team: 共享CSM(1:20比例)
expansion: 层级升级,附加功能
save_budget: 长达3个月高达15%的折扣
smb: # <$500/mo
cadence: 每月自动报告,季度电子邮件检查
team: 技术接触(自动)+ 集中支持
expansion: 年度承诺折扣,推荐计划
save_budget: 仅暂停选项(此层级无折扣)
free_trial:
cadence: 第1天,3,7,10,13(试用期结束)
team: 自动化序列 + 高意图销售
conversion: 第7天提供演示优惠,第12天提供折扣
按生命周期阶段
| 阶段 | 焦点 | 关键指标 | 行动 |
|---|---|---|---|
| 0-30天 | 激活 | 第一个价值的时间 | 加速入门 |
| 30-90天 | 习惯形成 | 每周活跃使用 | 功能发现 |
| 90-180天 | 深化 | 功能广度 | 培训,QBR |
| 180-365天 | 扩张 | NRR | 升级销售对话 |
| 365+天 | 忠诚度 | 倡导分数 | 推荐计划,案例研究 |
第十阶段:指标仪表板
每周留存仪表板
weekly_dashboard:
headline_metrics:
- gross_churn_rate: "%的MRR因取消而丢失"
- net_churn_rate: "毛流失减去扩张收入"
- nrr: "净收入留存 —— 真正重要的数字"
- logo_churn: "%的客户丢失(不按收入加权)"
health_distribution:
- healthy_accounts: "[计数] ([%]) — $[MRR]"
- monitor_accounts: "[计数] ([%]) — $[MRR]"
- at_risk_accounts: "[计数] ([%]) — $[MRR]"
- critical_accounts: "[计数] ([%]) — $[MRR]"
pipeline:
- expansion_pipeline: "$[金额]在活跃的升级对话中"
- renewals_next_30_days: "[计数]账户,$[MRR]处于风险"
- saves_this_week: "[计数]干预,[计数]保存,$[MRR]恢复"
cohort_snapshot:
- latest_cohort_d30: "[%] — 趋势[上/下]与之前的队列相比"
- best_cohort: "[月份]在[%] — 分析为什么"
- worst_cohort: "[月份]在[%] — 分析为什么"
每月执行摘要模板
# 留存报告 — [月份年份]
## 头条
- NRR:[X]%(从[上个月]%[上升/下降])
- 毛流失:[X]%($[金额])
- 扩张:$[金额]([计数]账户升级)
- 现有客户净变化:[+/-]$[金额] MRR
## 胜利
- [具体保存故事,带数字]
- [扩张胜利,带数字]
## 风险
- [X]账户处于关键健康状态([总MRR处于风险])
- 顶级风险:[账户名称] — [原因] — [计划]
## 下个月的行动
1. [具体行动,带所有者和截止日期]
2. [具体行动,带所有者和截止日期]
行业留存基准
| 行业 | 好的月流失 | 伟大 | 最佳类别 |
|---|---|---|---|
| B2B SaaS(SMB) | < 5% | < 3% | < 2% |
| B2B SaaS(企业) | < 2% | < 1% | < 0.5% |
| B2C订阅 | < 7% | < 5% | < 3% |
| 代理/咨询 | < 8% | < 5% | < 3% |
| 电子商务(订阅盒子) | < 10% | < 7% | < 5% |
| 健身/健康 | < 12% | < 8% | < 5% |
10个致命的留存错误
- 没有健康评分 —— 你在流失发生后才得知
- 单线程关系 —— 一个联系人离开,你失去了账户
- 通用入门 —— 为$100/mo和$10,000/mo客户相同的流程
- 没有月度价值报告 —— 客户忘记了你的存在
- 反应性QBR —— 只在续订时打电话(太晚了)
- 为了保存而打折 —— 训练客户威胁流失以获得交易
- 忽视非自愿流失 —— 30-40%的流失是你可以预防的支付失败
- 没有重新激活序列 —— 流失的客户永远消失
- 将所有流失视为相同 —— 自愿与非自愿,高价值与低价值需要不同的剧本
- 衡量标志流失而不是收入流失 —— 失去10个小账户与失去1个大客户不同
自然语言命令
| 命令 | 它的作用 |
|---|---|
| “Score [client name]” | 为特定账户计算健康评分 |
| “Onboarding checklist for [client]” | 为客户生成个性化的90天入门计划 |
| “QBR prep for [client]” | 用他们的指标和谈话点构建QBR议程 |
| “Churn risk report” | 按健康层级列出所有账户及建议行动 |
| “Monthly report for [client]” | 使用指标模板生成价值报告 |
| “Save playbook for [client]” | 诊断流失原因,推荐干预措施 |
| “Expansion opportunities” | 列出有升级潜力的健康账户 |
| “Reactivation list” | 显示符合赢回条件的流失账户 |
| “NRR this month” | 计算净收入留存 |
| “Payment failures” | 列出有失败支付的账户及恢复状态 |