无法匹配 GA 高级细分和 BigQuery 结果

Posted

技术标签:

【中文标题】无法匹配 GA 高级细分和 BigQuery 结果【英文标题】:Can't match GA advanced segment and BigQuery results 【发布时间】:2018-11-15 14:14:42 【问题描述】:

我正在使用一个简单的 GA 高级细分:

它在 GA 界面中返回一天 10,440 个会话。

当我尝试使用标准 SQL 在 BigQuery 中执行类似操作时,我得到了不同的结果:

SELECT fullVisitorId, visitStartTime
FROM `project.id.ga_sessions_20181001`
where EXISTS(
  SELECT 1 FROM UNNEST(hits) h 
  WHERE h.type  = 'PAGE'
  AND REGEXP_CONTAINS(page.pagePath, r'/signup/.*'));

这将返回同一天的 10,137 个会话。还有这个:

SELECT fullVisitorId, visitStartTime
FROM `project.id.ga_sessions_20181001`
where EXISTS(
  SELECT 1 FROM UNNEST(hits) h 
  WHERE AND REGEXP_CONTAINS(page.pagePath, r'/signup/.*'));

返回同一天的 10,564 个会话。如何让它们匹配GA接口?

【问题讨论】:

你不需要统计fullVisitorId的不同数量吗?如果您也进行一些搜索,过去也有一些类似的问题,这可能会有用。 谢谢,但我对会话感兴趣,而不是用户。为什么要统计用户数? ***.com/questions/30419771/…hth! 【参考方案1】:

Sessions 作为 GA 中的一个指标,BigQuery 是一个预聚合指标,可以加快处理速度。要匹配 GA,您需要使用 SUM(totals.visits),而不是 COUNT(DISTINCT CONCAT(fullVisitorId,CAST(visitId as STRING)))。访问您的网站时,如果用户仅触发非交互事件(并且没有浏览量),则会在 BigQuery 中产生一个 visitId 和一条记录,其 totals.visits 值为零,但可以在使用用户细分时进行查询和报告,或者独特的维度组合

BigQuery 查询视图:

谷歌分析仪表板视图:

【讨论】:

非常感谢您的解释!知道为什么段条件事件类别 = 用户登录和事件操作匹配 RegEx [0-9] 将不匹配 EXISTS(SELECT 1 FROM UNNEST(hits) h WHERE eventInfo.eventCategory = 'User login' AND REGEXP_CONTAINS(eventInfo.eventAction, r'^[0-9]') ) 您好,抱歉耽搁了,感谢您接受我的回答。我想 BigQuery 结果将计算总事件,而另一个将计算包含该事件的访问。如果你还没有弄清楚,我可以帮助调试? 似乎将高级段中的事件类别和事件操作结合为条件和序列返回不同的结果。我设法将序列一与 BQ 查询匹配,但无法匹配条件一。

以上是关于无法匹配 GA 高级细分和 BigQuery 结果的主要内容,如果未能解决你的问题,请参考以下文章

初学者 GA 导出 bigquery 问题

按登录页面划分的用户组大查询与GA UI报告不匹配

按页面标题显示的 GA bigquery 页面浏览量

BigQuery GA360链接数据集不在项目中

bigquery中的GA4流量源数据不正确

BigQuery GA360 链接数据集不在项目中