1.问题提出:
经常有人会问,我的网站部署了好多个网站访问统计系统,比如百度、谷歌、CNZZ、JYC、51.la等等,但各个系统统计的结果总是不相同,而且差距不小,我该以哪个为准呢?
答复:
这种现象是正常的。
虽然上述统计原理都是采用页面埋点嵌入JS代码采集访客信息的技术方式。但由于客户端网络环境、服务器硬件环境(服务器配置性能、存储性能、网络带宽条件等)和统计软件环境(操作系统、采集算法、程序设计、数据库设计等等)都不可能完全相同,综合各种因素相互影响,统计数据自然就会存在差异。
既然有差异,那数据应该如何参考?
从原理上,上述统计都具有完全相同的两个采集指标,所以只需要对比这两个指标即可:
- 访客IP数(VIP):访问页面的访客IP数量
- 页面访问数(PV):访客打开一次页面就算作一次访问。
另外加一个指标:页面访问时长,也叫页面停留时间,这个指标对于用户关注度的评价有很重要的作用,但由于各家算法不同,所以各位可自行去测试判断。
结论是:一般应以访客IP数多的、页面访问数多的,停留时间准的作为参考即可。
本次为了更好的说明如何评价各统计系统采集数据的准确性,以百度统计和JYC统计作为例子说明,仅供参考:
2.百度统计和JYC统计数据准确度评测
以某网站测试为例,在全站添加了百度和JYC统计代码,已运行超过6个月。
由于该网站每天的访问量很小,所以更容易微观详细分析统计数据的准确度。
百度统计代码添加结果如下:
JYC统计代码添加结果如下:
数据对比依据实时访客的记录信息作为评价标准,最为直观。
我们抽取2020年9月28日全天24小时统计数据对比:
----百度统计访客明细截图:
点击百度统计的【实时访客】功能查看:
百度将同一个IP的汇聚一起,可以看到一共是3个IP来源
可以扩展具体IP查看具体访问了几次:
----JYC统计访客明细截图
点击JYC统计的【访客行为轨迹】功能查看:
JYC统计将每个访问直接展示。
JYC统计将访客IP做汇总展示。
可点击进入相应明细:
上述3个IP是和百度一样记录到的。
另外其它9个IP,这边列出2个作为代表,有图有真相:
3.根据总量宏观对比
2020年9月28日统计数据 | 百度 | JYC | 差距 |
IP数 | 3 | 12 | 9 |
访问次数 | 16 | 31 | 15 |
停留时间 | 约32分钟 | 约81分钟 | 49分钟 |
从上述结果看,百度应该是漏计了不少访问。
4.根据IP微观对比
2020年9月28日访客IP | 百度 | JYC | 差距 | |
223.72.99.112 | 访问次数 | 8 | 8 | 0 |
停留时间 | 1分10秒 | 1分10秒 | 0 | |
112.48.69.213 | 访问次数 | 3 | 3 | 0 |
停留时间 | 1分13秒 | 1分31秒 | 18秒 | |
123.126.5.158 | 访问次数 | 5 | 3 | 2 |
停留时间 | 29分48秒 | 23秒 | 29分钟25秒 | |
还有9个访客IP |
| 未记录到 | 准确记录了 |
|
从上述结果看,已经记录到的访客IP访问次数两个统计基本相同,但百度的停留时间计算是不准的,最后的页面时间一般未知,这和算法是有明显关系的。
5.关于访问时长算法说明:
5.1百度统计访问时长的计算
来源百度官方:
访问时长指访客每次在网站访问所停留的时长,即从进入第一个页面到离开最后一个页面的时长。
在传统统计工具下,最后一个页面的关闭时间很难得到,百度统计在技术上进行了升级,能够获取到该页面的关闭时间。
然而用户行为具有多样性,当用户快速关闭浏览器、长时间未对页面进行操作或其它网络原因导致的时候,系统会无法获取到页面的关闭信息,从而使最后一个页面的关闭时间无法计算,影响系统对访问时长的计算。这个比例约为10%-30%。 在原算法中,如系统未能接收到最后一个页面的关闭时间,会赋予最后一个页面30分钟的访问时长,导致整体的平均访问时长数值偏高;经调研,百度统计对访问时长算法进行优化,针对未能收到关闭时间的页面将采取以下优化方法:
- 用户一次访问中只访问了一个页面而该页面的关闭时间未收到,则系统赋予该页面一定定值作为访问时长;
- 用户一次访问中涉及到n(n≥2)个页面,其中第n个页面的关闭时间无法收到,则系统将前 (n-1)个页面的平均访问时长作为第n个页面的访问时长;
5.2JYC统计访问时长的计算
来源JYC统计官方:
http://www.adjyc.com/file/Cnzz-Baidu-JYC-vs.pdf
http://www.adjyc.com/support.html
6.补充一个快速测试的方法:
在相同页面上部署多个统计代码,然后打开多个页面进行实时测试对比。
评价方法是:查看各统计系统是否都实时记录到了测试访问。