我一直在尝试研究Avinash Kaushik在其Web Analytics 2.0一书中提出的黑客攻击。他提出了一个问题,即大多数网络分析工具无法记录用户在网站上访问的最后一页或他们访问的唯一页面上花费的时间。换句话说,如果用户来到第1页,则会创建一个时间戳,显示他们到达页面的时间,当他们访问第2页时,会创建第二个时间戳。第1页上花费的时间可以通过时间戳2 - 时间戳1来计算。但是,如果用户关闭浏览器窗口或导航离开网站,则无法在第2页上记录时间。以下是Kaushik上此问题的链接达网络
standard-metrics-revisited-time-on-page-and-time-on-site
一个提议的hack是使用window.onbeforeunload事件来调用方法并将页面卸载的时间推送到谷歌分析。所以我尝试了以下代码 -
window.onbeforeunload = capturePageExit;
function capturePageExit()
{
_gaq.push(['_trackPageview', '/page-exit?page=' + document.location.pathname + document.location.search + '&from=' + document.referrer]);
return("You are about to close this page");
}
使用firebug我可以看到请求正确的__utm.gif图像,并将正确的参数发送到谷歌分析。但显然现在存在一个问题,即在每个页面卸载时会调用它,因此每个访问者看起来都会从第1页开始 - > page-exit - >第2页 - > page-exit - >第3页 - >页面退出...但我应该在网站阅读时获得更准确的时间,对吗?
然而,这是以准确的导航摘要数据为代价的,因此不是一个好的解决方案。如果我能说出来 - 如果用户点击了关闭浏览器/标签按钮或者离开我的网站然后记录页面退出,那将是多么好。
我无法找到有关如何解决此问题的大量信息,在解释谷歌分析(以及可能的大多数网络分析工具)时,有很多关于了解这种不准确性的讨论,另一个有用的链接是time_on_page_and_time_on_site_how_confident_are_you < / p>
只是想在stackoverflow上提出这个问题,因为我无法找到类似的问题并开始讨论这个问题,但我的解释是没有真正解决这个问题的办法,但最好还是要注意它。
有什么想法吗?
----------------------------------------------- -------更新------------------------------------------ -----------
这是一个名为Savio.no的博客向我建议的另一个链接,这是一个好方法吗?
答案 0 :(得分:7)
网络分析不是一门精确的科学。数据总是近似的,大部分时间都是采样的。
Web Analytics工具力求精确度不准确。 This whitepaper描述了为什么在使用Web Analytics时获得准确性并且不那么重要,这一点更为重要。
一旦您了解了精确度和准确度之间的差异及其重要性,您就会明白获得准确的站点时间指标并不重要,但这是一个精确的衡量标准,可以清楚地表达该指标的趋势或变化。
换句话说,忘记绝对数字,学习使用趋势和变化进行报告。
另一个建议是,如果您永远不会使用它,请不要费心调整GA以完美呈现每个度量标准。打扰您可以使用的指标。通过使用我的意思是可行的分析。
但是有些情况下,一些代码调整可以帮助您测量现场时间。一个明显的例子是博客。您可能希望在博客中实现类似的内容,因为您的大部分访问都将查看您的主页,阅读您的帖子然后离开,所有这些都在同一个PageView中完成,因此最好开火当用户离开以获得现场正确时间的事件,或者当用户滚动超过某个阈值时可能触发事件,最后您将测量相同的ting,如果用户滚动更多他读取更多,并且如果用户花费更多时间然后他阅读更多。因此,跟踪这两个指标来衡量相同的效果可能没有意义。只需选择一个并坚持下去,让它运行一段时间来创建历史数据,然后再使用它。