如何进行漏斗分析

跟踪用户如何完成多步流程以及他们在哪里退出。

大多数访问您网站的人从未注册、试用您的产品或完成结账。他们去了哪里?是什么让他们离开?他们到达每个步骤的有多少?

在本指南中,您将学习如何通过漏斗分析找到这些答案,包括您需要哪些数据、如何进行分析以及如何使用示例数据集亲自尝试。

什么是漏斗分析?

漏斗分析显示了用户如何通过一系列步骤进行移动,以及他们在哪里放弃。将其想象成一个实际的漏斗:顶部宽,底部窄。很多人从顶部开始,但完成的人较少。它不仅仅是一个图表,更是一种一步步映射用户旅程的方法。

Funnel illustration

一个简单的例子

假设您想分析您的注册流程。您定义了四个关键步骤

步骤 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

这种事件日志是漏斗分析的支柱。您还可以包含其他字段,如 devicecountrycampaign_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%

这种简单的数学是所有漏斗图的基础,无论您的数据有多复杂。

这些数字在漏斗中看起来是这样的

Funnel Diagram

在 Metabase 中构建漏斗

要在 Metabase 中构建漏斗图,您可以使用查询生成器或 SQL。

首先,确定代表您漏斗中每个步骤的事件,例如 visited_homepagesigned_upstarted_trial

然后

  • 汇总您的事件,计数 user_id
  • 按漏斗步骤分组,例如 event_name,以计算每个阶段的用户数
  • 将其可视化为漏斗图。

有关更高级的设置(例如合并来自不同表中的步骤或使用 SQL),请参阅我们的漏斗图指南。

亲自尝试:示例 CSV

准备将漏斗分析付诸实践了吗?

我们准备了一个示例数据集,您可以下载并在自己的设备上进行探索。

此 CSV 包含用户事件数据,如 user_idevent_nameevent_time,以便您可以使用学到的步骤在 Metabase 中练习构建漏斗。

下载示例漏斗数据集

将 CSV 上传到 Metabase 并构建漏斗图,以查看用户流失情况以及转化率如何变化。

您最终应该会得到一个看起来像这样的漏斗

Sample Funnel Chart

此练习依赖于预定义的示例数据集,但您也可以使用AI 数据生成器生成自己的练习数据。

奖金:常见数据问题(及其解决方法)

以下是通常会出错的地方以及如何解决它们

  • 时间戳丢失:您需要它们来确定步骤顺序。如果丢失,请尝试使用创建日期或根据用户 ID 进行估算。
  • 宽格式:每行一个用户,包含多个列(如 signup_datetrial_datepurchase_date)更难分析。您需要将其重塑成长格式,每行一个事件。
  • 事件位于单独的表中:您的注册数据在一个表中,试用数据在另一个表中,购买在第三个表中。在开始分析之前,请将它们连接成一个单一的事件表。
  • 事件名称不一致:某些事件的名称是 signed_up,其他是 signup_successsignup_donesignup_win。选择一个命名约定并坚持使用。
这有帮助吗?

感谢您的反馈!
订阅新闻通讯
Metabase 的更新和新闻
© . This site is unofficial and not affiliated with Metabase, Inc.