创建或改进分析跟踪时应遵循的最佳实践

已发表: 2022-12-16

编者按:本文最初于 2021 年 1 月 10 日发表在 Iteratively 博客上。


跟踪计划是一个动态文档(或者它可以存在于像 Amplitude 这样的工具中),它通常概述要跟踪的事件和属性、它们的含义以及它们被跟踪的位置。 它有助于为您的分析编纂单一真实来源,并为您的开发人员提供他们在产品代码库中检测分析跟踪(或模式)所需的详细信息。

为什么你需要一个? 好吧,如果没有跟踪计划,就很难知道您在产品中捕获了哪些事件以及它们的含义。 它还有助于确保您捕获的数据在您的来源(想想 iOS、Android、网络、后端)中保持一致,并让数据消费者了解他们能够在 Amplitude 等工具中或直接在您的数据仓库中探索哪些数据进行分析.

除了跟踪计划之外,您还需要一个关于如何定义、检测和验证分析跟踪的流程。 这个过程通常涉及你的产品经理、数据分析师和开发人员。

在这篇文章中,我们将探索一些方法来确保您和您的团队取得成功,并可以从跟踪计划和流程中获益,将您的分析提升到一个新的水平。

从您的目标和指标开始

至关重要的是,您首先要概述您的指标,然后逐步了解您需要哪些事件来正确报告该指标。 如果您的目标、指标和事件之间没有联系,您很可能会得到一个庞大的跟踪计划和您实际上并不需要的数据,同时错过对您的业务至关重要的事件。

目标第一季度收购增加 15%
公制转化率 = 注册用户/独立访客
事件用户注册
特性user_id、campaign、experiment、referrer 等。

它还可以帮助您确定仪器事件的优先级,并希望迫使产品经理和数据分析师不仅考虑新功能的目标或成功指标,而且考虑如何将其转化为产品中衡量该目标所需的实际跟踪。

不要忘记事件和用户属性

属性是您可以捕获与事件或用户关联的所有详细信息的地方。 它们描述了事件或用户的上下文,并允许您的分析师进行分组、筛选和分组。

有两种属性:事件特定(例如与购买事件相关的收入金额)和用户特定(例如关于用户的人口统计信息)。 大多数事件和用户都有多个与其相关联的属性,对于您的事件,我们建议您只捕获您需要的内容并从小处着手。

建立一致性并保持简单

数据质量问题的罪魁祸首是不一致的命名约定。 您可能让一个团队将事件捕获为“Song Played”,而另一个团队将同一事件捕获为“Song_Played”。 这给分析师留下了大量数据修改或更糟糕的是,报告不完整。

就您的事件和属性的命名约定达成一致,并确保参与定义和检测分析跟踪的每个人都清楚(或使用 Amplitude 等工具轻松实施)。

命名约定分类例子
事件命名约定标题大小写例如播放的歌曲
属性命名约定蛇箱例如歌名

连同您的命名约定,为您的事件确定一个框架,例如“Object-Action”。 首先选择您的对象(例如“歌曲”),然后定义用户对该对象执行的操作(例如“播放”、“暂停”)以构建“歌曲播放”或“歌曲暂停”等事件。 最后,就时态达成一致(例如“歌曲播放”或“歌曲播放”)。

确定捕获事件的位置

在分析跟踪方面,您有多种选择,了解利弊以确定适合您的业务和分析需求的最佳组合非常重要。 许多公司通过仅捕获客户端事件而不利用服务器端事件捕获来限制自己。

在服务器上收集事件更可靠,我们建议您始终在服务器上捕获关键任务事件。 虽然服务器端跟踪在某种程度上受到限制,对用户信息(例如 IP 地址、用户代理、引荐来源网址和 UTM 参数)的访问较少,但它更加可靠和有弹性。

客户端跟踪允许提供更丰富的信息,您应该在需要事件发生上下文的地方捕获事件(例如,对于第一个页面视图,您希望捕获 UTM 参数和引荐来源网址以了解访问来自何处) . 但请记住,广告拦截器和浏览器限制(例如 ITP 和 ETP)会限制您的客户端跟踪,因此您希望找到丰富性和可靠性的最佳组合。

保持独立的开发和生产环境

这个很简单,但我们仍然看到公司将数据从他们的开发环境发送到他们的分析目的地。 不要弄脏您的生产数据,并确保您的环境保持独立。

执行您的跟踪计划

许多团队将分析跟踪视为事后的想法,并且不会像在其他代码中那样应用相同的做法。 这自然会导致您必须在下游修复分析错误,或者更糟的是,您根本不会发现这些错误。 我们看到许多团队以这种方式失去了对数据的信任,一旦失去信任就很难重建!

为了缓解这种情况,验证和执行分析跟踪至关重要。 我们编写了一份综合指南,概述了根据数据规范验证数据的各种方法。

总而言之,有几种方法可以强制执行跟踪,它们通常属于以下两类之一:被动或主动方法,您可以在客户端、管道和目的地执行跟踪计划或分析模式(通常是数据仓库或分析目标)。 我们始终建议从源头上处理质量问题,即首先确保您的仪器符合规范,然后通过单元测试并作为 CI/CD 的一部分进行验证。

分配所有者

明确跟踪计划的负责人至关重要。 需要问责制以确保您的跟踪计划保持最新。 在另一篇博文中,我们深入探讨了谁可能是所有者,以及如何围绕分析跟踪构建流程。

外卖? 我们相信产品团队最适合成为您的跟踪计划的负责人,我们建议制定一个清晰的分析跟踪流程,确保每个新产品发布都会进行事件跟踪。 这意味着为您的事件跟踪定义一个清晰的流程,并通过为他们提供正确的工具和培训来委托产品团队承担责任。

记录一切

我们不能强调最新文档的重要性。 没有它,分析跟踪很容易变得混乱,团队将开始忘记将跟踪作为发布过程的一部分,并且您开始不信任数据的恶性循环。

手动记录可能很乏味且容易忘记,但我们强烈建议至少记录以下内容:

  • 分析跟踪指南:完整流程的概述,包括您的事件分类和框架、如何定义新事件、谁负责什么以及相关资源的链接。
  • 跟踪计划:事件和属性的实际列表,包括描述、跟踪位置、时间和所有者。
  • 检测流程:包括一份关于如何确保新事件得到实施的流程文档,细化到 Jira 票证级别,围绕检测、测试、验证等的要求。

许多公司使用 Google Sheets、Notion 或 Confluence 页面来管理这些文档。 借助 Amplitude 的数据治理功能,这一切都会自动为您完成,确保整个公司围绕分析保持同步。

使用 Amplitude 获得最佳实践

Amplitude 可帮助数据团队、产品经理和工程师定义、检测、验证和协作分析跟踪。 我们主动解决因事件命名不一致和跟踪缺失而引起的数据质量问题,并提供用于管理跟踪演变的工作流程。

我们通过授权团队在第一时间获得正确的分析跟踪,确保团队获得随时可用的高质量数据。 如果您有兴趣为您的公司试用 Amplitude,请立即创建一个帐户或与我们的团队一起预订演示以了解更多信息。

开始使用产品分析