首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >GA4里的这几个指标都是估算的:会话数、活跃用户数、用户总数

GA4里的这几个指标都是估算的:会话数、活跃用户数、用户总数

作者头像
GA小站
发布2026-03-12 12:25:25
发布2026-03-12 12:25:25
190
举报
文章被收录于专栏:GA小站GA小站

GA4里的指标并不是都是按实际数量计算,有些是估算。

为什么会有估算值

对于大型数据集衡量确切的非重复计数(即基数)需要大量内存且会影响性能。

GA4是使用 HyperLogLog++ (HLL++) 算法来估算最常用指标的基数,使用 HLL++ 可确保实现较高的性能,同时提高估算准确性并缩小误差范围。

估算指标的影响

估算指标主要有两个影响:

  • 估算指标与实际有差异
  • 不同报告位置的同意指标数值可能会不同,延伸阅读:GA4中不同报告中的「活跃用户数」不一致

估算指标介绍

GA4里的估算值指标有会话数、活跃用户数、用户总数。

会话数

官方对会话数的定义是:GA4会估算唯一会话ID的数量,以此来计算发生的会话数。

BigQuery里的计算:ga_session_id 事件参数用于标识每个用户的唯一会话数。user_pseudo_idga_session_id 的组合在数据集内对唯一会话来说将是唯一的。这是GA4统计会话数的标准方法。对于会话数,precision 为 12。(会话数的BigQuery和用户总数的对调了)

代码语言:javascript
复制
SELECT  HLL_COUNT.EXTRACT(HLL_COUNT.INIT(user_pseudo_id,14)) AS total_user_count,FROM `table.events_*`

延伸阅读:深入理解 Google Analytics 4 中的会话

活跃用户数

活跃用户数是个估算值,它在不同报告中显示的值可能会不同。

BigQuery里的计算:首先需要对事件进行过滤,才能使系统仅显示活跃用户数。

代码语言:javascript
复制
WITH ActiveUsers AS(  SELECT    user_pseudo_id  FROM`table.events_*`  WHERE(SELECT value.int_value FROM UNNEST(event_params) WHERE key ='engagement_time_msec')>0 OR (SELECT value.string_value FROM UNNEST(event_params) WHERE key ='session_engaged')='1' GROUP BY user_pseudo_id ))SELECT  HLL_COUNT.EXTRACT(HLL_COUNT.INIT(user_pseudo_id,14)) AS active_user_count,FROM ActiveUsers

用户总数

用戶总数是其实也是估算值。

BigQuery里的计算:

代码语言:javascript
复制
SELECT  HLL_COUNT.EXTRACT(    HLL_COUNT.INIT(      CONCAT(        user_pseudo_id,(SELECT `value` FROM UNNEST(event_params) WHERE key ='ga_session_id' LIMIT 1).int_value),12)) AS session_count,FROM `table.events_*` 
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-06-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 GA小站 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 为什么会有估算值
  • 估算指标的影响
  • 估算指标介绍
    • 会话数
    • 活跃用户数
    • 用户总数
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档