先看缺失是怎么产生的:如果某类设备在采集环节就被过滤掉,那么所有基于该设备的行为结论都会系统性偏低;如果只是该设备用户本来少,结论偏差有限。区分这两种情况,靠的是对采集链路的对账,而不是看总量大小。
假设你按设备类型拆分监测数据,发现桌面端记录完整,移动端某些页面的事件数明显偏少,但服务器日志显示这些页面的请求量并没有同步下降。此时团队里通常出现两种判断:一种认为移动端用户行为本来就不同,另一种认为采集在移动端丢了数据。两种判断指向完全不同的动作,所以必须先分清。
解释一:真实差异。移动端用户确实更少触发某类事件,比如表单填写。可核对的证据是:同一批页面在移动端的会话数、停留时长、滚动深度是否也同步偏低,且这种偏低在多个时间窗口稳定出现。如果各项指标方向一致、幅度接近,真实差异的可能性更大。
解释二:采集缺失。监测脚本在特定设备或浏览器上未执行、被拦截,或上报请求失败。可核对的证据是:同一时间段的原始请求日志里,移动端 UA 对应的采集请求数量,与站内统计到的移动端事件数量出现缺口;缺口集中在特定页面模板或特定脚本版本,而不是均匀分布。
注意,请求量或事件量归零本身不能单独证明采集正确或错误。脚本未触发、网络中断、用户主动拦截、统计口径把某类请求排除在外,都会造成同样的表象。所以要看缺口是否与设备、页面模板、脚本版本这几个维度中的某一个强相关。
把分歧转成能核对的项目,可以按下面的顺序走一遍。每一步都留下可复查的记录,而不是只记结论。
如果缺口在第二步就消失,说明是统计口径差异,不是采集丢失;如果缺口在第三步集中到某个脚本版本,说明问题出在该版本的执行条件;如果第四步复现时请求正常发出,那问题更可能在服务端接收或去重环节。每一步的结果都会改变下一步该查什么。
假设某站点移动端文章页的事件数只有桌面端的三成,而会话数比例是六成。按上面的对账链走:原始请求记录显示移动端文章页的采集请求数确实只有桌面端的三成,且这些请求全部来自旧脚本版本;新脚本版本在移动端几乎没有请求记录。此时可以判断,问题不是移动端用户行为不同,而是新脚本在移动端文章页模板上没有正常执行。下一步应检查该模板的脚本加载条件,而不是去调整移动端的转化分析模型。
这个例子里,判断依据是缺口与脚本版本强相关,而不是与设备本身强相关。如果换一个站点,缺口与设备强相关、与脚本版本无关,那结论就要反过来写。
如果误判为真实差异,团队可能去优化一个并不存在的移动端行为问题,浪费一轮迭代;如果误判为采集缺失,可能反复排查脚本,而实际只是统计口径把某类请求排除在外。两种误判的代价不同,所以判断时要优先找能区分解释的证据,而不是先接受看起来更合理的那个。
当多个角色对同一事实有不同理解时,把分歧写成上面那条对账链,每个人负责其中一步并留下记录,结论就不再依赖谁的声音更大,而是依赖哪一步的记录先出现分歧。