Google analytics 大查询中的GA漏斗分析-“正确”会话计数
谢谢你的光临!如果能在Big Query中重新创建最终GA会话漏斗,我将不胜感激。重点是每个会话的漏斗,在一个会话中有特定的但不一定是顺序访问的页面 解决方案应将会话计数为CONCATfullVisitorId,将CASTvisitStartTime计数为字符串 此外,漏斗的形式应为,只有在会话中完成了前一步时,才能到达每个漏斗步骤。例如,只有在会话期间访问了步骤1-3时,才应计算第四步。但是,这些步骤不需要连续执行 不幸的是,这就是为什么我非常喜欢的东西对我不起作用。它返回totals.visions的访问数。此外,我需要对页面使用REGXP_CONTAINS,因为我的页面上没有用于漏斗步骤的事件或自定义维度。用于每个步骤的原始查询Google analytics 大查询中的GA漏斗分析-“正确”会话计数,google-analytics,google-bigquery,Google Analytics,Google Bigquery,谢谢你的光临!如果能在Big Query中重新创建最终GA会话漏斗,我将不胜感激。重点是每个会话的漏斗,在一个会话中有特定的但不一定是顺序访问的页面 解决方案应将会话计数为CONCATfullVisitorId,将CASTvisitStartTime计数为字符串 此外,漏斗的形式应为,只有在会话中完成了前一步时,才能到达每个漏斗步骤。例如,只有在会话期间访问了步骤1-3时,才应计算第四步。但是,这些步骤不需要连续执行 不幸的是,这就是为什么我非常喜欢的东西对我不起作用。它返回totals.vis
SUM((SELECT 1 FROM UNNEST(hits) WHERE eventInfo.eventAction = 'landing_page' LIMIT 1)) Landing_Page
我试过:
COUNT( DISTINCT( SELECT CONCAT(fullVisitorId, CAST(visitStartTime AS STRING)) FROM UNNEST(GA.hits) WHERE REGEXP_CONTAINS(hits.page.pagePath, r”myfunnelpage”)
然而,根据CONCATfullVisitorId、CASTvisitStartTime和overday_会话的计数,我的漏斗步骤访问实际上超过了我的总“会话”
另一方面,我对@Martin的用户会话印象非常深刻,也非常害怕
据说,当我写这篇文章的时候,有一篇文章应该写下来
我的方法是这样的。但它只返回具有单页视图的会话,而不返回连续的会话:
SELECT
date,
COUNT( DISTINCT( SELECT CONCAT(fullVisitorId, CAST(visitStartTime AS STRING)) FROM UNNEST(GA.hits) WHERE REGEXP_CONTAINS(hits.page.pagePath, r"productoverviewpage") LIMIT 1)) AS product_overview_s1,
COUNT( DISTINCT( SELECT CONCAT(fullVisitorId, CAST(visitStartTime AS STRING)) FROM UNNEST(GA.hits) WHERE EXISTS(SELECT 1 FROM UNNEST(GA.hitS) WHERE REGEXP_CONTAINS(hits.page.pagePath, r"productoverviewregex")) AND REGEXP_CONTAINS(hits.page.pagePath, cartoverviewregex") LIMIT 1)) AS cart_overview_s2
FROM
data as GA,
UNNEST(GA.hits) AS hits
WHERE hits.type = "PAGE"
AND
TRUE IN UNNEST(
[REGEXP_CONTAINS(hits.page.pagePath, r"productoverviewpage"),
REGEXP_CONTAINS(hits.page.pagePath, r"cartoverviewregex""]
)
有什么想法吗?任何能够使用“正确”会话计数重新创建最终大查询漏斗的人?您可以使用内联子查询检查漏斗的各个步骤:
WITH
sessions AS (
SELECT
(
SELECT
hits
FROM
UNNEST(hits) hits
WHERE
hits.page.pagePath = "/"
) first_step,
(
SELECT
hits
FROM
UNNEST(hits) hits
WHERE
hits.page.pagePath = "/basket"
) second_step
FROM
`project.dataset.ga_sessions_*`)
SELECT
COUNT(first_step) sessions_step_one,
COUNTIF(first_step.hitNumber < second_step.hitNumber) sessions_step_two
FROM
sessions