2

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

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

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

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

4

1 回答 1

6

有两种技术可以测量Time on Page及其聚合对应Time on Site,通过用于记录时间-事件对的标记来区分:

  • 时间戳

  • 基于 ping

例如,Google Analytics 使用前者,特别是 GA 记录用户会话中发生的每个浏览量事件事务的时间戳。

因此,正如您在问题中指出的那样,Google Analytics 通过对该用户的整个会话历史记录的时间戳增量求和来计算站点停留时间。用户会话中的最后一页没有时间戳,因此不计算最终时间增量。

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

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

测量页面停留时间的另一组技术是基于 ping 的。这里页面中的 javascript 在预定的时间间隔内重复调用一个函数,该函数页面 ping 服务器。只要该页面在客户端浏览器上打开,页面上的 javascript 片段就会调用此 ping 函数。

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

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

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

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

于 2011-07-13T05:00:00.643 回答