“页面停留时间和网站停留时间”是Google Analytics中的一对时间度量。用来分别记录用户在网站或网页上的停留时间。这样我们就可以根据用户停留的时间长短来衡量网站或页面的表现。但这两个度量真的准确吗?
度量的定义:
页面停留时间:显示访问者在某个特定网页或某组网页上所花费的时间。
网站停留时间:访问者在网站上花费的时间。
度量的计算方法:
页面停留时间:Google Analytics是通过被访问网页的时间戳来计算页面停留时间的。简单的说就是通过用户访问后一网页的初始时间减去用户访问前一网页的初始时间。
例如,用户访问网页A,然后访问了网页B,然后离开了网站。用网页B的时间戳减去网页A的时间戳就可以计算出网页A的停留时间
用户访问网页A的时间:9:30:05
用户访问网页B的时间:9:30:15
用户在页面A的停留时间是10秒
Google Analytics通过cookie _utma来获得用户访问页面的时间戳,还记得前一篇“绝对唯一访问者”里介绍过_utma中的6组数字吗?
其中的3,4,5三组数字就是时间戳。这些数字是以秒为单位的。第3组数字表示初次访问的时间,第4组数字表示上一次访问的开始时间,第5组数字表示当前访问的开始时间。Google Analytics在这里获得访问页面的时间戳并用来计算出页面停留时间。
网站停留时间:就是用户访问网站的时间。Google Analytics通过_utmb和_utmc两个cookie来计算网站停留时间。_utmb的生存期是30分钟,_utmc是临时cookie,随着浏览器关闭而消失。当这两个cookie中的任意一个消失后,Google Analytics就判断是一次访问(session)结束。并用后面的时间减去访问开始的时间来计算网站停留时间。
网站停留时间:就是用户访问网站的时间。Google Analytics通过访客离开网站前的最后一个时间戳来计算访客的网站停留时间。这个时间戳是访客开始访问最后一个页面的开始时间。与页面停留时间的计算方法相似,因为Google Analytics无法获得访客离开网站后的时间戳,因此也就无法获得最后页面的访问时间。(之前的描述中使用cookies计算离开时间有一些问题。因为Google Analytics可能无法获得cookies的失效时间)
这里有一个问题,一次访问中所有的页面停留时间之和就是网站停留时间吗?并不是这样的,Google Analytics在计算页面停留时间的时候会漏掉一部分页面的数据,而在计算网站停留时间时又会多计算一些时间在里面。下面我们看下可能对这两个度量产生影响的因素。
可能产生影响的因素:
计算方法:
页面停留时间
页面停留时间是依靠后面页面的时间戳减去前面页面的时间戳获得的。但必须是在两个页面的追踪代码都被执行后才能完成计算的。
假设一种情况:
用户访问网页A的时间:9:30:05
用户访问网页B的时间:9:30:15
用户在9:30:30关闭B页面。
那么:
用户在页面A的停留时间是10秒
用户在页面B的停留时间将是0秒(而不是15秒)
这次访问的网站停留时间是10秒
PS:这次访问的网站停留时间是20秒 是25秒(A页面开始时间-关闭B页面时间)
因为用户访问完页面B后没有继续访问,而是离开了。这就没有后续的时间戳用来计算B页面的停留时间了。而这种情况在Google Analytics中是广泛存在的。因为用户的每次访问都会有最后一个页面的(退出页)。而最后一个页面的停留时间是计算不出来的。这就导致了页面停留时间度量的不准确。
网站停留时间:
Google Analytics是通过一次访问的开始和结束时间来判断用户在网站的停留时间的,再具体一点说,是通过_utmb和_utmc两个cookie来判断访问结束时间的。但按照这两个cookie不一样的工作方式也会对网站停留时间造成影响。_utmc会在用户关闭浏览器时一起消失,这个是没有问题的。而_utmb的生存期是30分钟。就是说即使用户停止了访问,但只要没有关闭浏览器就要需要等待30分钟才能记录为访问结束。而在这30分钟里用户可能已经离开了。
Google Analytics是通过一次访问的开始和结束时间来判断用户在网站的停留时间的,再具体一点说,Google Analytics通过访客离开网站前的最后一个时间戳来计算访客的网站停留时间。这个时间戳是访客开始访问最后一个页面的开始时间。与页面停留时间的计 算方法相似,因为Google Analytics无法获得访客离开网站后的时间戳,因此也就无法获得最后页面的访问时间。(之前的描述中使用cookies计算离开时间有一些问题。因 为Google Analytics可能无法获得cookies的失效时间)
跳出(Bounce)访问:
跳出访问是指用户只浏览了一个页面就离开了。这种访问同样应为没有后续页面的时间戳所以无法计算出页面停留时间。Google Analytics在计算平均页面停留时间时不会包含跳出访问。而在计算平均网站停留时间时却会包含跳出访问。
感谢Kevin的更正
——【所有文章及图片版权归 蓝鲸(王彦平)所有。欢迎转载,但请注明转自“蓝鲸网站分析博客”。】——
Excellent article, I will take note. Many thanks for the story!
@Cialis: Thanks!
“PS:这次访问的网站停留时间是20秒”中的20秒是怎么算出来的呢?因为系统只知道9:30:05访问开始,9:30:15是最后一个访问。
@yhang:感谢留言。 后面还有一个“用户在9:30:30关闭B页面。” GA通过用户关闭页面的时间(_utmc)与访问第一个页面的时间来计算网站停留时间。
PS:文章中有个小错误。网站停留时间应该是25秒。
time on site 明显和http://www.kaushik.net/avinash/2008/01/standard-metrics-revisited-time-on-page-and-time-on-site.html
他的说法不同啊??
@Kevin 感谢关注,网站停留时间的问题已更正。谢谢。
太客气了。。
从你BLOG 学到很多了
楼主对google停留时间研究的比较透彻,呵呵
有兴趣研究JYC统计吗?
http://www.adjyc.com
真正统计在线访客,真正记录访客在各个页面的停留时间。
准确的定义:特定访客的页面停留时间应该是特定访客打开页面到关闭页面之间的时间。
特定访客网站停留时间很显然是特定访客所有页面停留时间之和。
google的停留时间算法是很不科学的。
今天回过头来又看了一下这篇文章,发现有好几处蓝鲸已经做了修改。真是用功,我的榜样呢,呵呵!
@Rabbbit·雪, 呵呵,过奖了。文章里出现了错误就做了修改。不能误导大家。
“页面停留时间:显示访问者在某个特定网页或某组网页上所花费的时间。”—————–该如何添加代码 从而让系统自动计算某组页面的平均停留时间呢?
@八月, 默认的追踪代码就可以记录,选择你要查看的网页,报告中会自动显示这些页面的平均停留时间,或者也可以将这些页面通过过滤器设置成一个内容组。
貌似GA的这个功能确实存在缺陷哈,js中有可以在页面load的时候加一个时间戳1,在unload中加一个时间戳2,然后用时间戳2-时间戳1 就可以大致知道当前页面的停留时间。而不用在乎是否是最后一个跳出页面
这样看来,ga在时间监测上确实很不准确啊!
难道没有更好的解决方法吗?
“这里有一个问题,一次访问中所有的页面停留时间之和就是网站停留时间吗?并不是这样的,Google Analytics在计算页面停留时间的时候会漏掉一部分页面的数据,而在计算网站停留时间时又会多计算一些时间在里面。”---最后一句中“多计算一些时间在里”是指?用的什么方法?(我在统计时,每一次访问退出页的停留时间用之前页面的平均停留时间来代替,这样一次访问中所有的页面停留时间之和就是网站停留时间)
看博主的文收获良多。不过文中所述是假设用户先看A页面,再跳到B页面的这种单线浏览情况。以下两种情况,根据博主的叙述推导得来,请帮忙看下是否正确:
1.同时打开多个页面的情况
9:00:00 – 用户进入网站,打开index.html
9:00:10 – 用户同时在新窗口打开A.html,B.html,没有关闭index.html
9:00:20 – 用户关闭A.html
9:10:00 – 用户关闭B.html, index.html并离开网站
那么index.html的停留时间是10秒钟
A.html和B.html的停留时间是0秒钟
这种情况,如果用户同时打开CDEFGH并且看了很久之后没有开新页面,相当于损失了很多数据吧。
2.框架嵌套网页的情况
9:00用户打开/,它是个框架网页,于是同时加载了/header.html,index.html和bottom.html
9:10用户在同窗口点击进入a.html,同时加载了/header.和bottom.html
9:20用户在同窗口点击进入b.html,同时加载了/header.和bottom.html
9:30用户关掉所有网页
那么index停留时间为10秒,a为10秒,b为0秒
header的停留时间为10+10+0=20秒,平均停留时间=6.7秒?
我手上的网站是以上两个问题的综合体。现在的情况是,A和B以及CDEFG的平均停留是1-4秒钟,大量的0秒钟,而header的时间比理论只长得多,约等于一个用户在整站停留的时间。这整个站的平均停留时间才十几秒,大大低于我做过的其他类似网站(同样都有大量UGC内容);他的特别之处只有不停调用header和bottom…请问这一点究竟怎样影响了这个网站的平均停留时间?
非常感谢!
如果浏览器时间不准确呢,这种情况怎么处理呢?
如果是单页面的停留时间呢,GA是怎么定义的?
单页面访问没有页面停留时间。