编程进阶网 编程进阶网
首页
  • 计算机原理
  • 操作系统
  • 网络协议
  • 数据库原理
  • 面向对象
  • 设计原则
  • 设计模式
  • 系统架构
  • 性能优化
  • 编程原理
  • 方案设计
  • 稳定可靠
  • 工程运维
  • 基础认知
  • 线性结构
  • 树与哈希
  • 工业级实现
  • 算法思想
  • 实战与综合
  • 算法题考核
  • C语言入门
  • C综合案例
  • C专栏博客
  • C标准集库
  • C++入门教程
  • C++综合案例
  • C++专栏博客
  • C++开发技巧
  • Java入门教程
  • Java综合案例
  • Java专栏博客
  • Go入门教程
  • Go综合案例
  • Go专栏博客
  • Go开发技巧
  • JavaScript入门
  • JavaScript高级
  • Android库解读
  • Android专栏
  • Android智能硬件
  • iOS ObjC入门
  • iOS Swift入门
  • iOS入门精通
  • Web之Html手册
  • Web之TypeScript
  • Web之Vue高级进阶
  • Linux之QML入门
  • Linux之QT核心库
  • Linux实践开发
  • Python教程
  • Shell&Bash教程
  • 工具脚本
  • 自动化脚本
  • 质量保障
  • 产品思考
  • 软实力
  • 开发流程
  • Git应用
  • 技术模版
  • 技术规范
  • Markdown
  • Mermaid
  • 开源协议
  • JSON工具
  • 文本工具
  • 图片处理
  • 文档转化
  • 代码压缩
  • 关于我
  • 自我精进
  • 职场管理
  • 职场面试
  • 心情杂货
  • 友情链接

杨充

专注编程 · 终身学习者
首页
  • 计算机原理
  • 操作系统
  • 网络协议
  • 数据库原理
  • 面向对象
  • 设计原则
  • 设计模式
  • 系统架构
  • 性能优化
  • 编程原理
  • 方案设计
  • 稳定可靠
  • 工程运维
  • 基础认知
  • 线性结构
  • 树与哈希
  • 工业级实现
  • 算法思想
  • 实战与综合
  • 算法题考核
  • C语言入门
  • C综合案例
  • C专栏博客
  • C标准集库
  • C++入门教程
  • C++综合案例
  • C++专栏博客
  • C++开发技巧
  • Java入门教程
  • Java综合案例
  • Java专栏博客
  • Go入门教程
  • Go综合案例
  • Go专栏博客
  • Go开发技巧
  • JavaScript入门
  • JavaScript高级
  • Android库解读
  • Android专栏
  • Android智能硬件
  • iOS ObjC入门
  • iOS Swift入门
  • iOS入门精通
  • Web之Html手册
  • Web之TypeScript
  • Web之Vue高级进阶
  • Linux之QML入门
  • Linux之QT核心库
  • Linux实践开发
  • Python教程
  • Shell&Bash教程
  • 工具脚本
  • 自动化脚本
  • 质量保障
  • 产品思考
  • 软实力
  • 开发流程
  • Git应用
  • 技术模版
  • 技术规范
  • Markdown
  • Mermaid
  • 开源协议
  • JSON工具
  • 文本工具
  • 图片处理
  • 文档转化
  • 代码压缩
  • 关于我
  • 自我精进
  • 职场管理
  • 职场面试
  • 心情杂货
  • 友情链接
  • README
  • 质量保障

  • 产品思考

    • README
    • 产品思维入门指南
    • 用户需求分析方法
    • 功能优先级排序法
    • 最小可行产品设计
    • 产品数据指标设计
      • 一、为什么工程师也需要看指标
      • 二、AARRR 海盗模型:用户生命周期的五个阶段
        • 2.1 Acquisition(获客)——用户从哪来
        • 2.2 Activation(激活)——用户有没有"啊哈"一下
        • 2.3 Retention(留存)——用户会回来吗
        • 2.4 Revenue(变现)——商业模式跑通了吗
        • 2.5 Referral(推荐)——用户会帮你拉人吗
      • 三、北极星指标:全公司唯一的方向
        • 3.1 什么是北极星指标
        • 3.2 工程师怎么用北极星指标
        • 3.3 警惕"北极星指标通货膨胀"
      • 四、留存与转化:两个最重要的中间指标
        • 4.1 留存分析——为什么用户不回来了
        • 4.2 漏斗分析——用户卡在哪一步了
        • 4.3 同期群(Cohort)分析——从"某一天"看趋势
      • 五、工程师动手:选指标 + 埋点
        • 5.1 从功能倒推指标——一个简单模板
        • 5.2 埋点设计——三个原则
        • 5.3 工程师的指标看板——最少只要 5 个数字
      • 六、综合案例:从指标异常到技术修复
        • Step 1:确认数据不是假的
        • Step 2:拆维度找线索
        • Step 3:查技术指标
        • Step 4:修复 + 验证
      • 七、小结
    • 竞品分析方法实践
  • 软实力

  • 开发流程

  • Git应用

  • 技术模版

  • 技术规范

  • markdown

  • mermaid

  • license

  • 博客部署

  • 技术招聘

  • 测试经验

  • 技术
  • 产品思考
杨充
2020-05-11
目录

产品数据指标设计

# 产品数据指标设计

AARRR模型、北极星指标、留存与转化——没有指标就是盲飞

# 一、为什么工程师也需要看指标

大多数工程师对产品指标的态度:

"指标是产品经理的事。我代码写好了,功能上线了,我的工作就结束了。"
1

但事实是——如果你不看指标,你对产品的所有判断都来自"我觉得"。而"我觉得"在以下场景中是最不靠谱的:

  • "我觉得这个功能很多人需要" → 上线后 12 个人用过,其中 3 个是 QA
  • "我觉得搜索已经够快了" → P99 延迟 4.2 秒,但你没查过 Nginx 日志
  • "我觉得这次重构很有价值" → 重构后用户体验指标没任何变化

指标不是产品经理的专利——它是你把技术决策翻译成商业价值的唯一语言。

工程师看指标 vs 产品经理看指标:

产品经理:日活涨了还是跌了?转化率多少?
工程师:  日活涨了——但我得知道是不是因为接口变快了?
         转化率跌了——是不是因为我上次改了缓存策略导致商品信息延迟展示?
1
2
3
4
5

工程师的独特价值:你能把指标波动追溯到技术层面。产品经理说"留存跌了",你能查——是哪个接口的响应时间变长了?是哪个版本的发布导致的?是 Android 跌了还是 iOS 跌了?


# 二、AARRR 海盗模型:用户生命周期的五个阶段

AARRR 是 Dave McClure 提出的框架,把用户从"陌生人"到"传播者"的旅程拆成五步。每一步对应一类核心指标:

Acquisition     Activation      Retention       Revenue         Referral
  获客            激活            留存            变现            推荐
   ↓               ↓               ↓               ↓               ↓
用户怎么来的    第一次体验到    用户会回来吗    用户付钱了吗    用户会推荐吗
              "啊哈时刻"吗
1
2
3
4
5

# 2.1 Acquisition(获客)——用户从哪来

核心指标:

指标 计算公式 说明
CAC(获客成本) 总营销费用 ÷ 新增用户数 花多少钱拉一个新用户
渠道来源占比 某渠道新增 ÷ 总新增 自然流量 vs 付费流量 vs 推荐
点击到注册转化率 注册数 ÷ 落地页点击量 落地页到注册漏斗有没有漏

工程师可以看什么:

- UTM 参数有没有正确传递?落地页加载时间多少?
- 注册接口有没有因为验证码服务超时导致流失?(服务端日志里能看到)
- 不同渠道来的用户,首次加载时间差多少?(移动端 3G vs WiFi)
1
2
3

# 2.2 Activation(激活)——用户有没有"啊哈"一下

激活不是"注册了"——是用户第一次体会到产品的核心价值。

❌ 错误激活定义:"用户注册并登录了。"
✅ 正确激活定义:
  - 知乎:用户关注了 5 个话题并读了 3 篇文章
  - 抖音:用户刷了 10 条视频并给其中 1 条点了赞
  - 电商:用户完成了第一次搜索并点进商品详情
  - 网盘:用户上传了第一个文件
1
2
3
4
5
6

定义激活事件的规则:它必须是用户从你的产品中获得核心价值的最小行为单元。少了这一步,用户不知道你是干嘛的——他走了就不会再回来。

工程师视角的激活分析:

- 注册到激活的转化率——中间哪一步流失最高?
  → 看每个步骤的事件埋点:注册 → 填写资料 → 关注话题 → 浏览内容
  → 如果"填写资料"这一步流失 40%——能不能先跳过,让用户先进来看?
- 激活耗时多久?
  → 如果用户从注册到第一次搜索平均要 3 分钟——你要么引导不够,要么性能太慢用户跑了
1
2
3
4
5

# 2.3 Retention(留存)——用户会回来吗

留存是 AARRR 中最被低估的指标——也是最重要的。获取一个新用户的成本是留住一个老用户的 5-25 倍。

核心指标:

指标 含义 健康基准(C 端)
次日留存 注册第二天还回来的比例 > 40%
7 日留存 注册后第 7 天还在用的比例 > 20%
30 日留存 注册后第 30 天还在用的比例 > 10%

工程师最该关注的留存信号:

- 崩溃率与留存的关系:崩溃率 > 1% 时,次日留存断崖式下跌
- 加载时间与留存的关系:首屏加载每慢 1 秒,7 日留存下降约 2-3%
- 为什么某些用户来了就走?→ 拉他们的 session 日志,看最后一屏停留的页面——是不是白屏了?
1
2
3

# 2.4 Revenue(变现)——商业模式跑通了吗

不同产品类型的收入指标:

产品类型 核心指标 公式
电商 GMV / 客单价 / 复购率 销售额 ÷ 订单数
SaaS MRR / ARPU / LTV 月经常性收入
广告 eCPM / 填充率 千次展示收入
内购/订阅 付费率 / ARPPU 付费用户数 ÷ 总用户

工程师与收入指标的关系:

- 支付成功率:支付接口成功率 < 98%?每一单失败都等于到手的钱丢了。
- 价格展示延迟:用户看到的商品价格和结算价格不一致 → 用户觉得被欺骗,不会付款。
- LTV(用户生命周期价值)> 3 × CAC 才健康。如果你的 LTV 不健康——性能好也没用,产品会死。
1
2
3

# 2.5 Referral(推荐)——用户会帮你拉人吗

指标 含义
K因子 一个用户平均带来几个新用户。K > 1 = 病毒增长
NPS(净推荐值) 问用户"你愿意推荐给朋友吗?" 0-10 分,9-10 分减去 0-6 分的比例

工程师可以优化的推荐链路:

- 分享出去的落地页加载速度——如果加载超过 3 秒,被邀请者大概率关掉
- 邀请码的生成和校验——邀请码过期了提示不友好?被邀请者直接放弃
- 推荐奖励到账延迟——推荐者看不到即时反馈,下次不推荐了
1
2
3

# 三、北极星指标:全公司唯一的方向

# 3.1 什么是北极星指标

AARRR 有五类指标,但任何一个团队不能同时优化五个方向。北极星指标(North Star Metric)是全公司共同瞄准的唯一定向指标。

常见产品的北极星指标:

Airbnb   → 预订过夜数
Spotify  → 月活跃听歌时长
Slack    → 日活跃用户发送的消息数
微信     → 日活跃用户消息发送量
知乎     → 日活跃用户阅读/创作的问题数
1
2
3
4
5
6
7

北极星指标的特征:

  1. 反映用户获得的核心价值(不是收入——收入是结果,不是价值)
  2. 全公司能用同一个指标对齐(运营、产品、研发看同一个数)
  3. 能拆解到具体团队("这个数涨了/跌了,是哪个环节导致的?")

# 3.2 工程师怎么用北极星指标

你的团队可能没有正式的北极星指标——但你可以自己找到技术团队的"输入指标":

北极星指标(全公司)      输入指标(技术团队能直接影响的)
      ↓                           ↓
日活跃预订过夜数     ←     搜索加载时间、支付成功率、
                            App 启动速度、推送到达率
1
2
3
4

你不需要为全公司的北极星负责,但你需要知道:你做的每一个技术决策,是在提升哪一个输入指标?

例:
"把图片 CDN 切换到全球加速节点" 
→ 提升了什么? → 商品详情页加载速度
→ 影响的输入指标 → 详情页到下单的转化率
→ 最终影响的北极星 → 预订过夜数
1
2
3
4
5

如果你说不清一个技术优化的这条链路——你可能在做没有产品价值的技术优化。

# 3.3 警惕"北极星指标通货膨胀"

❌ 有三个北极星:
"我们要提升日活,也要提升收入,还要提升 NPS。"
→ 等于没有北极星——三个指标冲突时你优化哪个?

✅ 只有一个北极星:
"日活跃预订过夜数"(收入、NPS 都是辅助监控指标,不是主方向)
1
2
3
4
5
6

# 四、留存与转化:两个最重要的中间指标

# 4.1 留存分析——为什么用户不回来了

留存不是看一个数字,是看不同用户群的留存差异:

不要看:"整体 7 日留存 15%"
要看:
  - 完成激活的用户 7 日留存 35%  vs  没完成激活的 3%
  - Android 7 日留存 18%  vs  iOS 24%(是不是 Android 崩溃率高?)
  - 搜索过的用户 7 日留存 28%  vs  没搜索过的 8%
1
2
3
4
5

工程师的留存排查清单:

□ 最近一次发版后留存有没有波动?→ 对比版本号的留存曲线
□ 某些机型的留存特别低?→ 可能是兼容性问题
□ 新用户的前 3 个 session 中有没有白屏/报错?→ 查前端异常上报
□ 首屏加载时间 > 3 秒的用户留存是否显著低于 < 1 秒的?
1
2
3
4

# 4.2 漏斗分析——用户卡在哪一步了

转化漏斗是产品中最直接的诊断工具:

电商下单漏斗:

打开 App            100%   ████████████████████  10000 人
  ↓
浏览商品             70%   ██████████████        7000 人  (丢了 3000 人)
  ↓
点击"加入购物车"      30%   ██████                3000 人  (丢了 4000 人←问题最大!)
  ↓
进入购物车            25%   █████                 2500 人  (丢了 500 人)
  ↓
点击结算              18%   ████                  1800 人  (丢了 700 人)
  ↓
完成支付              12%   ███                   1200 人  (丢了 600 人)
1
2
3
4
5
6
7
8
9
10
11
12
13

一眼看出——最大的流失在"浏览商品 → 加入购物车"。这时候工程师可以做的事情:

- 是不是商品详情页加载太慢?→ 查这个页面的 P50/P99 加载时间
- 是不是"加入购物车"按钮点击成功率低?→ 是不是按钮被其他元素遮挡了?
- 是不是商品图片没加载出来?→ 查 CDN 回源率
- 是不是某些 SKU 的页面有 JS 报错?→ 按 URL 维度查前端异常
1
2
3
4

原则:先查技术原因,排除了再归因到产品设计。 因为技术问题你能直接修,产品问题需要设计方案——前者更快。

# 4.3 同期群(Cohort)分析——从"某一天"看趋势

同期群分析是把用户按某个时间段分组,看每组用户的指标随时间的变化:

同期群留存表(每周注册用户,后续每周的留存率):

注册周    | W0  | W1  | W2  | W3  | W4
1月第一周  | 100%| 45% | 30% | 22% | 18%
1月第二周  | 100%| 42% | 28% | 20% | 16%
2月第一周  | 100%| 55% | 40% | 32% | 28%  ← 突然变好了!
2月第二周  | 100%| 52% | 38% | 30% | 25%
1
2
3
4
5
6
7

2 月第一周注册的用户留存显著变好——往回查:1 月底做了什么?

  • 发了新版,首屏加载从 2.8s 降到 1.1s?→ 技术优化的业绩,数据证明了
  • 还是改版了新用户引导流程?→ 产品的业绩

同期群分析的价值:它让你把"整体指标"和"具体动作"联系起来。没有同期群,你永远不知道指标的涨跌是哪一次改动造成的。


# 五、工程师动手:选指标 + 埋点

# 5.1 从功能倒推指标——一个简单模板

每次开发一个新功能,这个模板帮你定义该看什么数据:

功能名称:____________________
上线日期:____________________

1. 核心假设:上线这个功能,预期会发生什么?
   例:商品详情页增加"相似推荐",预期用户平均浏览商品数从 3.2 → 5.0

2. 成功指标(必须埋的点):
   ① 功能曝光量         → 多少用户看到了推荐模块
   ② 功能点击率         → 看到的人中有多少点了推荐
   ③ 功能贡献的下单转化  → 通过推荐进入商品并下单的订单数
   ④ 人均浏览商品数      → 核心假设的验证指标

3. 健康指标(顺便监控):
   □ 推荐模块加载时间 < 500ms
   □ 推荐接口成功率 > 99.5%
   □ 推荐结果为空的比例 < 5%

4. 实验计划(如果有 A/B):
   □ 对照组:看不到推荐的用户
   □ 实验组:看到推荐的用户
   □ 跑多久:至少 1 周
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

# 5.2 埋点设计——三个原则

原则 1:只埋"能做出决策"的点

❌ 什么都埋:"用户滑动列表的速度、停留时间、手指按压压力……"
→ 数据团队骂你,存储成本暴涨,但 90% 的数据永远不会有人看。

✅ 只埋需要做决策的点:曝光、点击、转化
→ 每个埋点对应一个问题——"如果这个数据高了/低了,我会做什么?"
1
2
3
4
5

原则 2:埋点事件名要能"望文生义"

❌  event_name: "btn_click_1"
   一年后你完全不知道 btn_click_1 是什么按钮。

✅  event_name: "product_detail_add_to_cart_click"
   看名字就知道:商品详情页 → 加入购物车按钮 → 点击事件。
1
2
3
4
5

命名规范:[页面]_[模块]_[元素]_[动作]

原则 3:参数携带上下文

❌ 只上报事件名,没有附带信息。
   { event: "search_submit" }
   → 搜了什么?搜出结果了吗?不知道。

✅ 带上关键上下文:
   {
     event: "search_submit",
     keyword: "蓝牙耳机",
     result_count: 42,
     search_time_ms: 380,
     source: "home_search_bar"
   }
   → 能分析出:什么关键词搜得多、搜不到结果的词有哪些、搜索耗时分布
1
2
3
4
5
6
7
8
9
10
11
12
13

# 5.3 工程师的指标看板——最少只要 5 个数字

不需要大屏数据看板。你每天/每周看一眼这 5 个数就够了:

1. 核心转化率       → 用户有没有走完主流程?(本周 vs 上周)
2. 接口 P99 延迟    → 有没有突然变慢的接口?
3. 关键错误率       → 支付/登录/核心接口的 4xx/5xx 比例
4. 版本崩溃率       → 最新版本有没有崩溃率异常?
5. 新功能使用率     → 最近上线的功能有人用吗?

哪里异常点哪里——再下钻到具体的问题。
1
2
3
4
5
6
7

# 六、综合案例:从指标异常到技术修复

场景:运营反馈"这个月的下单转化率从 15% 掉到 11% 了"。

# Step 1:确认数据不是假的

□ 埋点有没有改过?→ 如果埋点逻辑变了,数据掉是因为统计口径变了,不是产品真的掉了
□ 有没有新版上线?→ 如果转化率在新版上线当天开始掉的——锁定版本
1
2

# Step 2:拆维度找线索

整体转化率:15% → 11%

按渠道拆:
  自然流量:14% → 10%   ← 也掉了
  付费流量:16% → 14%   ← 轻微掉

按设备拆:
  iOS:    16% → 15%   ← 基本没变
  Android:14% → 8%    ← 这里出问题了!

按版本拆:
  v2.3.0: 14% → 8%    ← 锁定!
  v2.2.9: 15% → 14%   ← 正常
1
2
3
4
5
6
7
8
9
10
11
12
13

定位:Android v2.3.0 上线后转化率从 14% 掉到 8%。

# Step 3:查技术指标

□ v2.3.0 的 Android 崩溃率:正常
□ 支付接口成功率:正常
□ 商品详情页加载时间:v2.2.9 平均 1.2s → v2.3.0 平均 3.8s ← 问题!
1
2
3

进一步查:v2.3.0 把图片库从 Glide 换成了 Coil,但配置不当——Android 低端机上图片加载超时导致详情页白屏 3-4 秒。

# Step 4:修复 + 验证

修复:修正 Coil 缓存配置 + 图片预加载
上线后:商品详情加载时间回到 1.3s,转化率回升到 14.5%
1
2

这件事的完整链路:

运营发现指标异常 → 拆维度锁定问题 → 技术排查找到根因 → 修复 → 指标回升
                   (工程师主导)       (工程师主导)
1
2

没有技术维度拆解,运营只能说"转化率跌了"——但永远不知道是为什么。


# 七、小结

产品数据指标不是让你成为数据分析师——是让你的技术工作有方向、有反馈、有说服力。

技术决策                           数据反馈
  ↓                                  ↓
架构优化、重构、性能调优     →     北极星指标有没有涨?
新功能开发                  →     功能使用率、转化率有没有变化?
bug 修复                    →     错误率、崩溃率有没有下降?
1
2
3
4
5

核心框架回顾:

框架 解决什么问题 怎么用
AARRR 用户生命周期每个阶段看什么 每个功能上线前,明确它影响哪一个 R
北极星指标 全团队统一方向 你做的每个技术优化,能对应到哪个输入指标
漏斗分析 用户卡在哪一步 转化率掉了一定先看漏斗——锁定流失最大的步骤
同期群分析 改动的效果随时间怎么变化 发版/上线新功能后,按周看同期群的指标变化

三条行动建议:

  1. 每个功能上线前写 3 行——核心假设、成功指标、健康指标。不需要文档系统,写在你自己的任务描述里
  2. 每天看 5 个数——核心转化率、P99 延迟、关键错误率、崩溃率、新功能使用率。花 2 分钟
  3. 指标掉了先拆维度——按设备、按版本、按渠道、按时间段——80% 的异常靠拆维度就能定位
#数据指标
上次更新: 2026/06/15, 14:13:42
最小可行产品设计
竞品分析方法实践

← 最小可行产品设计 竞品分析方法实践→

最近更新
01
信号崩溃快速排查
06-15
02
CoreDump破案
06-15
03
perf火焰图实战
06-15
更多文章>
Theme by Vdoing | Copyright © 2019-2026 杨充 | MIT License | 桂ICP备2024034950号 | 桂公网安备45142202000030
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式