mcpField
C
customer-churn-signals

customer-churn-signals

github.com/mbfinotti数据与数据库122.3k 次安装2 天前更新
代码仓库

关于 customer-churn-signals

customer-churn-signals 是面向客户成功与 RevOps 团队的技能,用于识别、验证并排序客户流失前的领先信号。它通过历史流失回测、提前量与覆盖率评估,产出经验证的信号登记表,而非综合健康评分或干预方案。

主要功能

  1. 01访谈收集业务、数据与干预约束
  2. 02定义信号事件、阈值与观察窗口
  3. 03回测历史流失并比较提升率
  4. 04按提前量、覆盖率和投入排序
  5. 05检查流失客户中的信号盲区
  6. 06生成带判定结果的信号登记表

适用场景

  1. 01梳理可能预示账户流失的行为变化
  2. 02验证现有健康指标能否预测流失
  3. 03按团队干预能力筛选可行动信号

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/mbfinotti/revops-skills --skill customer-churn-signals

安装后在 Claude Code 中输入/customer-churn-signals确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

evals/
evals.json
references/
examples.md
ranking-methods.md
signal-taxonomy.md

详细介绍

流失信号

识别、以可操作的方式定义、依据实际观察到的历史流失情况进行验证,并对用户自身账户中流失前出现的信号排序。核心区分是领先指标与滞后指标:

  • 滞后指标(报告已经发生的情况):流失率、流失的 MRR、NPS 下降。
  • 领先指标(在取消前数周出现,留有采取行动的时间):登录次数下降、功能采用范围收窄、关键拥护者不再回应。

每个候选信号都必须通过以下两部分组成的可操作性测试,才值得发布:

  1. 信号触发得足够早,仍有人可以介入。
  2. 确实有人能够对此采取行动。

触发较晚的事件——付款失败、降级请求、采购延迟、续约日期延后——都是确认性警报,它们只会将数周前就已做出的决定正式记录下来。应将其归类为确认性信号,绝不能列为领先指标。

Lincoln Murphy 的成功里程碑框架是贯穿整个练习的重要提醒:使用不等于成功。应追踪客户自身目标的达成进度,因为账户可能直到“意外”流失前都显得十分活跃。

本技能止步于经过验证并按优先级排序的信号清单;将这些信号汇总为综合评分(设置权重、评分等级、红/黄/绿分层),或制定据此采取行动的 CSM 作战手册、挽留方案和续约策略,应使用 mbfinotti/revops-skills@customer-health-score。管道阶段设计、售前线索评分以及销售到 CS 的交接也不在范围内。

访谈

提出任何建议前先提问。每条消息只问一个问题;尽可能提供多选答案;已回答的问题可跳过。

  • 你经营的是 B2B、B2C/消费者订阅,还是两类业务都有?
  • 过去 12–24 个月有多少个流失账户?这决定了哪些排序方法可行:回测和提升分析适用于小样本;WoE/IV 和任何回归分析都需要足够的数据量(见排序参考)。
  • 实际可访问哪些数据源,粒度如何:产品事件流、登录日志、支持工单系统、CRM 活动(会议、邮件)、账单记录、调查评分?数据是每个账户每天都有,还是只有汇总数据?
  • 合同和续约模式如何:月度自助服务、年度合同还是多年合同?典型的续约周期有多长?
  • 有哪些干预能力——谁会跟进被标记的账户,每周能处理多少条标记?没人能采取行动的信号,不值得排序。
  • 是否已有健康度评分?如果有:先用真实流失情况验证其输入信号,还是从头建立清单?
  • 清单必须在什么日期前投入使用?如果期限在下一个续约周期内,所有需要新增埋点的信号,以及所有基于留存曲线以下数据的方法,都应排除。
  • 这是一次性的目标——挽留本季度的续约客户——还是要持续积累、由团队不断重新校准的资产?“持续积累”会让产品遥测数据和功能采用广度在构建顺序中优先;“一次性”则意味着清单仅使用 CRM 数据。
  • 工作量上限是什么:可投入的分析师工时、实际能申请到的工程资源,以及发布后是否有人会重新拟合模型?没有工程资源就排除产品遥测类别;无人重新拟合模型则无论样本量如何,都排除逻辑回归和 Cox 模型。

在提出任何建议前,根据这三类答案重新排列候选项的顺序,并明确说明哪些答案改变了哪些选项的排序——如果用户无法将排序追溯到自身约束,这个排序看起来就会显得武断。

工作流

  1. 进行访谈;在提出信号之前收集所有答案。
  2. 根据 references/signal-taxonomy.md 建立候选清单,按其中规定的效率顺序处理各类别——先看最近登录时间,最后看调查问卷变化;产品遥测排第六,除非产品已经按账户发出事件。删除访谈排除的类别,不要将其留作后续项目。从一开始就将确认性预警标记为此类。
  3. 为每个候选信号编写操作性定义:事件、阈值、观察窗口、比较基线,以及按账户规模和季节性进行的归一化。缺少这五项中任何一项的信号都无法测试;补全定义或删除该候选信号。
  4. 获取已流失账户列表,并重建每个候选信号在流失前 30/60/90 天的状态(企业销售流程可延长至 120–180 天)。如果可以直接查询数据,就计算结果;否则,为用户提供查询语句或电子表格操作步骤,并依据其结果开展工作。
  5. 根据 references/ranking-methods.md 对候选信号进行排名:流失率相对于基准率的提升、中位提前时间和覆盖率,再除以搭建该信号的成本。按该文件规定的顺序运行各方法——先做回测和提升分析——并在清单达标后停止。删除访谈中关于样本量和维护方面的回答所排除的方法,不要将其保留为后续目标。提前时间与强度同为首要排名指标:取消前几天才触发的强信号,不如提前 90 天触发的较弱信号。
  6. 执行存活性检查:对于已流失账户,每个保留的候选信号是否确实在流失前 60–90 天触发?如果大多数已流失账户在流失前该信号仍显示为绿色,那么它就是盲点,而不是预测指标。
  7. 填写清单(格式见下文),依据通过门槛判定每个信号为上线/观察/拒绝,并反复调整定义、阈值和窗口,直至达到清单整体门槛。
  8. 按章节与用户共同验证清单,将获准上线的信号交给 mbfinotti/revops-skills@customer-health-score 进行综合评分,并预约在获得下一季度流失结果后重新进行回测。
  9. 如果你的执行环境具备持久记忆,请记住获批的清单——信号、定义、提升幅度、提前时间、覆盖率、判定结果和重新回测日期——以便后续重新校准时从该清单开始,而无需再次访谈。

信号清单

每次合作都必须交付此产物。示例版本见 references/examples.md。

CHURN SIGNAL REGISTER - <company/book>, <date>, v<n>
Base rate : <B>% of accounts churn per <window>; churned sample = <N> (<period>)
Method    : backtest + lift [+ retention curves | + WoE/IV] - in that order, stopping when
            the register cleared; name any method deleted and why (sample, no refit, deadline)
Rows      : ordered by value per unit of instrumentation effort

signal      : <name>
  category  : usage | adoption | seats | relationship | support | billing | survey | crm | context
  source    : <system category, e.g. product event stream>
  definition: event + threshold + observation window + baseline + normalization
  window    : <observation window>
  baseline  : <what normal is - account's own history and/or segment peers>
  lift      : of accounts showing this, <N>% churned within <window> vs base rate <B>% (<x.x>x)
  lead time : median days between first fire and churn
  coverage  : % of past churned accounts that fired this signal
  effort    : near-zero | an hour | a week | a quarter | a standing job - to instrument and keep alive
  confidence: evidence note - sample size, IV if computed, caveats
  verdict   : ship | watch | reject (confirmatory-flagged where applicable)

Register-level : % of past churns the shipped set would have caught at minimum lead time
Handoff        : shipped signals -> mbfinotti/revops-skills@customer-health-score

通过门槛

信号只有在以下三项全部达标时,才能判定为“上线”。这些数值是本技能的实用底线,并非经研究验证的常量;当用户的数据样本允许时,应依据其数据提高门槛:

  • 提升幅度:在观察窗口内,出现该信号的账户流失率至少为基准率的 2 倍。更小的优势无法经受实际噪声的考验。
  • 提前时间:距流失的中位时间至少 30 天——对于需要为采购周期留出时间的企业销售流程/年度合同流程,至少为 90 天。确认性预警可豁免,但必须带有确认性标记。
  • 覆盖率:至少在 25% 的历史流失账户中触发——无论提升幅度多强,若几乎无法捕捉真实流失案例,该信号都只是无关紧要的数据。

清单整体要求:上线信号合计必须在至少 70% 的历史流失账户中触发,且触发时间不得晚于最低提前时间。反复迭代——调整阈值和窗口、增加类别、细分客群——直到达标;如果清单会漏掉大多数已知流失案例,就不要上线。

B2B 与 B2C

  • 仅适用于 B2B:关键支持者和高管赞助人的离职,以及多利益相关方采购委员会的动态——B2C 中没有内部委员会,因此也不会有成员流失。B2B 合同条款也会减缓并延迟可见的流失事件:年度合同会让不满意的客户继续付费直至到期,因此行为信号会远早于商业信号出现,这正是领先信号在 B2B 中更重要而非不那么重要的原因。
  • 通用且方法相同:B2B 和 B2C 都会追踪使用量/登录次数下降、功能采用广度和支持服务情绪。变化的只有分析单位:B2B 中是客户账户及其委员会,B2C 中是个人订阅者。
  • 仅适用于 B2C:支付失败是占比更大的流失驱动因素;取消订阅只需一个人轻点一下,因此预警时间缩短,干预窗口也随之收窄;此外,“因漠不关心而流失”——忘记取消的低价订阅——在 B2B 中没有对应情况。

常见失误模式

陷阱为什么会造成问题修正方法
将滞后指标当作领先指标上线流失率、流失的 MRR、NPS 下滑反映的是过去按每个信号的测量提前量进行分类;触发警报的指标标记为待确认
有相关性但没有预测能力指标会在流失前变化,却无法预测流失要求进行回测,验证提升效果;通过流失客户访谈进行合理性检查
按比率排名会让遥测信号得不到重视产品使用情况和采用广度的提升效果最高、提前量最长,且采集成本最高;因此,纯粹按效率构建的信号清单会完全依赖 CRM 数据且滞后——这正是生存者偏差会基于 CRM 现有数据产生的信号清单当事件已存在、目标是实现复利增长,或廉价信号清单未达到 70% 的底线时,应优先纳入遥测数据;提取流失前 60-90 天流失客户的信号状态——若当时仍显示为绿色,说明存在盲点
以单一方向解读支持工单数量活跃客户会提交更多工单;不再活跃但保持沉默的客户则不会提交工单将数量与严重程度、处理时长和情绪结合起来;将“激增后沉默”视为独立信号
将 NPS/CSAT 赋予过高的预测权重存在响应偏差——悄然失去活跃度的客户不会填写调查问卷除非用户自己的回测结果另有结论,否则排名应低于产品参与度
供应商外联活动造成的假象CSM 给高风险客户发邮件,会导致“参与度”上升只统计由客户主动发起的活动
以准确率作为验证指标流失客户很少;预测“不会流失”也能取得高分有任何模型后,使用精确率、召回率和 PR-AUC
在少量流失样本上过拟合单次训练/测试集划分会造成误导使用 K 折验证,而非只做一次划分;延长结果观察期
汇总数据掩盖无声流失单个客户缓慢流失,在整体客户报告中难以发现将每个客户的趋势与其自身基线进行比较,而非与汇总数据比较

参考资料

  • 构建候选列表时,请阅读 references/signal-taxonomy.md——其中介绍了按单位埋点工作量所能带来的价值排序的类别、五部分运营模板、预期提前期、框架署名信息,以及确认性触发条件列表。
  • 验证和排序时,请阅读 references/ranking-methods.md——其中介绍了方法顺序、每种方法的作用、样本较少或模型未维护时会排除哪些方法、回测机制、提升度、留存曲线比较、带解读区间的 WoE/IV,以及 PR-AUC。
  • 撰写登记表时,请阅读 references/examples.md——其中包含一份完整的 B2B 登记表、一份精简的 B2C 登记表、提升度和 WoE/IV 的计算示例,以及一个看似合理但实际不佳的信号的拆解示例。
  • 另请参阅 mbfinotti/revops-skills@lead-scoring,了解如何将相同的回测和提升度验证逻辑应用于售前的潜在客户,而非售后的客户账户。

评论

支持 Markdown