饭否出来的流量初步研究

今晨看网站流量分析报告,发现7月2号流量暴涨。经仔细研究,原来是冉云飞在饭否上推荐了我写的一篇文章《国内的网站要挂的牌子真不少》。

冉云飞
冉云飞的推荐

这种和性八杆子打不着的文章,标题起的性感一点,立刻就吸引来不少的访问。7月2号开始的两天之内总共过来了339个访问,关注冉云飞饭否的人有6735人,也就是说5.03%冉云飞饭否的关注者点击了链接。 访问来源URL分布如下:

fanfou

有75个访问时直接来自冉云飞在饭否上的主页,占了从饭否过来的访问量的22.12%, 这其中直接从冉云飞的第一页过来的流量有64, 占直接来自冉云飞主页流量的85.3%, 从冉云飞的第二页过来有9个,占12%, 第三页2个,占2.7%。

剩下的访问, 来自用户自己首页的有260个,另有4个来自其他页面。其中用户首页第一页过来的有142个,占总访问数的41.9%, 占从用户首页过来流量的54.6%。 第二页47个,占用户首页过来流量的18.1%, 第三页22个,占8.5%, 第四页14个,占5.4%, 第五页9个,占3.5%,第六页7个,占2.7%。

从报表上看,居然有个人一直翻到了第33页。冉云飞7月2号在饭否发布了37条信息,每页20条,他这一天发的就有1.85页。

本来还根据上面的数据做了些大胆的猜想,去推算饭否每个人每天的平均信息数,一个信息发出后被看到的概率,甚至还想到微博客未来等等,但想来想去缺乏依据,不是太能站住脚,给删掉了。有兴趣做这种分析的欢迎私下讨论。

网站流量分析在中国的曙光

从开始做共享软件就做网站流量分析,但真正重视是从2002年开始的,狂热的时候每天分析几十次日志,变换着过滤器来回分析每个数据。当时还没有Google Analytics,免费的page tagging统计网站没有好用的,只好用日志分析软件, 当时几乎把能找到的日志分析软件用了个遍,感觉现有工具都有些不能满足自己的需求,就一怒之下做了自己的日志分析工具。当时国外已经很重视web analytics,常上几个国外的日志分析论坛向老外们学习,但自己英文太烂,上去只有学习的份,和别人交流不来。很想在国内找人交流,但遇到的国内站长的web analytics水平仅限于pv,uv之类,他们更关心买卖流量,怎么卖广告,怎么做插件之类。和他们聊天,双方都感觉是在对牛弹琴,反倒是共享软件作者们对网站流量分析更重视些。

从对国内网站流量分析水平大失所望后,一直没怎么再关注国内这方面的发展,当时也缺乏这方面的消息来源。去年年底无意中网上认识了Sidney Song,看到了他的blog – 网站流量分析在中国,并参加了他发起的China WAW活动, 才发现国内的网站流量分析水平已经得到了长足的发展。而这其中,Sidney Song发起的China WAW活动则为大家提供了一个非常好的交流平台。每个月的第一个周三,大家聚在一起听听讲座,分享一下经验,了解最新的分析技术,认识圈内的朋友们,让我每次参加都感觉所得非浅。 而且China WAW也成了国内有关网站流量分析的消息发布平台, Omniture今天下午在北京组织了一个Online Business Optimization workshop,这个消息就是通过China WAW形成的圈子发布的,今天去听了听,有点大开眼界的感觉。

参加的每次China WAW活动坐满了人,不少人都要站着听。 可能比起微软的PDC之类的大会要显得规模小了太多,但感受到的气氛却比参加过的PDC之类更热烈,waw的参会者身上能感受到强烈的求知欲。waw中不只是讲座能学到东西,从大家的提问中也能学到很多。参加了几次waw后,让我一扫对国内网站流量分析水平的错误认识,让我看到了网站流量分析在中国的曙光。

附:关于china waw活动的相关消息都发布在网站流量分析在中国

另:大家如果在活动中看到剃着秃头的矮胖子那十有八九就是我。

2007年全球网站统计

VisiStat是一个在线网站统计服务提供商,前一阵根据自己统计的网站发布了一个2007全球网站统计报告。经常有人问:“网页bounce rate平均是多少多少,算不算正常”,或者“访客的平均停留时间是多少多少,算长还是算短”。以后这种问题就不用问人了,可以直接参照这个报告,看和全球网站的平均值有啥差异。

报告其实很简单,只有一个页面。给我印象很深的是下面两个统计图:

image

从图上看Firefox在2007年已经占据全球浏览器26.1%的市场。分析自己站点的日志得出的值是24.85% ,在3年前这个值是5.09%。3年内成长了488%,年均成长169%,发展速度实在太惊人了。

从操作系统占有率统计上来看,Linux都没能单列出来,被归到Other里,而Other连0.6%都不到。Linux桌面喊了那么多年,可还是这个样子,应该说依然任重道远呢,还是可以宣判死刑了呢?也可能随着web应用的发展,大部分应用都搬到了浏览器里,操作系统之争永远不会再有那么大意义了吧。

文中的图截自:http://www.visistat.com/web-use-trends-2007.php

九个指标分析网络广告的效果

有人说过 :“我的广告费中有一半是浪费掉的…….问题是我不知道浪费的是哪一半”。这种情况在传统广告中可能是普遍现象,因为传统的报纸,电视广告,效果确实比较难以统计。但网络广告不同,访问者的浏览行为可以被追踪统计,可就此分析出网络广告的效果。但站流量统计报里那么多参数和报表,到底应该看什么才能分析出广告的效果呢?

为了方便大家分析,下面从报表里挑出网络广告效果分析中最常用的九个指标介绍给大家。

一.点击(Hits)

很多广告系统会提供点击数据。顾名思义,点击就是反映访问者点击了多少次广告。

为了统计方便,可以把广告链接到一个单独的页面,这样只用看这个页面在页面排行报表中的页面浏览就能知道点击数。如果是不方便链接到一个单独页面,比如为了seo,在textlink广告中往往直接链接到首页,这时可以查看来源URL报表,看从放置广告的URL过来的访问就能知道广告的流量。

二.访问(Visits)

如果访问者多次点击广告,并且相邻两次点击的间隔不超过半小时,那都会被统计为一次访问。投放网络广告就是为了吸引访问者,当访问者点击了一次广告后,多余的点击对广告投放者来说是缺乏价值的。访问指标的统计有助于过滤这种多余的点击。

这个指标可在页面排行报表来源URL报表中获得。

三.独立访问者(Unique Visitors)

统计有多少人点击了广告,而不是点击或访问多少次。这个指标可以用IP或cookie来统计,用IP得到的就是独立IP数。统计广告的独立访问者,需要用访问过滤器(Visit Filter),过滤掉其他流量,专门对来自广告的流量进行统计。

四.进入页面的跳出率(Bounce rate of landing page)

广告所链接的目标网站页面就是这个广告的进入页面,也称登录页面,英文叫entry page或landing page. 如果访问者访问了进入页面后没有再访问下一个页面而是直接退出了,这称之为跳出(Bounced)。跳出次数占这个广告的访问次数的比率,就是跳出率(Bounce rate)。跳出率在跳出页面报表来源网站报表中都能看到,如果是Google Adwords广告,还能在搜索短语报表中看到每个搜索短语的跳出率。

跳出率越低越好,高的话表示存在问题,可能的问题如下:

  • 广告的投放对象有问题
    假设目标网站主要是卖婴儿用品的,如果在Google Adwords购买“历史”这个关键词的广告,就属于驴唇不对马嘴。搜索“历史”的访问者很可能对婴儿用品缺乏兴趣。
  • 广告的内容有问题
    广告中没有说清楚自己干什么,或者为了吸引访问,故意误导访问者,诱使他们点击。当他们访问到目标网站时,发现不是他们需要的,就会离开。
  • 进入页面的设计有问题
    可能页面表达的信息不够清楚,购买链接没有放在显眼的位置,可能页面不够美观,等等很多种原因都可能造成弹出率过高,我们需要具体网页具体分析。进入页面的设计与优化是网站设计中非常重要的一部分,往往进入页面的好坏就决定了一个访问者对这个网站先入为主的整体印象,所以一定要特别重视进入页面的设计。

使用访问过滤器(Visit filter),能单独分析广告访问者的浏览特征,其中要特别关注的两点:

五.访问路径(Visit path)

访问路径就是用户访问页面的次序,在访问路径报表能看到统计结果。研究访问路径时,要重点看访问者是否在按照你预先设想的流程访问网页,如果不是,那要看是为什么。访问者没有按照预想访问你的页面,可能是因为网站的设计问题,但也可能反映了访问者真正关心的和你的预想是不同的。

六.退出页面(Exit page)

很多访问者没有到最后付款或注册就退出了,知道他们是在什么页面退出的很重要。访问者的退出位置在退出页面报表可以看到,报表中排位靠前的网页要仔细研究,看那些网页的设计是否有问题,还要看整个的流程设计是否有问题。

后面三个指标是网站流量分析报告里没有的,需要自己算。

七.访问者成本

用总的广告费用除以独立访问者数量,从而得出每个访问者的成本。这个指标很重要,经常是用来比较不同广告优劣的重要指标。

八.转换率(Conversation rate)

转换率就是从网络广告过来的访问者中最终成为付款客户的比率。这个指标主要针对以销售为目的的网站,如果你的网站并不是以销售为目的,可以变通一下,比如以访问者在你的网站注册帐号的比率为转换率,即注册率。

如果你的网站是线上销售,转换率是最好统计的。只要统计从广告过来的访问者中有多少人访问到了最后的交易完成页面即可(如果是注册率那就统计最后的注册完成页面)。如果是线下销售的,那就要通过电话或其他方式来调查客户是从什么渠道来的。

九.广告费用的投入产出比

以销售为目的的网站,一旦知道了转换率,就能计算出来了广告所产生的销售额,用这个销售额除以广告费用,就是广告的投入产出比。如果这个比值大于100%,那就表示这个广告是赚的。

对于在线销售网站来说,这个指标是最重要的指标,其他指标再好也没用,它是决定性的。并不以销售为目标的网站是没有这个指标的,评估最终的效果就要用其他指标来综合评估。

上面列出的9个指标是众多指标中比较常用的几个,大家在具体应用过程中,可以结合自己网站的特点,参考其他的指标。比如我在分析自己投放的网络广告效果时,还看页面平均停留时间和每个访问平均页面浏览这两个指标。因为这两个指标针对不同的网站和网页,往往有不同的含义,不能算是通用指标,所以就没推荐给大家。对一些广告投放量很大的网站,流量分析报告中的指标可能还不能满足需要,这就要定义一些针对性的指标,自己开发统计工具去分析了。

文中用到的报表是用Nihuo Web Log Analyzer( http://www.loganalyzer.net/ ) 分析生成的。

页面停留时间为什么为0

最近遇到好几个人在问:为什么自己网站的流量分析报表中很多页面的停留时间为0?有些人据此怀疑使用的统计系统有问题,更多人没有理解这个统计数字背后所反映出的问题。在这里给统一解答一下这个问题。

解答这个问题首先要从页面停留时间的计算方法说起。下面我们以Google AnalyticNihuo Web Log Analyzer(http://www.loganalyzer.net) 为例,介绍他们页面停留时间的计算方法。

Nihuo Web Log Analyzer当发现一个访问者进入一个网站访问了第一个页面时,会记录下他的访问时间。等到他访问第二个页面时,记录下第二个时间,用第二个时间和第一个时间的差值作为这个访问者在第一个页面的停留时间。 以此类推,每个页面的停留时间就是用户访问下个页面时的时间减去他访问这个页面时的时间,并加入到这个页面总的停留时间中。 这个方法在诸多统计方法里,是最简单的,也比较合理,并且计算量最小。 但有个问题,就是用户访问的最后一个页面, 它没有下一个页面,那么怎么计算它的停留时间呢? 在Nihuo Web Log Analyzer中,用户访问的最后一个页面的停留时间被认为是0。

Google Analytic的报表来看,它采用的统计方法应该是和上面提到的方法一模一样的。

由此可见,当页面的停留时间为0时,表明这个页面每次都是用户访问的最后一个页面,也就是说访问者到这个页面后都退出了对网站的访问。 这有三个可能:

  1. 第一个可能:这个页面是某个流程的最后一个页面,比如确认购买页面,用户到了这个页面就没必要继续访问了
  2. 另一个可能是这个页面的设计有问题,访问者到了这个页面后就没有兴趣继续访问下去,或页面设计错误,用户不能再继续访问下去
  3. 当使用的统计系统是Google Analytic时,那么还有个可能,就是在这个页面链接的几个页面都没有加入Google Analytic代码,造成系统追踪不到用户后续的访问。

当发现自己的流量分析报表中有些页面有着较大访问量,但停留时间为0时,不妨对照上面的三个可能检查一下,如果存在后两个问题就需要及时修改网站页面了。

网站流量分析行业的薪资水平

前一阵webanalyticsdemystified.com做了一个网站流量分析行业工资水平的调查,调查结果昨天发布了。调查主要是在美国,调查出的平均年薪是$86,883(美元,税前,下同)。低于$50,000的是18%, 还有10%是高于$150,000。 有5年以上经验的,平均年薪是$102,544。 从2005年2月3日到2007年9月27日,发布在indeed.com上要求具有网站流量分析技能的招聘广告已经有了近275%的增长 (在51job.com则一个都没搜索到)。

调查报告在 Web Analytics Salaries 2007: Insights and Observations (PDF 格式)

调查的数据可以在 Web Analytics Salary Data 查询。

等合适的时候也做做国内的网站流量分析行业的薪资水平调查。

如何用Google Analytics跟踪出站点击

有时候我们需要知道用户是点击了站点中哪个外部链接离开了你的站点。比如当你的购买链接是指向第三方的收费代理,这时候就很有必要知道有多少用户是点击了购买链接离开了你的站点. 单靠平常的在线统计日志分析(Log Analysis)是不能跟踪的,因为很多时候外部站点不允许你插入统计代码,更不会给你看日志文件。这时候就需要我们动手加点东西来实现对出站点击的跟踪。

以前追踪出站点击的方法主要就是不直接链接到外部站点,而是链接到一个本地文件上,把用户的出站点击经这个文件中转一下。这样通过日志分析(Log Analysis)统计中转文件的访问,或直接由这个中转文件把统计结果写入数据库, 以此来实现对出站点击的跟踪。

那么用Google Analytics如何跟踪出站点击呢?有人要说可以在中转文件中插入Google Analytics的代码,实际上有个更简单的办法。 在普通网页统计插入的Google Analytics代码中,最后要调用不带参数的urchinTracker() 函数。其实这个函数是可以带参数的。查看http://www.google-analytics.com/urchin.js这个文件,你会发现这个参数名是page,再向下多看看你就很容易发现,这个page参数就是统计页面的url。 利用这个函数就可以实现对出站点击的追踪了,将每个出站链接加入如下代码:

<a href=”http://www.waibu.com” onClick=”javascript:urchinTracker(/outgoing/1);”>链接</a>

这个链接中给出的参数’/outgoing/1‘ 是可以根据自己需要定制的,并不是站点中必须要有的文件。urchinTracker 这个函数你只要给他什么参数他就统计什么,实际是否存在并不关心。 加入这段代码后,一旦用户点击,Google Analytics就会记录为一个对’/outgoing/1‘的访问。这样你只用每天看Top Content(最常见内容)报表中’/outgoing/1‘ 的访问数字就能知道点击这个外部链接的访问有多少了。 你还可以把’/outgoing/1‘ 定义为一个目标(Goal),在Google Analytics对目标的转化率Conversion Rate(转化率),Goal Path(目标访问路径)等进行分析。

注:

1.这种跟踪方法在不支持或禁止javascript的客户端是无效的
2.这种跟踪方法的前提是你必须在网页中安了Google Analytics统计代码

在线统计 vs 日志分析 ( Page Tagging vs Log Analysis )

网站流量分析(Web Analytics)的工具分为两大类, 一类是以Google Analytics为代表的在线统计系统, 英文称Page tagging。国内的武林榜,51yes,国外的Hitbox, Nielsen NetRatings, OneStat 都属于此类。这一类的重要特点是,分析时需要在里页面嵌入代码,这也是Page Tagging这个词的由来。 另一类就是日志分析,英文称Log Analysis, 特指web服务器的日志分析就是Web Log AnalysisNihuo Web Log Analyzer, awstats, analog 都属此类,这一类的特点是不用在页面嵌入代码,而是靠分析web 服务器产生的日志来生成统计报表。

经常有人问起这两种方法哪个更好,解释次数多了,自己都烦了,现在在这里统一回答一下。涉及到两类产品的比较时,就分别以Google Analytics( http://www.google.com/analytics/ )和Nihuo Web Log Analyzer( http://www.loganalyzer.net/ )为例了。

网站流量分析机制的差异

在线网站流量统计(Page tagging)的实现机制

Google Analytics需要在所有需要统计的页面中插入如下的Java Script统计代码,只有插入了代码的页面才能被统计,


这段Java script做的工作如下:

  • 判断用户是不是第一次访问这个网站。它是通过cookie来判断, 如果特定Cookie不存在它就会认为是新用户,它会种一个用户标识的cookie,并在cookie中记录下用户第一次访问时的Refrrer,即来源网站。 如果是从搜索引擎过来的,它还会分离出用户搜索用的关键词并记录下来
  • 判断用户是不是新的访问(New Visit),并获取当前浏览的页面URL,标题,Referrer(来源网址),客户端信息(如屏幕分辨率,语言,flash版本,是否支持java )
  • 创建一个image对象,调用http://www.google-analytics.com/__utm.gif,把上面所有的信息作为图像文件的参数传回去。这个图像文件其实就是1个像素的gif文件,而且这个像素还是透明的,在页面中是看不到的。

其他的在线统计系统与Google Analytic有些细微的差别, 比如Nielsen NetRatings要求嵌入的javascript代码中还包含有如下代码:

这确保了在javascript被禁止的客户端,用户的访问也能被统计。当然,这种情况下能统计的信息很有限了。关于这些在线系统实现方法上的一些细微差别做过专门研究,说起来就很长了,哪天有时间会单独写个文章讲这个话题。

日志分析(Web Log Analysis)的实现机制

Web服务器在工作时会把所有用户发过来的请求和相应情况记录在文件里,这个文件就是日志文件。下面就是从http://www.loganalyzer.net/log-analysis-tutorial/log-file-sample-explain.html 找到的一行日志:

111.111.111.111 – – [08/Oct/2007:11:17:55 -0400] “GET /support.html HTTP/1.1” 200 10801 “http://www.google.com/search?q=log+analyzer&ie=utf-8&oe=utf-8 &aq=t&rls=org.mozilla:en-US:official&client=firefox-a” “Mozilla/5.0 (Windows; U; Windows NT 5.2; en-US; rv:1.8.1.7) Gecko/20070914 Firefox/2.0.0.7”

在这一行里包含了客户端IP(111.111.111.111),时间([08/Oct/2007:11:17:55 -0400] ),请求方法(Get),请求文件(/support.html ),HTTP协议版本(HTTP/1.1),返回状态码(200,表示成功),文件大小(10801 ),Referrer信息(”http://www.google.com/search?q=log+analyzer&ie=utf-8&oe=utf-8 &aq=t&rls=org.mozilla:en-US:official&client=firefox-a”),Agent信息”Mozilla/5.0 (Windows; U; Windows NT 5.2; en-US; rv:1.8.1.7) Gecko/20070914 Firefox/2.0.0.7″)。具体如何详细解读日志会另文阐述,在这里只是展示一下日志中都包含什么信息。

Nihuo Web Log Analyzer就是靠读入日志文件在本地进行统计计算而得出最终报表的。在大部分Web日志文件中,都是靠IP来判断访问者。Nihuo Web Log Analyzer也可以通过Cookie识别用户,但需要在日志中首先输出Cookie信息。

在线统计日志分析的优缺点比较

上面费比较多的笔墨说两者的实现机制,就是为了大家能更好理解这一段,因为两种方法的优缺点都是由他们的实现机制决定的。

在线网站流量统计(Page tagging)的优点

  • 通过Cookie识别访问者,比依靠IP识别要更准确。因为通过IP识别用户在遇到很多用户通过代理服务器(比如网吧)时就会不准确。而且当用户过几天后再访问时,通过Cookie能很好的识别这是已经来过的用户。而日志分析以IP识别用户时,因为用户每次上网拨号可能会被动态分配不同的IP,就会比较难准确判断返回用户。
  • 能通过javascript搜集到一些通过日志不能搜集到的客户端信息,屏幕分辨率,语言,flash版本,是否支持java 等
  • 使用方便,只要在所有页面插入了统计代码,以后每次直接看报表即可
  • 可以做第三方统计, 比如你在blogspot.com开了一个blog,而blogspot是不可能把他们的web日志提供给你的,这时候没有别的选择,只能是用在线统计系统。

在线网站流量统计(Page tagging)的缺点

  • 当客户端禁止Javascript或禁止Cookie时,都会影响统计结果,要么是完全统计不到,要么是出现错误的统计
  • 存在一定误差,因为在线统计是通过javascript把客户端信息搜集起来再传回服务器实现统计,有时因为网络的延迟,会出现没有统计到的情况。而且和页面的载入速度也有关系,把代码加在页面代码顶部或尾部统计结果都是会有差异的。
  • 不能统计用户对图像,视频,音频等文件的访问,因为这些文件不能插入统计代码
  • 不能统计带宽信息
  • 统计信息被第三方掌握,有安全上的危险

日志分析(Web Log Analysis)的优点

  • 没有网络延迟的问题,统计准确
  • 可以统计网络蜘蛛(spider ,bot)的访问,这对于做SEO比较重要
  • 能够统计非页面文件,如图像,flash文件等等
  • 客户端禁止了Javascript和Cookie也不影响统计的结果
  • 能够采用丰富的过滤器(Filter)进行数据挖掘(Data mining),可以从多角度分析网站流量和用户的访问行为。一些在线统计也支持Filter, 比如Google Analytics,但是一旦应用过滤器最终数据就被改变,原始数据是找不回来的。
  • 可以多域名的日志放在一起分析,在线统计系统对用户的标识是基于Cookie的,而Cookie是不能跨域名的,在这方面日志分析有天然的优势。
  • 安全,分析数据是由你自己掌握的

日志分析(Web Log Analysis)的缺点

  • 使用比较麻烦,每次要分析日志,而且有的还要配置web服务器以输出合适的日志。
  • 用IP追踪用户不如Cookie准确。 不过这个问题可以通过在Web服务器上添加插件或模块来解决。Apache需要添加mod_usertrack模块,并在日志中输出cookie信息。IIS可以装ISAPI的插件(自己用VC6写了一个,可以从http://www.doyj.com/downloads/cookiefilter.dll 下载,不过这个当时只是写来测试的,出了什么问题可别怪我 )。也可通过javascript,php,asp等语言给客户端种植cookie,这讲起来就长了,大家可以google相关资料看看。
  • 搜集的客户端信息不如Page Tagging丰富,象flash版本,是否安装java之类从日志是看不出来的
  • 日志的存储管理也是挺头痛的事,尤其是当每天都产生几十G日志的时候。

经常有人问这两种方式哪个更好,应该选择哪种,这让我很难回答。 因为这两种方式都各有所长各有所短,只用一种方法很难准确完整的了解网站流量的的全貌,我自己做分析时两种工具都使用的,两个报告互相参考着看,也推荐大家采用这个方式。

注:这篇文章借鉴了一些 http://www.kichus.in/2006/09/23/log-file-analysis-page-tagging/ 的内容