**导读:**Session数是网站统计的基础指标,但很多人算出来的数字和别人对不上。我在做口径对齐时,把会话切分的规则彻底理了一遍。
Session到底是什么?
Session(会话)就是用户从"打开你的网站"到"离开"之间的一整段行为。问题在于:用户什么时候算"离开"?
会话切分时间轴
30分钟超时规则
行业通用的默认规则是:用户30分钟没有任何操作,就判定为新的Session。根据GA4官方文档,会话超时的默认值就是30分钟。
会话切分判定表
| 场景 | 判定结果 | 说明 |
|---|---|---|
| 连续点击间隔 < 30分钟 | 同一 Session | 正常浏览行为 |
| 连续点击间隔 > 30分钟 | 新 Session | 超时切分 |
| 页面跳转(同站) | 同一 Session | 跨页不中断 |
| 关浏览器再打开 | 新 Session | 会话状态清除 |
-- 按用户的访问时间排序,标记哪些是新 Session
WITH visits AS (
SELECT user_id, event_time,
LAG(event_time) OVER (PARTITION BY user_id ORDER BY event_time) AS prev_time
FROM page_views
)
SELECT user_id, event_time,
CASE WHEN prev_time IS NULL
OR event_time - prev_time > INTERVAL '30 minutes'
THEN 1 ELSE 0 END AS is_new_session
FROM visits;
**我的经验:**看用户粘性,看Session/UV的比值最直观。比值越高,说明用户越频繁地回访。
总结
Session数看起来简单,其实坑全在口径上。总结一下三个关键变量:30分钟超时 是行业通用默认值,跨页不中断 是因为页面跳转不算新会话,关浏览器结束是因为会话状态被清除。
常见问题 FAQ
Q1:30分钟是行业标准吗?能不能改?
A:GA4默认是30分钟,但你可以根据业务自定义。内容类网站可以设长一点,电商类可以设短一点。
Q2:用户关了浏览器再打开,算新 Session 吗?
A:算。关闭浏览器会清除当前会话的状态,重新打开就是新的Session。
Q3:跨设备的同一个人,算几个 Session?
A:如果没有用户ID打通,就是两个设备各算各的。如果有登录态并且打通了用户ID,才算同一个人的Session。
Q4:为什么我的 Session 数和 GA 对不上?
A:大概率是切分规则不一样。检查一下超时时间、域范围、还有广告拦截的影响。
参考来源
GA4 官方文档:会话超时设置
GA4 会话定义与计算方式
MDN: sessionStorage 与会话管理