为啥推迟开始日期会导致 Google Analytics(分析)报告查询返回 0 结果?

Posted

技术标签:

【中文标题】为啥推迟开始日期会导致 Google Analytics(分析)报告查询返回 0 结果?【英文标题】:Why might pushing the start-date back cause a Google Analytics report query to return 0 results?为什么推迟开始日期会导致 Google Analytics(分析)报告查询返回 0 结果? 【发布时间】:2019-06-10 15:13:49 【问题描述】:

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

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

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

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

第一批结果

开始日期:30daysAgo(最多 75daysAgo) 结束日期:昨天 指标:ga:totalEvents 维度:ga:dimension4,ga:date 过滤器:ga:eventAction=@Download;ga:dimension4==1564

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

第二批结果

开始日期:90 天前 结束日期:昨天 指标:ga:totalEvents 维度:ga:dimension4,ga:date 过滤器:ga:eventAction=@Download;ga:dimension4==1564

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

第三次测试

开始日期:90 天前 结束日期:昨天 指标:ga:totalEvents 维度:ga:dimension4,ga:date 过滤器:ga:eventAction=@Download;ga:dimension4==311651

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

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

【问题讨论】:

【参考方案1】:

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

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

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

【讨论】:

这正是我要说的。您应该将文档整合到您的答案中:support.google.com/analytics/answer/2637192?hl=en&utm_id=ad 还只是为了澄清您的措辞:具有抽样限制的是 IRREGULAR 查询、自定义报告或具有自定义细分或维度的普通报告。

以上是关于为啥推迟开始日期会导致 Google Analytics(分析)报告查询返回 0 结果?的主要内容,如果未能解决你的问题,请参考以下文章

为啥 URL http://a/%%30%30 会导致 Google Chrome 崩溃?

在类定义中使用内置数组,但大小推迟到派生类会导致隐藏吗?

为啥 CURRENT_DATE() 会导致查询不被缓存?

为啥以这种方式更改此格式化函数会导致 Knockout 绑定开始工作?

为啥使用 Activity 上下文会导致 Context 内存泄漏

为啥 Google BigQuery 在使用视图时没有正确使用分区日期