首页 > 解决方案 > 谷歌分析用户计算

问题描述

我正在尝试在 GA 中模仿此图表:

在此处输入图像描述

但是我注意到,当我不在代码中添加日期时,数字匹配,但是当我添加日期时,数字似乎加倍。

在此处输入图像描述

代码:

SELECT 

date,

COUNT(DISTINCT fullVisitorId) AS Users, 

-- New Users (metric)
COUNT(DISTINCT(
      CASE
        WHEN totals.newVisits = 1 THEN fullVisitorId
      ELSE
      NULL
    END)) AS New_Users,
    
-- Sessions (metric)
COUNT(DISTINCT CONCAT(fullVisitorId, CAST(visitStartTime AS STRING))) AS Sessions, 

-- Bounces (metric)
  COUNT(DISTINCT
    CASE
      WHEN totals.bounces = 1 THEN CONCAT(fullVisitorId, CAST(visitStartTime AS STRING))
    ELSE
    NULL
  END
    ) AS Bounces,

  -- Transactions (metric)
COUNT(DISTINCT hits.transaction.transactionId) AS Transactions,
    
--Revenue (metric)
SUM(hits.transaction.transactionRevenue)/1000000 AS Revenue
  

FROM
  `ABC-ca-web.123.ga_sessions_*`, Unnest(hits) hits
  
WHERE trafficSource.campaign LIKE '%ABC%' and date between '20200801' AND '20200831'

标签: google-analyticsgoogle-bigquery

解决方案


如果您在 GA 中按日期计算用户数,也会发生这种情况,这是通常的查询操作。

您不能汇总不同时期的用户。例如,如果用户 X 在一周内每天都访问该站点,则分析整个期间的用户数为 1,但如果您逐日分析,则第一天为 1,第二天为 1,1第三天,等等……因为每天都有同一个用户在那里。如果您按天计算用户,结果是您有 7 个用户,但实际上您有 1 个用户,因为它是同一个用户。


推荐阅读