隐式与显式事件跟踪:命中和未命中
已发表: 2022-12-21当我们与人们谈论分析时,通常会出现一个问题:“您对让工程师编写跟踪代码有何看法?” 分解来看,他们想知道的本质上是使用自动跟踪分析工具与让他们的工程师以编程方式添加跟踪代码之间的区别,以及哪个对他们的公司更好。
我们决定在本文中写下我们的想法,以帮助说明隐式事件跟踪与显式事件跟踪的成功与失败。
让我们回到正题,好吗?
定义隐式和显式事件跟踪
在您继续阅读隐式和显式事件跟踪的优缺点之前,让我们退后一步并定义两者。 这将帮助您更好地理解差异,并使您能够做出明智的决定。
什么是隐式事件跟踪?
也称为无代码事件跟踪,这种类型的自动事件收集旨在收集应用程序中的所有用户交互。 换句话说,您不需要事先定义事件来收集数据。
一些工具会自动捕获点击、页面浏览、表单提交等交互,并在您需要时随时准备好。 每当您想分析用户行为时,您都可以使用可视化编辑器追溯创建您关心的事件。
什么是显式事件跟踪?
显式事件跟踪要求您使用基于代码的分析手动定义要跟踪的事件。 显式事件跟踪的整个概念取决于这样一个事实,即您知道需要跟踪哪些事件才能获得所需的分析。
振幅就是这样一个例子。 一旦您确定了目标和指标并创建了跟踪计划,您的开发人员就会在您的代码库中进行所需的分析。
既然我们已经涵盖了定义,那么让我们回顾一下优缺点。
隐式或无代码事件跟踪的命中和未命中
让我们来看看隐式事件跟踪的一些成功和失败,以及它如何帮助您做出正确的选择。
命中:隐式跟踪
1. 非常适合非技术团队
通过隐式或无代码事件跟踪,任何不熟悉代码的人都可以通过点击解决方案分析他们的客户行为。 将代码片段粘贴到您的站点,它就会开始从客户端捕获所有可用的用户交互。 现在,您可以追溯分析 Web 应用程序上的不同事件。
例如,您可以只为一个 id 为newsletter-button的按钮定义一个点击事件,它会追溯地为您提供与所有点击newsletter-button的用户相关的数据。
2. 无需严密计划
隐式跟踪的整个想法是可以访问有关客户交互的所有数据。 这可以节省您在开始时尝试确定要跟踪哪些事件的时间,并且您无需设置跟踪计划即可开始。
3.定义事件很简单
一些工具带有可视化编辑器,可以在几分钟内轻松创建各种类型的事件。 这节省了无数的开发时间,可以将其重定向到解决其他问题。
失误:隐式跟踪
1. 你会处理混乱的数据
在您的应用程序中执行操作可能有多种方式。 想象一下,您是允许客户在线下订单的杂货配送应用程序的产品所有者,并且您想要跟踪这种情况发生的频率。
客户可以点击“结账”按钮,您的无代码分析工具会告诉您该按钮被点击了多少次。 但是,考虑到客户可以通过其他方式下订单,此数据可能不准确。 也许您的应用程序有一个“立即购买”按钮,该按钮还允许客户下订单。 在这种情况下,如果您试图找出下了多少订单,则需要将这些事件组合在一起。
2.存在安全隐患
由于这些工具捕获所有用户交互并将此数据流式传输到他们的服务,因此您客户的 PII(个人身份信息)和/或 PHI(个人健康信息)数据可能存在风险。 当涉及到这些场景时,收集所有数据的想法从根本上是有缺陷的。
3. 您的跟踪很容易中断
无代码跟踪与 Web 的 CSS 选择器和移动设备的 UI 控件相关联。 因此,当开发人员对您的产品进行更改时,您的跟踪可能会中断。 以我们之前的示例为例,如果新开发人员进来并决定将“结帐”按钮上的 CSS ID 从结帐按钮更改为下订单,您的跟踪将会中断,您会想知道为什么。
4. 你会错过有价值的数据
举同样的例子,您可能想知道购买了多少“苹果”。 隐式跟踪无法捕获此数据。 它所做的只是计算“结账”按钮被点击的次数。 要回答这个问题,您需要聘请一名软件工程师来添加代码来为您跟踪此问题。 每个隐式跟踪工具都支持发送显式事件是有原因的; 您不会使用工程时间是一个神话。
5. 你会因为广告拦截器而丢失数据
由于某些工具在客户端捕获数据,因此您很容易受到广告拦截器的影响。 市场上的大多数广告拦截器都会阻止客户端分析,但是,通过基于代码的跟踪,您可以在后端捕获关键业务指标的分析,从而避免此问题。
这几乎是隐式或无代码分析跟踪工具的总结。
显式或基于代码的事件跟踪的命中和未命中
现在您对无代码跟踪工具有了一个不错的想法,让我们看一下显式或基于代码的事件跟踪的一些优缺点。
命中:显式跟踪
1. 跟踪您的需求并添加额外的上下文
通过显式跟踪,您可以跟踪分析所需的数据,并在每次客户交互背后添加额外的上下文。
例如,当有人按下“结帐”按钮时,使用事件属性,除了跟踪“结帐”按钮被按下的次数外,您还可以跟踪商品代码、商品数量、商品价值和查看的产品图片. 这为您提供了了解用户购买行为的更多背景信息。
Amplitude 可以帮助您轻松实现这一目标。
2. 您可以信赖您的数据
通过显式事件跟踪,您可以信任您的数据,因为它已集成到您的软件开发生命周期中并且不会中断。 当您像对待代码一样对待分析并制定数据管理流程时,每个人都会受益。
让我们以您在上一节中看到的相同示例为例。 对于基于代码的事件跟踪,可以一致地检测所有下订单实例,无论是通过“结帐”按钮还是“立即购买”按钮。
3. 管理捕获的内容
当您创建跟踪计划时,您会随时了解发送到您的分析工具的数据。 您知道正在捕获哪些客户的 PII/PHI 数据以及这些数据的去向。 例如,您可能希望将某人的姓名和电子邮件发送到 Intercom 以获得个性化的客户成功。 创建此数据映射有助于确保您遵守 GDPR 和 CCPA。
4. 从多个来源获取数据
通过显式跟踪,您可以一致地从多个源捕获事件,包括不受客户端广告拦截器影响的后端。 根据您的受众,您可能会阻止 10-30% 的事件。 对于任何关键数据,我们建议在后端跟踪您的事件。
遗漏:显式跟踪
1. 你需要开发人员的帮助
顾名思义,基于代码的分析工具需要开发人员花时间来检测事件。 同样,如果以后任何事件发生任何变化,或者您需要添加更多事件,则需要让开发人员参与进来。
2.实施需要更多时间
基于代码的事件跟踪需要更多的时间来实现。 在开发人员编写代码 → 发布代码 → 等待数据 → 运行查询时,你依赖于与开发人员的较长反馈循环。 这是对时间和金钱的投资。
3.你需要先计划
基于代码的事件跟踪的挑战之一是您需要在实施之前计划好一切并准备就绪。 这再次需要时间和精力来计划您在不久或遥远的将来需要的事件。
不仅如此,如果您是产品经理或分析师,您可能需要在采用该解决方案之前获得工程团队的支持。 这都是因为它需要开发时间来检测您的跟踪计划。
那么你应该选择什么?
那么什么时候应该选择使用隐式跟踪还是显式跟踪? 我们在下面创建了一个快速指南来提供帮助,并在每个类别中列出了一些我们最喜欢的分析工具。
最终,使用最适合您的团队的工具,但了解每种方法的优缺点。 许多团队的需求随着他们的成长而变化,并为事件跟踪数据添加额外的用例。
如果您已准备好开始使用显式事件跟踪工具,请立即注册一个免费的 Amplitude 帐户或探索我们的自助服务演示。