标签归档:网站分析度量

网站的迷失度度量

measure-of-lostness  在博客之前的文章——优化网站信息架构我曾经提到过关于迷失用户(Lost Visits)的定义,以及如何使用Google Analytics的高级群组(Advanced Segment)去区分出这批用户。最近在看《用户体验度量(Measuring the User Experience)》,发现自己实在太嫩了,人家Smith早在1996年就对迷失度Lostness)有了定义,同时给出了迷失度L的计算公式,这里借花献佛,分享给大家。

Lostness-expression

即,L = sqrt[ (N/S-1)2 + (R/N-1)2 ]

L:迷失度

N:访问的不同页面数(Unique Pageviews)

S:访问的总页面数(Pageviews)

R:完成任务必需的最小页面数

  Smith同时给出了迷失度的评定标准:最佳迷失度为0,迷失度小于0.4时,用户不会显示任何可观察到的迷失特征;迷失度大于0.5时,用户显现迷失特征。

  结合公式,我们可以看到这里对迷失度的定义主要考虑到的是:1、重复访问相同的页面,2、没有能够用最简单的方式完成任务,过多地在网站中徘徊。其实第一眼看去这个公式有一定的道理,但细想一下其实也存在着不合理的地方。通常我们需要去获取知识,阅读和总结他人的经验,但如果只是一味地套用书本或者别人的东西,那么你就输了,尤其是在发展如此迅速的互联网领域。那么我们来看看这个公式有何不妥:

  我们先思考这样一个问题:迷失的用户会表现怎样的特征?显然,当用户在网站中找不到自己需要的东西的时候会来回地点击各种页面,频繁地返回首页或者索引页面,那么从这个角度看,显然这个公式是成立的,迷失用户的表现特征就是频繁地重复浏览同一页面,并且浏览的页面数会比正常访问多得多。但再换一个角度思考,逆向思考下前面的问题:一个正常的用户会不会出现重复浏览同一页面或者浏览页面数较多的情况?显然也是可能的,简单的例子,如果你对我的博客非常感兴趣,看了一篇文章后还想看另外的文章……于是你来回于博客的文章页面和文章专题推荐或者网站地图页面之间,于是这些列出了文章索引的页面被一次又一次地重复访问着;再如,如果一个用户上电子商务网站的目的不是购物,而是闲逛,看看有没有便宜货,或者只是针对某类商品比对下商品的好坏及价格的差异,以伺机下手,那么这个时候这些用户的访问页面数就会异常的多,但他们其实都没有迷失。所以,上面的公式无法为你从所有的用户中挑出那些迷失的用户,最多只能对已知的迷失用户计算他们的迷失度,哪些是低度迷失,哪些是高度迷失。

Web 1.0  但其实Smith没有错,错的是这个高速发展的时代,这也是我为什么说尤其在互联网领域不要直接照搬一些东西来直接应用于自身的原因。1996年,很明显还处于WEB1.0时代,完全没有现在网站的那些复杂交互和多样的功能,当时的网站大部分做的只是信息的单向发布,而用户访问网站的任务也是单一的,可能就是查找到自己想要的那个信息页面。所以我反而觉得这个迷失度公式在当时绝对是适用的,而且Smith在当时就能总结得出这个的度量公式足见其对如今大热的“用户体验”的先知先觉以及对用户体验度量的智慧。同时这个公式对于当前网站的迷失度衡量也不是完全无效,如果是用户体验的小组在做可用性实验,为实验设定的情景是需要用户在网站中完成一个特定的任务,那么这个公式完全是有效的,所以总结起来就是这个公式对复杂的多任务的网站迷失度衡量无效,而对基于单任务的简单网站或者实验环境是有效的。

  既然这个公式对于当前的网站大部分时间不适用,我们就需要对其进行改良,使其适用于普遍的网站。再观察下这个公式,我们会发现其实它跟数据挖掘里面的欧几里得距离度量的计算方式十分相似,可以理解为所有的比例为1时是最理想的状态,公式计算的结果就是每个样本点与这个1的理想点的距离,距离越近迷失度越低,距离越远迷失度越高。所以这个思路完全可以借鉴,但显然只考虑浏览页面的这些度量还不够,我们需要加入其他的网站分析度量。

  对于现在的大部分网站而言,功能是多样化的,用户使用网站的任务不再是单一的,所以无法为不同任务的用户确定一个统一的完成任务的最小访问页面数,而公式的前半部分依然有效,我们尝试用其他度量来替换后半部分。于是自然而然的想到了停留时间,当用户没有迷失时他们会在自己感兴趣的页面停留一段时间,那么页面平均停留时长(Avg. Time on Page)不会很小,所以改进后的公式如下:

Lostness-expression_imp

即,L = sqrt[ (N/S-1)2 + (T/R-1)2 ]

L:迷失度

N:访问的不同页面数(Unique Pageviews)

S:访问的总页面数(Pageviews)

T:访问页面的平均停留时间(Avg. Time on Page)

R:网站正常的页面平均停留时长(既定值)

  这个公式同样有几点需要注意,首先N/S和T/R要保证小于等于1,这样迷失度L计算的结果才会落在[0,sqrt(2)]之间,才有评定是否迷失的可行性。N/S可以保证小于等于1,但T/R无法保证,所以再套用公式之前需要做一步数据筛选的工作,也就是过滤那些可以被简单认定不是迷失的访问(建议过滤访问页面数小于3或者页面平均停留时间大于R的所有访问),筛选后的所有访问即是需要去认定是否具有迷失倾向的访问,同时有保证了T/R小于等于1这个规则。至于R的值如何确定,可以先看一下你自己网站的几个数据:

determine_R

  从近一个月的数据观察,我的博客的页面平均停留时间(Avg. Time on Page)为2分钟半左右,所以我暂定公式中的R(网站正常的页面平均停留时长)为2分钟,用高级过滤器查看所有Time on Page小于2分钟的访问大概占到了网站所有访问的45%。同时,上图给出的3个指标恰恰就是公式中需要用到的上需要用到的3个指标,结合刚刚给定的R值,公式中所有需要的变量我们都已经可以拿到了,下面来看看几个示例:

序号 N S T R L
1 4 5 60 120 0.5385
2 5 8 25 120 0.8760
3 4 5 20 120 0.8570

  上表中计算得到了3个访问样本的迷失度度量L的值,很显然我们当前没法判定到底哪个迷失了哪个没有,所以还缺少一个判定基准(Benchmark),正如上面Smith给出的0.4和0.5,因为公式的变更我们可能需要重新定义这个基准。当然,如果你要用非常严谨科学的态度去定义这个基准线的话,这个过程完全可以作为一个研究课题,进行可用性的实验,观察实验用户的迷失情况,结合每个实验用户的指标数据最终给出一个迷失度的判断基准。当然如果你有兴趣,这个完全可以作为你的毕业设计或者学校科研课题去展开研究,我这边没有时间和资源去完成这个庞大的项目,只能按照经验值进行预估,针对我的博客,我认为当用户的重复访问页面比例超过1/3,并且页面平均停留时间不到30秒时,用户可能已经表现出一定的迷失倾向,将这个数值代入公式得到的迷失度L的值约为0.82,那么这个就可以作为衡量用户迷失的一个基准线,当L大于0.82时用户表现迷失的倾向,小于0.82则为正常访问。

  当然我这里提出的迷失度度量公式同样存在优化空间,如果你有更好的想法,可以一起交流,欢迎在评论里面提出你的想法。

  可能这篇文章的中间写了一大堆“废话”,主要是自己当时看到这个公式时思考如何将它有效地应用到实际的一个过程,实在没有耐心的朋友可以直接跳过,不影响文章的整体实现思路,不要抱怨:“怎么不早说,现在才提,我看都已经看下来了”,如果你看完了,就证明你有一颗足够淡定的心。其实我自己觉得在获取信息的时候(无论是看书还是看网上的文章)思考过程才是最重要的,这是对信息的一个有效过滤的过程,只有思考之后你获取的信息才是优质的,才是被你真正吸收的。但也有一个弊端,就是发现自己看书实在太慢太拖沓,现在手上正在阅读的有4本书,都是现在进行时,每本书的进度在1/3到1/2不等,涉及数据分析、用户体验、数据挖掘和报表展现,精力不够集中,一段时间不能同时兼顾太多呀,反而拖慢进度。

用Engagement衡量用户活跃度

engagement  Engagement(参与度)是一个特殊的度量,Avinash认为Engagement不应该作为网站分析的一个度量,它更像是不愿意去寻求衡量网站是否成功的真正指标时使用的一个借口。他列举了Engagement存在的几个缺陷:  

  •  Engagement对于不同网站而言是不同的,它不是一个统一的度量,难以用一个统一的标准去定义它;
  •  Engagement更多的是从定性的角度来定义的,很多用户参与行为不能很好地量化,因此难以准确地度量;
  •  没有一个评判标准,对于一个网站而言用户参与度到底多少算是好;
  •  因为没有标准的定义,存在不固定性,因此不能作为衡量网站整体表现的参考指标。

  所以,我们可以认为Engagement是一个非标准化的度量,但绕开Avinash所提及的那些误区之后,也许Engagement也并非一无是处,至少它可以作为网站自身的分析指标,衡量用户的活跃度。

如何合理地定义Engagement

  如果你要用Engagement来衡量网站用户的活跃度,并且把它作为一个长期的指标进行趋势分析,那么首先在定义时必须确定那些被归为Engagement的行为是相对固定的,在短期内不会发生变化。如对于一个论坛而言,“发帖”和“跟帖”行为是持续不变的交互行为,这些可以作为识别用户是否参与的标准;而网站中的一个活动按钮或推广链接则不能作为识别Engagement的标准,因为推广活动一般是有期限的,在下线后用户的Engagement就会相应的降低,这样就会导致Engagement的不稳定性,也就失去了分析的意义(或者你只是为了单独分析该次推广活动的用户参与度,那另当别论)。

  这里先举两个例子,显示电子商务网站定义Engagement的例子:

  • 用户的注册行为;
  • 用户放入购物车或购买行为;
  • 用户的售前和售后的反馈行为;
  • 用户对商品的评价。

  再来看一下微博中可以定义为Engagement的一些行为:

  • 用户注册行为;
  • 发布新微博或转发微博;
  • 发表对微博评论;
  • 关注新的用户。

non-standard  可以看到电子商务网站的Engagement的定义与微博大相径庭,这也是为什么说Engagement是一个非标准化的度量的原因,网站间无法比较各自Engagement的优劣。所以Engagement应该作为网站内部分析指标,只用于衡量网站本身用户的活跃度变化趋势。

  即使是一个网站的Engagement也有不同的定义方法,比如我也可以在微博的Engagement定义中加入“收藏微博”的动作,所以我的建议是对于Engagement的定义,一个网站应该在一开始就形成一个标准,如果网站的性质没有发生大的变化就不要轻易修改定义,不然即使是作为网站自身的评价指标,它也不能很好的发挥作用。

  需要注意的是,Engagement只是用户的一系列动作或行为(Actions),并非网站的产出结果(Outcomes)。只能用于衡量网站用户活动的频繁度,进而分析网站用户近期的活跃程度,而不能用于衡量网站的效益

基于Engagement Index的分析

  这里首先推荐一篇Eric T. Peterson在Web Analytics Demystified上的文章——How do you calculate engagement? ,里面提供了关于Engagement的十分全面和精彩的分析。

  分析最好结合实例,所以这里还是以我的博客为例,假如我定义我的博客的Engagement包括以下的行为:

  1. 用户发表评论;
  2. 收藏或分享我的文章;
  3. 订阅我的博客或关注我;
  4. 停留时间(Time on site)超过3分钟。

  首先涉及到数据获取的问题,其实通过点击流+事件追踪,大部分用户的行为还是可以跟踪得到的,这里就不再详细展开了。

  接下去就是如何衡量Engagement。衡量Engagement的指标叫做参与度指数(Engagement Index),既然我们已经定义好了Engagement,我们就可以通过一些方法计算Engagement Index。这里建议Visit(或者叫Session)为单位计算用户一次访问是否Engaged,而不是计算每个Visit中Engage的次数,因为我们无法对某些行为精确定量它的次数,也许发表评论数可以计算次数,但是停留时间的长短就无法用次数来衡量,所以这里统一只判断一个Visit是否发生了上述的任何一类行为,发生则认为这次访问为Engaged,我们可以用一段形象的代码来解释:

boolean isEngaged(Visit) {
         if ( comment || share || feed || follow || time_on_site>=3min )
                  return true;
         else
                  return false; }

  通过调用上面的“函数”我们可以获取到哪些Visits是Engaged Visits,就可以计算出总的Engaged Visits的数量就是Engagement Index的值。但是单纯的一个Engagement Index似乎没有对比的价值,我们可以通过计算跟网站总Visits的比值获取用户的参与率(Engagement Rate)

Engagement Rate = Engaged Visits / All Visits

  也可以用下图来对比Engaged Visits与总Visits的关系:

engaged-visits

  也可以分析定义Engagement中各类行为发生的比率:

engaged-visits-piechart

  这里需要注意的是这个饼图中Visits的总和并非上面计算得到的Engagement Index,因为一个Visit可能既发表了评论,也订阅的博客,那么这个Visit就会被重复记录到两种行为的比例中。根据Engagement进行细分来源的的分析上面推荐的Eric T. Peterson的文章中已经介绍的非常详细,有兴趣的朋友可以自己去看下。

  如果你觉得还意犹未竟,认为那些用户参与的行为并非同等重要的,或许那些订阅了博客的用户或者在博客发表了评论的用户应该显得更加活跃,那么可以给这些行为赋予不同的权重,Sidney的博客中有过相关的介绍——网站分析的最基本度量(8)——Engagement,如果你想让权重显得更加客观和精确,可以使用我之前介绍过的层次分析法(AHP)来计算每个行为的权重,那么Engagement Index就是相应的加权和(定义每个Engaged Visits的数量为Ei,每个Engagement行为的权重为Wi):

engagement-index-wtd

分析Engagement的意义

  有时我们需要细分,而有时我们需要将指标进行聚合来评价总体表现。所以建议不要试图使用次数去计算每个Visit的Engagement Index是多少,次数会由于网站设计上的变化(页面布局、交互按钮的设计等方面的变化)及行为实现的多样性(如果你要发条微博,那实现的途径太多了)而呈现不稳定状态,使用Visits来度量的Engagement更具可比性,最总我们只是进行汇总来衡量整个网站的Engagement情况。

  那么Engagement对于网站来说到底有什么用呢?这里有个最简单的例子,当一个电子商务网站发现近几天的订单量并无发生显著的变化,但是用户活跃度却大幅上升,原因是某款商品的质量存在问题,大量的用户向网站反馈和抱怨,这时如果网站通过分析Engagement监控着用户的活跃度,那么就可以迅速地发现并作出反应。其实这个例子也说明了对于某些网站来说Engagement越高,网站的绩效不一定越好,两者没有直接的联系。

  我们已经步入WEB2.0的时代,用户与网站间的交互更加频繁,网站需要更多活跃用户来增加自身的活力,用户的参与有效地提升了网站与用户之间的信息互通,为网站带来活力的同时也为网站创造着更多的信息,而且很多都是网站本身忽略的或者无法提供的有价值信息,而这些“用户智慧”的注入无疑可以为网站带来更多的关注。

优化网站内部搜索

——让用户更容易地找到需要的信息2

optimize-site-search  关于如何让用户更容易地找到需要的信息,上一篇文章中介绍了使用优化网站信息架构的方式,这篇文章主要介绍的是通过优化站内搜索的方式来帮助用户找到需要的信息。

  站内搜索已经成为目前几乎所有网站必不可少的一块功能,尤其在内容丰富的网站中,当用户有目的地寻找目标内容但又无法直接从首页或导航页中直接找到时,这时用户就会求助于站内搜索。

分析站内搜索的意义

  分析站内搜索最常见的就是分析用户的搜索短语或者关键词,通过关键词了解用户的需求,但是某些基于搜索后的用户操作和行为分析分析往往更有价值;站内搜索的意义主要包括以下几点:

细化用户需求

  用户在站内搜索的关键词往往与站外搜索有较大区别,比如用户可能会通过Google搜索“ThinkPad笔记本”,但当用户进入某个销售笔记本电脑的电子商务网站时,他们通过站内搜索的往往就是诸如“ThinkPad X200”,所以从站内搜索分析得到的关键词往往更能体现用户更细节层面的需求。

发现用户最关注的内容

  这是一种最直观的分析结果意义的体现,即通过查看站内搜索关键词的排名或者热门程度来了解用户在你的网站上最关注于哪些信息,往往这些排名靠前的关键词所涉及的内容就是网站的核心价值,因为用户期望看到更多的关于这些方面的内容。

寻找用户的潜在需求

  很明显,站内搜索并非每次都会有结果,用户的需求是多样的,而网站的内容是有限的。如果用户通过站内搜索未找到结果或者没有后续操作,或者一直翻页直到离开,那么就说明用户没有找到他们需要的信息。而这些没有结果或没有操作的关键词就变成了用户可能的潜在需求,也许你该考虑下是不是该提供一些相关的内容来充实你的网站。

站内搜索的分析度量

  那么为了体现以上的几个意义,应该如何分析站内搜索?也许站内搜索不仅是搜索短语或者关键词的排名,我们应该同时关注用户搜索行为的后续操作,也就是用户是不是真正通过站内搜索找到了他们需要的信息,所以在分析站内搜索的时候我们需要关注一些相关的度量。先看看Google Analytics上站内搜索的分析度量:

GA-Site-Search-Metrics

搜索访问次数(Visits with Search)

  这个很好理解,就是使用了站内搜索的访问数(Visits)。

唯一搜索总次数(Total Unique Searches)

  这个应该理解为每个Session搜索唯一关键词的总次数之和,同一个session中多次搜索同一个搜索关键词只会被记为一次,可以被用于根据搜索短语的细分度量。

结果页面浏览数/搜索次数(Results Pageviews/Search)

  也就是平均每次搜索后浏览搜索结果列表页面数。

搜索退出率(Search Exits)

  搜索退出,即搜索后立即退出了网站,搜索操作是用户该次浏览的最后一个操作;那么搜索退出率就是搜索退出访问数/总搜索访问数。

搜索改进率(Search Refinements)

  当用户完成一次搜索后又进行了另一次的搜索,我们就可以定义后一步搜索是改进搜索;那么搜索改进率就是改进搜索的次数/总的搜索次数。

搜索后平均停留时间(Time after Search)

  每次搜索后用户在网站的停留时间(如果一个访问有多次搜索,则前几次搜索都是每相邻两次搜索的间隔时间,最后一次搜索是从搜索到用户离开网站的时间)的总和/搜索访问数。

搜索后平均浏览页面数(Search Depth)

  每次搜索后用户浏览的页面数(如果一个访问有多次搜索,则前几次搜索都是每相邻两次搜索间浏览的页面数,最后一次搜索是从搜索到用户离开网站前浏览的页面数)的总和/搜索访问数。

  站内搜索的分析度量可能还有很多,还需要关注搜索关键短语的排名情况(Top Key Phrases),或者搜索结果列表的页面覆盖图(search results page overlay),这个可以更好地帮你了解搜索关键词在结果页面的曝光和点击情况。

评估站内搜索的效率

  有了上述的度量,我们就可以分析和评价站内搜索的效率。

站内搜索利用率

  这个比较容易评价,只要将用到搜索的访问数/网站的总访问数,就是站内搜索的利用率。

站内搜索的有效性

  这是对站内搜索来说比较重要的一个分析,即站内搜索到底有没有很好地实现它的功能。主要通过搜索退出率、搜索改进率和平均浏览搜索结果页面数这3个度量来评价,退出率和改进率越低,同时平均浏览搜索结果页面数越少,那么说明站内搜索越有效,效率越高。

站内搜索的效果

  主要通过搜索后平均停留时间和平均浏览页面数来评价站内搜索的效果,但这些因素往往不是站内搜索功能呢个本身所能控制的,站内搜索只是帮助用户更好地匹配搜索关键词跟网站内容的关系,帮助用户找到相关的内容,至于之后用户对内容的兴趣如何还得看网站本身的内容质量。

站内搜索的价值

  当评估价值时,不得不提到的几个网站分析度量:转化率(Conversion Rate), 任务完成度(Task Completion), 目标达到率(Reach Object)。

  对于电子商务网站而言,这个评价较为简单,因为电子商务网站的目标比较单一——利润,所以只要分析用户每次搜索的订单转化率、交易完成率,及每次搜索所能获取的收益等就可以用于评估内部搜索对于网站的价值,当然你还能根据搜索的关键词进行细分,看看哪些关键词为你带来的最大的收益。

  如果网站没有明确而单一的目标,那么评价内部搜索的价值就会有些困难,但是如果你在Google Analytics上设置的网站目标,那么问题就会简单得多,Google Analytics会根据你设置的目标帮你计算出每次搜索到达目标的次数,目标的转化率及平均每次搜索的目标价值(如果你为每个目标设置了价值指数的话)。

GA-Site-Search-Goal

优化站内搜索

  通过分析站内搜索,我们可以根据以上各度量的结果对网站的搜索功能进行针对性的优化。

优化结果排序

  当网站的平均浏览搜索结果页面数偏高时,我们需要关注下是不是站内搜索的结果排序存在问题。我们可以看到很多网站的搜索结果提供了排序选择功能,这里看一下Wordpress网站的插件搜索页面:

Wordpress-plugins-search

  这里提供了5中搜索结果排序方式可供选择:相关性、最高评分、最新发布、最近更新和最热门插件,但发现即使提供了这么多种排序方式,我有时还是搜索不到自己想要的插件,也许我会想要对结果进行相关性和最高评分的组合排序。

  但优化结果排序最关键的还是对默认排序的优化,用户在点击搜索按钮之后都会愿意看到结果列表中显示的是最符合搜索预期的内容,也就是他最感兴趣的内容,那么对于他找到自己想要的信息当然是最有力的。所以,尽量减少用户的多余操作(自己选择合适的排序方式),一开始就帮用户做到最好。

优化信息设计

  信息设计是指对信息的分类、整理和罗列的过程,对于一个内容丰富、分类繁多的网站而言,提供系统清晰的信息设计,可以让信息的检索事半功倍。

  我们分析搜索改进度量的时候,如果发现用户的搜索改进一般都是在区分信息的分类或者改进关键词的细节表述,那么这时候可以考虑为用户提供搜索结果筛选的功能,如太平洋上面提供了极为丰富的信息筛选功能:

pconline-search

同义词与结果推荐

  用户在输入搜索关键词的时候有时会拼写错误,或者用户可能输入的是模糊定义的短语,这些可以直接分析站内搜索关键词搜索改进等来确认你的网站用户是不是普遍存在这类行为,所以我们需要为用户提供一些关键词的改进建议及结果的推荐,下面是我在淘宝中输入“诺记亚”进行搜索时它为我提供的搜索建议:

taobao-nokia-search

  所以,站内搜索可以说是一个比较复杂的功能,尤其是想把它优化的更好的时候,所以很多大的公司有专门的团队来研究和改进站内搜索功能。建议在优化站内搜索的时候考虑使用网站分析的方法让优化的工作具有更加明确的目标和方面,同时通过比较优化前后网站分析中相应的度量,可以为优化的效果提供有力的量化参考指标。

网站页面度量与细分

page-metrics-and-segment 我们在使用一些网站分析工具的时候会发现一般报表会被分成三大模块:用户访问内容浏览流量来源。每个分类都由各种分析度量组成了各类的展示报表,这里先介绍一下内容浏览模块(主要指的是网站的页面浏览)下的各种度量,以及基于这些度量我们可以实现哪些细分。

页面的基本度量

关于一些常见的网站分析度量的定义可以参考我之前的文章——网站分析的基本度量,下面罗列的是一些页面的度量:

页面浏览次数(Pageviews)

页面被打开或请求的次数。

唯一页面浏览次数(Unique Pageviews)

这个是Google Analytics上面使用的一个度量,主要是避免页面的重复加载和刷新导致Pageviews虚高的情况,所以在同一个Visit当中重复打开同一个页面,该页面的Unique Pageviews始终只被记为1次。

访问次数(Visits)

页面的被访问次数,如果按照独立页面来计算每个页面的Visits,其实结果与上面的Unique Pageviews是一致的,所以很多网站能分析工具里面没有Unique Pageviews,而直接用Visits来衡量页面的唯一浏览量。但需要注意的是Visits也常被用作整个网站或者某些内容分类汇总的度量,在这种情况下,网站的总Visits和总Unique Pageviews是不一致的,比如Visit A访问了a-b-a-c4个页面,而Visit B只访问了a-b,那么对于a页面而言,Pageviews是3,Unique Pageviews是2,Visits也是2,但对于这个网站而言,Unique Pageviews是5,而Visits只有2个。

唯一访问用户数(Unique Visitors)

这个应该容易理解,就是进入这个页面的不同IP或者Cookie的个数。

页面停留时间(Time on Page)

用户浏览一个页面时在该页面逗留的时间,在度量页面时,更多的是根据用户取平均值,即页面平均停留时间(Avg. Time on Page)=该页面被浏览的停留时间总和/该页面被浏览次数(GA里面排除了从该页面离开的Pageviews,即Exits)。

直接跳出访问数(Bounces)

也许你可以看到过很多关于这个定义的解释了,一般的网站分析工具,都会将从该页面进入网站并直接离开的访问称为Bounce。而这个度量更多的是以Bounce Rate的形式出现,即从该页面直接跳出的访问数/从该页面进入的访问数。

进入和离开次数(Entrances and Exits)

这个就顾名思义了,从该页面进入、离开的访问数,而一般会以Enter Rate和Exit Rate的形式出现,从该页面进入、离开的访问数/该页面的总访问数。

page-metrics

还有一些其它的页面度量,如新访问用户(New Visits)目标价值(Goal Value)等。

需要关注的页面度量

我们会注意到一般的网站分析工具的结果展现会有许多不同的报表,并且各类报表中又会有重复或不重复的各类度量,当然每张报表可能都会有其不同的展示角度并提供不同的数据分析的用途。但也许我们日常无法全面地关注所有度量,一般都会根据网站的特点着重的关注某些跟网站运营状态息息相关的度量。Google Analytics内容模块的几张报表上一般会展现:

Pageviews、Unique Pageviews、Avg. Time on Page、Bounce Rate、%Exit(离开百分比)及$Index(目标价值指数)

下面列出的是我个人认为对于评价网站页面比较重要的几个度量,或者说是个人比较喜欢和关注的几个度量:

1. 访问量(Visits)或者唯一页面浏览次数(Unique Pageviews)

上面已经对这两个度量进行了介绍,它们对于单个页面而言计算得到的数值是一样的,只会在计算汇总的时候存在差异。那么为什么选择访问量,而不是页面浏览数或者唯一用户数呢?我的理解是在同一个Visit中,如果用户多次浏览同一页面,那么很有可能使用户喜欢刷新或重载页面,或者用户习惯于倒退操作而重复穿梭于你的网站,所以这些重复浏览对于评价页面的优劣比较没有意义;而如果是不同的Visit,即使是同一用户浏览了同一页面,那么我们更多地可以理解为用户对于上次看到的内容意犹未尽,想再仔细研究个究竟,这种页面浏览对于评价一个页面是有效的,所以我更偏向于选择页面的访问量Visits。

2. 崩失率(Bounce Rate)

好吧,无论你怎么称呼它,都不得不承认它的魅力十足,网站有很多相关的文章,在我的博客之前也写过一篇——关于Bounce Rate定义的疑问

对于它的价值我是这样理解的,用户会直接跳出,无非3种情况:1.误闯;2.内容过于乏味;3.进入的页面也是网站的出口。所以在关注Bounce Rate的时候有必要进行特殊情况特殊分析,比如网站首页的Bounce相对比较高是可以理解的,因为作为网站最前端的大门,可能会有相当一部分用户误闯了进来;而网站的底层内容细节页面的Bounce Rate比较高有可能用户直接进入该页面,找到了需要的信息并离开了,也就是上面所说的第3种情况。而排除这两种特殊的访问,如果其他页面的Bounce Rate偏高,那么说明该页面有问题了。

3. 页面平均停留时间(Avg. Time on Page)

这个应该比较容易理解,用户需要获取你页面中的某些信息就会需要一定的浏览时间,当然根据页面提供的内容的长短和复杂度,平均停留时间也会存在一定的差异,但我们不需要关注这类情况,我们只需要揪出那些平均停留时间短到用户几乎无法对页面内容作出有效反应就已经离开了的那些页面,毫无疑问这些页面是有问题的。

页面细分

基于上面介绍的这些度量,我们可以选择任何的单个或者多个来对页面进行细分,我想到的有以下结果细分的方法:

基于Pageviews、Unique Pageviews、UniqueVisitors区分热门页面和冷门页面;

基于Avg. Time on Page区分有趣的内容和乏味的内容;

基于Bounce Rate及下一浏览页面的多样性来区分病态页面和枢纽页面;

基于Enter Rate和Exit Rate来识别网站的入口和出口页面;

……

当然,你还可以想到很多种其他细分的方法,只要细分的结果对你的网站而言是有价值的。这里举个简单的用多个度量组合进行细分的例子,选取的度量就是上面3个我认为值得关注的页面度量。既然涉及3个度量,大部分的平面坐标系的图表无法很好的展示,也许你也跟我一样想到了一类图表——气泡图,下面是一个简单展示:

page-segment-xlbubble

横坐标标识访问量,纵坐标标识Bounce Rate,气泡的半径r标识页面平均停留时间,我们可以将页面细分成4类,分别对应4个象限,其中:

第一象限:较高的访问量和Bounce Rate,所以页面比较热门但并不能吸引所有进入的用户,也许你的网站的首页或者Landing Page正是处于这一象限,你可能需要优化下SEO的关键词或者购买相关性更高的广告或者关键词,也可以优化下你的首页和Landing Page,让它们更具吸引力以留住用户;

第二象限:如果你的网站有很多页面处于这个象限,那么你的网站正处在一个糟糕的状况下,而往往这一象限内的气泡也会比较小;

第三象限:其实在这一象限的某些页面是可以通过提升曝光率来提升它们的访问量,因为从Bounce Rate来看它们并不缺少吸引力;当然,如果某些内容只针对特定人群,而其他人群对它们的兴趣不高,那么处于第三象限也是一个正常的状况;

第四象限:这些页面集中了你的网站的一些黄金内容,看看它们到底在哪些方面吸引了这么多的用户,让其他页面也学习一下它们。

也许你还能想到其它更加有趣的页面细分方法,欢迎与我分享交流。

网站分析的基本度量

metrics-of-web-analytics  我们在使用各种网站分析工具的时候,会看到很多不同的度量指标,可能不同的工具会有不同的命名和定义,这里列举一些常见的度量,简单说明一下它们是如何计算得到的。

  下面的度量都是来源于网站点击流数据,但根据点击流数据获取方式的不同(来源于网站原始日志文件或通过beacons和JavaScript的方式获取的网站日志,如同样免费的AWStats和Google Analytics)得到的度量也会有差异,某些度量只有通过特定的方式才能获得。关于网站日志的介绍,请参考这篇文章——WEB日志格式

Hits

  来源于网站原始日志,即用户浏览网站时发起的请求数,包括页面请求,也包括图片、CSS、Flash等,所以一般打开一个页面会发送多个请求,根据网页设计的差异Hits会是PV(Page Views,下面会有介绍)的N倍,比如我的博客的AWStats统计中Hits数一般是PV的3-5倍。

Page Views

  即PV,页面浏览数,页面被打开(请求)的次数,是网站分析中最常见的度量。注意Ajax架构或Flash下同一URL下可以浏览多个页面,进行多个操作,这些都无法在PV中体现。还需要注意Unique Page的定义,当一个页面被刷新多次时,其实用户浏览的始终是同一页面,所以这时的Unique Page Views还是1。

Visits

  访问量,也是常见度量之一,用于衡量用户的一次访问(从打开进入网站到离开网站,其中可能浏览了多个页面(PV))的数量,也就是网站Session的个数(关于Session,可以参考我的这篇文章——Session和Cookie的辨析)。

Unique Visitors

  UV,被用于标识访问网站的唯一用户数,关于如何识别用户,请参考这篇文章——网站用户的识别。注意一个Unique Visitors可能会有多个Visits。

Time on Page

  页面停留时间,即用户从打开页面到离开页面的时间间隔,这个度量一般只有当用户在你的网站中点击了下一个页面时才会有记录,否则是0,所以所有Visits的最后一个页面的Time on Page一般都为0,具体参见WEB日志的作用和缺陷中关于停留时间的说明。所以我们在计算页面平均停留时间(Avg. on Page)的时候一般会过滤Time on Page=0的记录。

Time on site

  即每个Visits的停留时间,一个Session的开始到结束。跟Time on Page同样需要注意其计算中存在的误差,取平均的时候注意过滤长度为1的session。

Bandwidth

  这个度量也一般只能从原始日志中获取,Bandwidth是AWStats中的命名,统计网站的流量,需要将所有请求的传输字节数相加得到结果。一般用于衡量网站的流量情况,服务器IO负荷,及某些限制了月流量最大值的虚拟主机流量使用情况。

Bounce Rate and Conversion Rate

  关于Bounce Rate ,有一句很形象的描述——“I came, I puked, I left.” 即进入你的网站,什么事都没干就直接离开了。关于Bounce Rate的注意点,请参考这篇文章——关于Bounce Rate定义的疑问

  如果一个访问没有Bounce,那么我们就可以跟踪其访问足迹统计Conversion Rate,即从上一步进入的访问率(Current Visits/ Previous Visits)。转化率对于某些网站的关键流程的优化可以起到重要作用,比如电子商务网站的购买流程等。

Entrances and Exit Rate

  Entrances一般用户衡量网站首页或Landing Page的进入情况,指First Page of Visits。Exit Rate可以作为每个页面的基本度量,衡量从该页面离开的比率,即该页面是整个Visits的最后一个页面。

Sources and Search Key Phrase

  来源于referrers的统计,Sources即网站的来源(搜索引擎、广告或其它),用于广告投放效果分析、SEM等。

  Search Key Phrase是基于来源是搜索引擎referrer的解析,统计来源的搜索关键词,Avinash Kaushik建议我们使用Key Phrase而非KeyWords。有助于SEO和发现用户需求。

Engagement

  参与度对于不同网站来说定义不一,可以是电子商务网站的购买、反馈行为,也可以是论坛的发帖、跟帖行为,还有视频网站的观看视频、游戏网站的线上游戏等。每个访问的参与度可以用Engagement Rate = Engagement Index / visits来计算,即参与度 = 参与标识/访问量。

Destinations

  即点击站外链接,一般通过JS代码来监控站外链接的点击,对于一些广告、宣传、推荐等点击情况跟踪比较有用,可以衡量网站对资源推广的能力和价值。

  上面列举的都是网站分析中一些比较基本的指标和度量,我们在网站分析过程中可以基于这些度量通过求和、比例、平均等方式获得更多我们希望得到的数据,进而为我们的分析结果提供更充分的依据。

关于Bounce Rate定义的疑问

bounce  Bounce Rate是网站分析中一个比较有意思的度量,也是Avinash Kaushik个人比较喜欢的一个度量,目前网上对它的讨论也比较多。目前用的比较多的是“跳出率”这个翻译,个人比较喜欢Sidney的翻译——崩失率,音译和意译兼备。原本一直以为Bounce Rate的定义就是只浏览了单个页面的访问量占总访问量比率,无论是Google Analytics的“Single PV Visits/Total Visits”还是Omniture的“Single Page Visits/Total Visits”,计算的方法都较为类似。但最近在翻Avinash Kaushik的《Web Analytics》时,发现Avinash Kaushik对Bounce Rate的定义推荐使用Time on Site,即访问的停留时间小于10秒或5秒的访问量所占的比例,不知道是不是因为这本书出版已经有点时间了的关系,不知道《Web Analytics 2.0》中对Bounce Rate的定义是怎么样的。

  但是无论用Visits的页面数还是Time on site来定义Bounce Rate,其实都存在陷阱,都会引起Bounce Rate过高。

Bounce Rate中的陷阱

  先来说说为什么Avinash Kaushik推荐使用Time on Site,据《Web Analytics》中Bounce Rate相关内容章节中的介绍,Avinash Kaushik是根据实践的经验得出用户在网站的停留时间小于10秒时,一般无法完成一次有效的交互(Engagement)。当然根据网站类型的不同,Bounce的Time on Site的可以在5-10秒这个区间里面选择一个合适的值。

  之所以使用停留时间,而不用浏览的页面数,是因为用单页面的访问来定义Bounce是不准确的。就像基于Wordpress的博客,可能很多用户只需要访问首页就可以浏览最新发布的文章,也就是说虽然只访问了一个页面但达到了期望的目的——浏览该博客最近发布的文章,基于RSS的订阅也是这种情况,那么我们就不能认为这类访问是Bounce的。再举个更直观的例子,Twitter上包括查看最近tweets或发布tweet,其实都是在同一URL——twitter.com下完成的,如果单纯使用单页面访问来定义Bounce Rate,估计Twitter.com的Bounce Rate会达到98%以上,这样就无法真正体现Bounce Rate指标的意义了。

  既然用Page或PV=1来衡量Bounce存在以上的弊端,那么为什么这么多的网站分析工具还是使用这一标准呢?首先我们必须清楚Avinash Kaushik推荐使用Time on Site是基于一定的前提的,即网站的停留时间可以进行准确的测量,而现在停留时间的普遍计算方法是存在缺陷的,可以参考我之前的文章——WEB日志的作用和缺陷中对停留时间缺陷的说明。当然也有一些特殊的方法是可以获得用户离开网站的时间点的,如用户点击链接时的页面重定向,关闭浏览器时弹出隐藏窗口等,这些技术因为其实现方式在某些程度上会影响用户的使用,或让用户感觉不适,被认为是不雅的手段,所以一般不建议使用。

pitfall

  所以一般我们是很难得到用户真正离开网站的时间点的,当前一些流行的分析工具也是如此,这就会导致Time on Site无法得到准确的测量,那结果就是所有单页面的Visits的Time on Site都是0,而那些0<Time on Site<10s的Visits其实只是那些从进入页面到离开页面停留时间小于10秒的访问,而不是真正的访问停留时间就一定小于10秒(我们无法知道他在最后一个页面的停留时间)。这种情况下的Time on Site将会把我们引入一个更深的陷阱,所以目前的大部分分析工具基于其本身获取数据的能力选择“单个页面的访问量占总访问量比率”作为Bounce Rate也是可以理解的,或者更像是一个无奈之举。

  所以,对于Bounce Rate其实可以保持谨慎的乐观,也许你的网站并没有分析数据上显示的这么糟。那么Bounce Rate这个有趣的度量有没有更加有效的定义方法呢?我目前还没有找到,欢迎大家回复讨论。