首页 > 解决方案 > 为什么推迟开始日期会导致 Google Analytics(分析)报告查询返回 0 个结果?

问题描述

我正在尝试编写一个脚本来计算我公司的客户健康评分。等式的一部分涉及他们在过去 90 天内是否采取了特定行动,我们通过 Google Analytics 事件进行跟踪。

我注意到与 API 返回的结果不一致,导致脚本输出缺少特定用户的记录。作为参考,我们通过自定义维度 4 跟踪哪个用户执行了每个操作。因此,此时我开始使用 Google 提供的查询资源管理器(https://ga-dev-tools.appspot.com/query-explorer/)进行调试,这显示了相同的不一致。

如果我将开始日期推回 75 天之后,查询结果会为某些用户 ID 返回一个空数组......但 75 天或更早,结果包含该用户最多 86 个事件。这些事件不应该包含在 90daysAgo 中吗?

我在查询资源管理器中运行的测试......

第一批结果

当 start-date 设置为 30daysAgo 时返回 28 个事件,当 start-date 设置为 75daysAgo 时返回 86 个事件。

第二批结果

一切都一样,但开始日期现在是 90daysAgo 而不是 75。此查询返回 0 个结果。

第三次测试

使用我的测试帐户,如果我将日期推回 90daysAgo,它会返回与使用 75daysAgo 或 30daysAgo 运行时相同的 6 个事件。

我希望在开始日期设置为 90daysAgo 的情况下运行查询至少应该返回与 75daysAgo 为任何用户 ID 返回的结果相同的结果,但我会为我知道有事件的用户获得一个空数组。我不确定我还能做些什么,但不确定我是否应该将它带到 Google 问题跟踪器,或者我是否忽略了某些东西。

标签: google-analyticsgoogle-analytics-api

解决方案


我有点找到了答案。如果 Google 在他们的文档中更清楚地说明这一点可能会有所帮助,但是在对 Analytics 进行常规查询时,结果可能是“抽样的”,这意味着查询只搜索了完整事件的一部分。

在这种情况下,我的查询正在搜索我们跟踪的约 60% 的事件,而与我的过滤器匹配的事件显然在另外 40% 中。

我正在寻找如何使用 API 来提取非采样数据,但这是对这个问题的简短回答。


推荐阅读