如何进行漏斗分析
跟踪个人如何通过多步骤流程,以及他们在哪里退出。
大多数访问您网站的人从未注册、尝试您的产品或完成结账。他们去哪儿了?是什么让他们离开?以及有多少人到达了每个步骤?
在本指南中,您将学习如何使用漏斗分析找到这些答案,以及所需的数据、如何执行分析,以及如何使用示例数据集自行尝试。
什么是漏斗分析?
漏斗分析显示用户如何通过一系列步骤,以及他们在哪里流失。将其视为一个真实的漏斗:顶部宽,底部窄。许多人从顶部开始,但只有少数人从底部完成。它不仅仅是一个图表,而是一种逐步绘制用户旅程的方法。
一个简单的例子
假设您想分析您的注册流程。您定义了四个关键步骤
步骤 1: 访问了主页
步骤 2: 注册
步骤 3: 开始试用
步骤 4: 购买计划
现在想象有 1,000 人访问了您的主页,但只有 50 人购买了计划。您的漏斗可能看起来像这样
步骤 | 用户 | 从上一步的转化率 | 从总数的转化率 |
---|---|---|---|
访问主页 | 1,000 | – | – |
注册 | 600 | 60% | 60% |
开始试用 | 200 | 33% | 20% |
购买计划 | 50 | 25% | 5% |
这种细分突出了用户流失的地方。在这种情况下,注册很强劲,但试用期到付费的转化率却出了问题。
轮到你了: 在转化之前,你的用户经历了哪 3 到 5 个关键步骤?粗略地勾勒出来。这些将成为你的漏斗步骤。
所需数据
上表包含聚合数据。要构建自己的漏斗,您需要具有三个属性的原始数据:谁做了什么,他们做了什么,以及他们何时做了。
这意味着每行通常会包含以下字段:user_id
(谁)、event_name
(做了什么) 和 event_time
(何时)。
以下是清晰数据的样子
user_id | event_name | event_time |
---|---|---|
A | visited_homepage | 2025-07-30 09:00:36 |
A | signed_up | 2025-07-30 09:05:11 |
B | visited_homepage | 2025-07-30 10:02:07 |
B | signed_up | 2025-07-30 10:04:40 |
B | started_trial | 2025-07-30 10:06:03 |
这种事件日志是漏斗分析的支柱。您还可以包含额外的字段,如 device
、country
或 campaign_source
,以按受众细分来划分漏斗。
在许多情况下,您需要先将数据重新塑形或建模为这种格式,然后才能计算漏斗。
如何计算漏斗数据
一旦您的数据干净,漏斗计算就非常简单:计算有多少用户达到每个步骤,然后计算步骤之间的转化率。
我们来看一个例子
user_id | event_name |
---|---|
A | visited_homepage |
A | signed_up |
A | started_trial |
B | visited_homepage |
B | signed_up |
C | visited_homepage |
步骤 1 (访问主页): 3 位用户 — A、B、C
步骤 2 (注册): 2 位用户 — A & B
步骤 3 (开始试用): 1 位用户 — A
现在计算转化率
- 分步转化率
- 主页 → 注册 = 2 ÷ 3 = 66.7%
- 注册 → 试用 = 1 ÷ 2 = 50%
- 从开始的转化率
- 主页 → 试用 = 1 ÷ 3 = 33.3%
这种简单的数学是所有漏斗图的基础,无论您的数据多么复杂。
这些数字在漏斗中的样子
在 Metabase 中构建漏斗
要在 Metabase 中构建漏斗图,您可以使用查询构建器或 SQL。
首先确定代表漏斗中每个步骤的事件,例如 visited_homepage
、signed_up
或 started_trial
。
然后
- 通过计算
user_id
汇总您的事件 - 按漏斗步骤分组, 例如
event_name
以计算每个阶段的用户 - 可视化为漏斗图。
有关更高级的设置(例如组合不同表中的步骤或使用 SQL),请参阅我们的漏斗图指南。
自己尝试:示例 CSV
准备好将漏斗分析付诸实践了吗?
我们准备了一个您可以下载并自行探索的示例数据集。
此 CSV 包含用户事件数据,如 user_id
、event_name
和 event_time
,因此您可以使用您学到的步骤在 Metabase 中练习构建漏斗。
将 CSV 上传到 Metabase 并构建一个漏斗图,以查看用户在哪里流失以及转化率如何变化。
您最终会得到一个大致如下所示的漏斗
此练习依赖于预定义的示例数据集,但您也可以使用AI 数据集生成器生成自己的练习数据。
奖励:常见数据问题(以及如何解决)
以下是通常会出现的问题以及如何修复它们
- 缺少时间戳: 您需要它们来知道步骤顺序。如果缺失,请尝试使用创建日期或根据用户 ID 进行估算。
- 宽格式: 每位用户一行,包含多列(如
signup_date
、trial_date
、purchase_date
)更难分析。您需要将其重塑为长格式,每行一个事件。 - 事件分散在不同的表中: 您的注册数据在一个表中,试用数据在另一个表中,购买数据在第三个表中。在开始分析之前,将它们连接到一个事件表中。
- 事件名称不一致: 有些事件称为
signed_up
,另一些称为signup_success
、signup_done
或signup_win
。选择一个命名约定并坚持使用。