Retention management
Skill LuckyOneTwoThree/pm-skill/pm-06-growth/skills/retention-management
当需要降低流失率或提升用户参与度时使用。留存管理一体化Pipeline,先构建流失预警模型识别高风险用户自动化触发干预动作,再基于用户生命周期阶段进行分层生成运营策略和个性化触达内容。关键词:流失预警、流失干预、流失模型、用户挽留、用户分层、分层运营、生命周期运营、个性化触达、参与度提升、用户活跃、流失率高、怎么挽留、怎么区别对待、运营分群。From its SKILL.md
npx -y skills add LuckyOneTwoThree/pm-skill --skill retention-managementAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 6 stars6 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
18.3 KB, ~6.5k tokens by cl100k_base, as published. Nobody here has run it
留存管理一体化
核心原则
- 预防优于挽留:在用户流失信号出现时介入,远比流失后召回成本低、成功率高
- 干预必须匹配风险:高风险用户需要高接触干预,低风险用户过度干预反而推走
- ROI闭环验证:每项干预策略必须追踪防流失ROI,无效策略及时淘汰
- 分层即策略:用户分层的目的是差异化运营,分层标准必须直接关联运营动作
- 健康度是先行指标:用户健康度下降先于行为流失,是最佳干预时机
- 触达频率与价值匹配:高价值内容可以高频触达,低价值内容过度触达等于骚扰
交互模式
🤖→👤 AI建议人类审批
输入
| 输入项 | 类型 | 必填 | 来源 | 说明 |
|---|---|---|---|---|
| 用户行为数据 | JSON | 是 | 数据分析平台 → 活跃日志 | 活跃日志、功能使用、内容互动 |
| 流失历史数据 | JSON | 是 | 数据分析平台 → 流失记录 | 已流失用户行为特征 |
| 用户账户数据 | JSON | 是 | 用户系统 → 账户信息 | 基本信息、付费状态 |
| 用户生命周期阶段 | object | ○ | 用户提供 | 注册时间、关键里程碑 |
流失定义
流失标准
| 用户类型 | 流失定义 |
|---|---|
| 免费用户 | 连续30天无活跃行为 |
| 付费用户 | 连续60天无活跃行为或取消订阅 |
| 企业用户 | 连续90天无活跃或合同到期 |
流失类型
- 主动流失: 用户主动停止使用或取消订阅
- 被动流失: 用户不再活跃但未明确表示离开
- 付费流失: 付费用户降级或取消订阅
用户生命周期分层
分层定义
| 层级 | 时间标准 | 用户行为特征 | 核心需求 |
|---|---|---|---|
| 新用户 | 0-30天 | 探索产品功能 | 快速上手、体验价值 |
| 成长用户 | 30-90天 | 使用频率增加 | 深度使用、建立习惯 |
| 成熟用户 | 90天+ | 稳定使用 | 持续价值、防止沉睡 |
| 沉睡用户 | 连续7-30天无活跃 | 活跃度骤降 | 重新激活、价值唤回 |
| 流失用户 | 连续30天+无活跃 | 无活跃行为 | 定向召回 |
健康度评分
综合评估用户在生命周期中的健康状态:
健康度 = 0.3 × 活跃度 + 0.25 × 功能深度 + 0.25 × 付费意愿 + 0.2 × 社交参与
执行步骤
Step 1: 流失预警(from retention-churn)
构建流失预警模型,识别高风险用户,自动化触发干预动作。
1.1 流失预警模型构建
数据准备
- 标签数据: 历史流失用户标记
- 特征工程: 构建流失预测特征
- 数据划分: 训练集/验证集/测试集
流失信号特征
| 特征类别 | 具体特征 |
|---|---|
| 活跃度特征 | 访问频率、使用时长、功能使用数 |
| 行为特征 | 核心功能使用、关键操作完成度 |
| 参与度特征 | 内容互动、社交行为 |
| 付费特征 | 付费状态、消费金额、付费周期 |
| 反馈特征 | NPS评分、客服接触、支持工单 |
模型训练
支持多种模型类型:
- 逻辑回归(可解释性强)
- XGBoost/LightGBM(精度高)
- 深度学习模型(复杂模式识别)
- 集成模型(稳定可靠)
1.2 高风险用户识别
风险分层
| 风险等级 | 风险评分 | 定义 | 响应策略 |
|---|---|---|---|
| 高风险 | ≥0.7 | 极可能流失 | 即时干预 |
| 中风险 | 0.4-0.7 | 流失可能性较高 | 重点关注 |
| 低风险 | 0.2-0.4 | 有流失倾向 | 预防性干预 |
| 稳定 | <0.2 | 正常用户 | 常规维护 |
流失信号分析
识别导致高风险的关键因素:
- 活跃度下降信号
- 功能使用减少信号
- 负面反馈信号
- 竞品使用信号
1.3 自动化干预触发
干预策略库
| 风险等级 | 干预策略 | 触达渠道 | 响应时间 |
|---|---|---|---|
| 高风险 | 专属客服介入、限时优惠 | 电话+短信+邮件 | 即时 |
| 中风险 | 个性化价值推送、问卷调研 | 邮件+Push | 24小时内 |
| 低风险 | 内容营销、版本更新通知 | Push+站内信 | 48小时内 |
干预内容类型
- 价值唤回: 展示产品新功能和使用场景
- 问题解决: 针对已知问题提供解决方案
- 优惠激励: 提供续费折扣或增值服务
- 人工关怀: 客服主动联系了解需求
- 社交激活: 邀请好友一起使用
干预时机
- 用户行为变化后即时触发
- 预防性干预在风险累积前触发
- 避免在用户忙碌时段触达
1.4 干预效果追踪
核心指标
| 指标 | 说明 | 目标值 |
|---|---|---|
| 干预覆盖率 | 被干预高风险用户比例 | ≥80% |
| 响应率 | 干预后用户有响应的比例 | ≥15% |
| 防流失率 | 干预后未流失用户比例 | ≥10% |
| ROI | 防流失收益/干预成本 | ≥3.0 |
效果分析
- 不同干预策略的效果对比
- 不同用户群体的干预效果差异
- 干预时机对效果的影响
- 干预内容的优化方向
Step 2: 分层运营(from retention-engagement)
基于Step 1输出的流失预警结果,对用户进行生命周期分层,生成运营策略和个性化触达内容。
2.1 用户分层
分层规则引擎
rules:
- segment: "new_user"
condition: "account_age_days <= 30 AND is_activated == true"
- segment: "growing_user"
condition: "account_age_days > 30 AND account_age_days <= 90 AND weekly_active_days >= 3"
- segment: "mature_user"
condition: "account_age_days > 90 AND weekly_active_days >= 2"
- segment: "at_risk"
condition: "consecutive_inactive_days >= 7 AND consecutive_inactive_days < 30"
- segment: "churned"
condition: "consecutive_inactive_days >= 30"
分层优先级
沉睡用户和流失用户的识别优先级高于正常分层,确保及时触发防流失策略。
2.2 各层特征分析
新用户分析
- 激活路径分析
- 早期行为聚类
- 激活障碍识别
成长用户分析
- 功能深度使用分析
- 使用频率趋势
- 价值感知评估
成熟用户分析
- 功能使用稳定性
- 付费转化潜力
- 社交活跃度
沉睡用户分析
- 沉睡前最后行为
- 沉睡触发因素
- 潜在召回价值
流失用户分析
- 流失时间分布
- 流失原因推断
- 召回价值评估
2.3 自动化运营策略生成
分层运营策略
| 用户层级 | 运营目标 | 核心策略 | 关键指标 |
|---|---|---|---|
| 新用户 | 激活+留存 | 引导体验、习惯培养 | D7/D30留存率 |
| 成长用户 | 深度使用 | 功能拓展、价值强化 | 功能使用数、使用时长 |
| 成熟用户 | 持续活跃 | 防止沉睡、增值服务 | 月活跃率、NRR |
| 沉睡用户 | 重新激活 | 价值唤回、问题解决 | 唤醒率、召回ROI |
| 流失用户 | 定向召回 | 优惠激励、情感召回 | 召回率、召回用户LTV |
策略触发规则
trigger_rules:
new_user:
- event: "注册完成"
action: "发送欢迎序列"
- event: "完成激活"
action: "发送进阶引导"
growing_user:
- event: "功能使用达到阈值"
action: "推荐进阶功能"
- event: "使用频率下降"
action: "发送价值提醒"
mature_user:
- event: "连续3天不活跃"
action: "发送更新通知"
- event: "新功能上线"
action: "发送功能推荐"
at_risk:
- event: "进入沉睡"
action: "触发唤回流程"
churned:
- event: "流失30天"
action: "触发召回活动"
2.4 触达内容个性化
内容类型矩阵
| 用户层级 | 推送内容 | 内容风格 | 触达频率 |
|---|---|---|---|
| 新用户 | 使用教程、功能介绍 | 友好引导 | 高 |
| 成长用户 | 进阶技巧、案例分享 | 价值导向 | 中 |
| 成熟用户 | 功能更新、会员权益 | 维护关怀 | 低 |
| 沉睡用户 | 价值唤回、限时优惠 | 激励驱动 | 集中 |
| 流失用户 | 召回活动、专属优惠 | 情感诉求 | 集中 |
个性化内容生成
- 基于用户使用历史推荐相关内容
- 基于用户偏好设置调整内容形式
- 基于用户生命周期阶段调整内容主题
输出
存储路径:output/pm-growth/retention-management/
输出文件:retention-management.json、retention-management.md
输出Schema:
{
"type": "object",
"required": ["churn_prevention", "segments", "strategies"],
"properties": {
"churn_prevention": {"type": "object", "description": "流失预警与干预结果,包含模型、风险用户和干预策略"},
"segments": {"type": "array", "description": "用户分层数据,包含层级名称、人数、特征和健康度"},
"segment_overview": {"type": "object", "description": "各层级概览,包含人数和平均健康度"},
"strategies": {"type": "array", "description": "分层运营策略列表,包含目标、行动和成功指标"},
"personalized_content": {"type": "array", "description": "个性化触达内容列表,包含内容类型、主题和渠道"}
}
}
retention_management
{
"churn_prevention": {
"risk_model": {
"model_type": "XGBoost",
"features": ["使用频率", "功能广度", "付费状态"],
"accuracy": 0.85,
"precision": 0.78,
"recall": 0.72
},
"risk_thresholds": {
"high_risk": 0.7,
"medium_risk": 0.4,
"low_risk": 0.2
},
"high_risk_users": [
{
"user_id": "用户ID",
"risk_score": 0.85,
"risk_level": "high",
"primary_churn_signals": ["信号1", "信号2"],
"recommended_intervention": "干预策略"
}
],
"interventions": [
{
"intervention_id": "INT_001",
"trigger_condition": "风险评分 > 0.7",
"intervention_type": "personalized_outreach",
"channel": "email",
"content_theme": "价值唤回",
"expected_effectiveness": 0.25
}
],
"tracking": {
"total_interventions_sent": 5000,
"response_rate": 0.15,
"churn_prevention_rate": 0.12,
"roi": 3.5
}
},
"segments": [
{
"name": "新用户",
"segment_id": "new_user",
"count": 5000,
"percentage": 0.15,
"characteristics": {
"avg_age_days": 7,
"avg_weekly_active_days": 3.5,
"avg_features_used": 5,
"paying_users_ratio": 0.08
},
"health_score": 0.72
}
],
"segment_overview": {
"new_user": {"count": 5000, "avg_health": 0.72},
"growing_user": {"count": 8000, "avg_health": 0.78},
"mature_user": {"count": 15000, "avg_health": 0.85},
"at_risk": {"count": 3000, "avg_health": 0.35},
"churned": {"count": 2000, "avg_health": 0.1}
},
"strategies": [
{
"segment": "new_user",
"objective": "促进激活和早期留存",
"key_actions": ["引导核心功能使用", "建立使用习惯"],
"success_metrics": ["D30留存率", "激活率"]
}
],
"personalized_content": [
{
"segment": "new_user",
"content_type": "onboarding_guidance",
"theme": "快速体验核心价值",
"channels": ["app_push", "email"],
"frequency": "per_week"
}
]
}
自动化运营日历
每周固定触达:
- 周一:活跃用户周报
- 周三:功能使用提醒(新用户)
- 周五:活跃用户内容推送
事件触发触达:
- 功能更新时:全员通知
- 节日活动时:高价值用户专属
- 用户里程碑:祝贺+激励
输出校验规则
| 字段路径 | 类型 | 必填 | 说明 |
|---|---|---|---|
| churn_prevention | object | 是 | 流失预警与干预结果,须含risk_model/high_risk_users/interventions |
| churn_prevention.risk_model | object | 是 | 预警模型,须含model_type/features/accuracy |
| churn_prevention.risk_model.accuracy | number | 是 | 模型准确率,须>0.75 |
| churn_prevention.risk_thresholds | object | 是 | 风险阈值,须含high_risk/medium_risk/low_risk |
| churn_prevention.high_risk_users | array | 是 | 高风险用户列表,每项须含user_id/risk_score/risk_level |
| churn_prevention.high_risk_users[].risk_level | string | 是 | 风险等级,仅允许high/medium/low/stable |
| churn_prevention.interventions | array | 是 | 干预策略列表,每项须含trigger_condition/intervention_type/channel |
| churn_prevention.tracking | object | 否 | 效果追踪,须含response_rate/churn_prevention_rate/roi |
| segments | array | 是 | 用户分层数据,至少覆盖新/成长/成熟/沉睡/流失5层 |
| segments[].segment_id | string | 是 | 分层标识,仅允许new_user/growing_user/mature_user/at_risk/churned |
| segments[].count | number | 是 | 分层用户数,须≥0 |
| segments[].health_score | number | 是 | 健康度评分,范围0-1 |
| strategies | array | 是 | 运营策略列表,至少5条(每层1条) |
| strategies[].segment | string | 是 | 目标分层 |
| strategies[].success_metrics | array | 是 | 成功指标列表,至少1个 |
| personalized_content | array | 否 | 个性化内容列表 |
决策规则
| 情况 | 处理方式 |
|---|---|
| 风险评分≥0.7(高风险) | 即时干预,专属客服介入 |
| 付费用户出现流失信号 | 优先处理,48小时内响应 |
| 干预响应率<10% | 优化干预内容和渠道 |
| 高价值用户流失预警 | 全渠道触达+人工关怀 |
| 沉睡用户占比>15% | 触发批量唤回策略 |
| 新用户D7留存<25% | 优化Onboarding和激活引导 |
| 成熟用户健康度下降 | 触发防沉睡策略 |
| 运营触达响应率<5% | 优化触达内容和渠道 |
质量检查
- 流失定义区分免费/付费/企业用户
- 预警模型准确率>75%
- 干预策略与风险等级匹配
- 干预效果追踪包含ROI计算
- 用户分层覆盖完整生命周期(新/成长/成熟/沉睡/流失)
- 健康度评分包含活跃度、功能深度、付费意愿、社交参与
- 运营策略与用户层级匹配
- 触达内容经过个性化处理
降级策略
上游文件缺失降级方案
| 缺失的上游输入 | 降级方案 | 输出影响 |
|---|---|---|
| 用户行为数据缺失 | 用户提供用户活跃数据 → 分析流失特征 | 流失归因基于活跃数据推断,行为特征分析受限 |
| 流失历史缺失 | 跳过流失趋势对比,仅基于当前数据分析 | 无法评估流失趋势变化 |
| 用户行为数据 + 流失历史均缺失 | 用户提供用户活跃数据 → 分析流失特征 | 输出基础流失分析,干预策略标注"待验证" |
| 生命周期阶段缺失 | 使用通用生命周期模型(新用户/活跃/沉睡/流失),标注"待确认" | 分层标准基于通用假设 |
| 用户行为数据 + 生命周期阶段均缺失 | 用户描述用户群体 → 生成分层策略 | 输出基于描述的分层策略,标注"待数据验证" |
- 若用户未提供用户账户数据,提示用户提供或跳过该输入相关步骤
数据获取说明
当上游文件缺失时,需用户提供以下信息以支撑降级生成:
- 用户活跃数据:各周期活跃用户数、流失用户数
- 流失定义(可选):产品对流失用户的定义标准
- 高价值用户占比(可选):活跃用户中高价值用户的比例
- 用户群体描述:产品用户的主要类型和特征
- 活跃度分布(可选):高活跃/中活跃/低活跃用户占比
- 运营资源(可选):可用于用户运营的资源和渠道
上游变更响应
上游变更影响表
| 上游来源 | 变更类型 | 影响范围 | 响应动作 |
|---|---|---|---|
| 数据分析平台-活跃日志 | 行为事件定义变更 | 流失信号特征和模型训练 | 更新特征工程,重新训练模型 |
| 数据分析平台-流失记录 | 流失定义变更 | 流失标签和风险阈值 | 按新定义重新标记,调整阈值 |
| 用户系统-账户信息 | 用户属性变更 | 风险分层和干预策略 | 更新用户特征,调整干预匹配 |
| 用户提供-生命周期 | 里程碑定义变更 | 分层标准和策略触发 | 调整分层条件和触发规则 |
下游通知机制表
| 下游消费者 | 通知条件 | 通知方式 | 通知内容 |
|---|---|---|---|
| revenue-upsell | 高价值用户分层变更 | 写入输出文件 | 高价值用户列表和升级信号 |
| retention-orchestrator | 流失预警与分层运营完成 | 输出文件更新 | 留存管理完成状态和关键结论 |
关键成功指标
| 指标 | 定义 | 目标值 |
|---|---|---|
| 各层留存率 | 各层用户在下一周期的留存比例 | 逐层提升 |
| 沉睡唤醒率 | 沉睡用户被唤醒的比例 | ≥15% |
| 用户健康度均值 | 全量用户健康度平均分 | ≥0.7 |
| 运营触达响应率 | 触达消息的打开/点击率 | ≥10% |
注意事项
- 流失预警模型需要定期更新,适应产品变化和用户行为变化
- 避免过度干预打扰用户,降低用户体验
- 高价值用户的干预优先级和投入资源应更高
- 建立干预反馈机制,持续优化干预策略
版本历史
- v3.0: 合并 retention-churn + retention-engagement
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.