Web度量应用程序计算访问者现场时间的最佳方式是什么?

Jam*_*.Xu 2 google-analytics data-analysis web-analytics

我正在开发一个像谷歌分析这样的内部网络分析系统,我不太清楚这个概念page stay time,这个措施来自网络的典型解释是:

  1. 用户在时间戳访问页面A:t1
  2. 用户在时间戳访问页面B:t2,(t2> t1)

那么A的页面停留时间是t2-t1,B是0

我的问题是:在这种情况下,当计算page stay timeB时,我们是否需要检查用户是否从页面A单击页面B?即B的参考是A?

dou*_*oug 6

有两种技术可以测量页面上的时间,以及它的聚合对应时间点,通过用于记录时间 - 事件对的标记来区分:

  • 时间戳

  • 基于平

Google Analytics(分析)实例使用前者,特别是GA记录用户会话中发生的每个网页浏览,事件事务的时间戳.

正如您在问题中所指出的那样,Google Analytics会计算该用户整个会话历史记录的时间戳增量,从而计算网站停留时间.用户会话中的最后一页没有时间戳,因此不计算最终时间增量.

这会在"现场时间"度量标准中引入错误,但我仍然认为这是测量技术的最佳选择.该技术易于解释,因此易于准确理解发生的位置以及影响报告指标的方向.换句话说,您知道现场时间总是低估.

其次,可以估计此错误(即估计真实的现场时间),因为您在用户访问中的每个其他页面都有可靠的页面停留时间.更好的是,从您的网站访问者群体中,您可以获得用户在其会话中最后访问的特定页面的平均页面停留时间数据.

测量页面上的时间的另一组技术是基于ping的.这里,页面中的javascript以预定的时间间隔重复调用页面ping服务器的功能.只要该页面在客户端浏览器上打开,页面上的javascript代码段就会调用此ping操作.

也许这些技术的关键优势在于它们解决了不计算用户在他们结束会话的页面上花费的时间的问题.我认为基于ping技术的主要缺点是实现成本较高.这种技术的准确性当然取决于ping频率 -平均测量精度大约是ping频率的一半.如果您的ping频率为10秒,则可以将页面上的时间平均解决为5秒.但是任何服务器活动都有相关的资源成本,因此需要谨慎优化此参数,即ping频率.这就是我所说的"更高的实施成本".

Brian Cray 最近的博客文章讨论了这样一个解决方案,并为此提供了一个javascript片段.此外,Episodes是一个javascript库,用于准确测量javascript(而不是DOM)事件.这可能对您的分析项目有用.

那么这两种技术中的哪一种更好?我怀疑这两者的巧妙组合会给你最高的分辨率和最低的页面重量和服务器负载.我所知道的唯一一个实现这种混合系统的分析应用程序是W3Counter.[ 注意:我与本项目没有任何关系或协议.]

我没有使用W3Counter,但仅基于此功能,我相信值得考虑.(但是,我不喜欢名字,"W3Counter",这使我认为它是一个验证检查器.)