08 January 2011

GA默认可以识别的访问来源有三种:直接访问、引介网站和搜索引擎,你可以通过在Landing page的URL添加utm参数来标识自定义访问来源。直接访问的来源为(direct),媒介为(none),这里的括号是为了与direct和none这两个字符进行区分;引介网站的来源为网站主域名,媒介为referral;搜索引擎的来源为网站主域名,媒介为organic。 直接访问为用户通过直接输入网址或通过书签到达Landing page(用户在一个session中到达网站的第一页),换句话说,Headers的request中不包含referer的值(这里有一个前提条件是用户的utmz为空或只有direct值)。 引介网址为用户通过其他网站到达Landing page。 搜索引擎为用户通过GA可识别的搜索引擎到达Landing page,这里强调可识别的搜索引擎包括两层意思,首先GA必须将这个主域识别为搜索引擎,其次,GA也需要知道这个主域的查询参数。其实,引介网站与搜索引擎在Headers的request中都是通过referer的值来判断的,只是对于搜索引擎,GA会将包含在referer的查询参数提取出来。

GA是通过_utmz这个cookie值来判断访问来源的。GA创建及更新这个cookie值的基本思路如下:

图1  GA对访问来源的判断

首先判断Landing page是否存在gclid参数,如果存在,则存储这个参数,这个参数是Adwords的自动标记,其优先级最高,存在这个参数则其他utm参数无效。如果没有gclid参数,则判断是否存在utm参数,如果存在utm参数,则将对应值写入utmz值,必要参数为utm_source,其余参数可为空,其默认为值(not set)。如果不存在,则判断Headers的request中referer的值是否为空,如果不为空,则获得referer的主域名作为来源,写入utmcsr,同时判断这个主域是否在可识别的搜索引擎列表中(即包括GA默认可识别列表也包括用户通过addOrganic添加的自定义搜索引擎),如果在不可识别的搜索引擎列表中,则在utmccn写入(referral),在utmcmd写入referral,将referer中的URI写入utmcct,如果主域名在可识别的搜索引擎列表中,则判断referer的URI中是否存在对应的查询参数,如果不存在则按照引介网站进行处理,如果存在则将查询参数中的值记录在utmctr中,并将在utmccn写入(organic),在utmcmd写入organic。如果Headers的request中referer的值为空,则判断是否存在_utmz,如果存在则保留原信息,如果不存在则在utmcsr中写入(direct),在utmccn写入(direct),在utmcmd中写入(none)。 这里看到只有当不存在_utmz的情况下,访问者的直接访问才会被记录为直接访问。因为如果用户以前通过直接访问以外的渠道访问过网站之后,GA会将其随后的访问都归属到上一个访问来源。

Update:之前没考虑utm_nooverride参数的使用,GA应该是首先判断是否存在这个参数,如果这个参数的值为1,则会保留原有的utmz值,如果不存在,才会写入utmz值。

下面介绍一个_utmz这个cookie值。 _utmz 有效期:默认值为6个月,但是,你可以通过_setCampaignCookieTimeout()函数来自定义这个值。 形式: 域哈希值.当前时间.访问次数.不同来源的访问次数.utmcsr=X(|utmccn=X|utmctr=X|utmcmd=X|utmcct=X|utmgclid=X) _utmz是一个引介跟踪cookie。它跟踪所有的引介信息,包含所有的引介媒介与来源。这意味着所有的organic、cpc、广告计划或广告单元的信息都存储在_utmz中。关于引介的信息存储在几个名-值对中,引介的每个属性如下: utmcsr:存储utm_source参数中的值,utm参数中必要参数,如果仅适用这一个utm参数,则其他参数设置为(not set);如果没有使用utm参数,则存储Header中referer的主域名。 utmccn:存储utm_campaign参数中的值;如果没有使用utm参数,则引介网站存储(referral),自然搜索存储(organic)。 utmctr:存储utm_term参数中的值;如果没有使用utm参数,则引介网站存储URI,自然搜索存储搜索词,直接访问为空。 utmcmd:存储utm_medium参数中的值,如果没有使用utm参数,则引介网站存储referral,自然搜索存储organic,直接访问存储(none)。 utmcct:存储utm_content参数中值,如果没有utm参数,则为空。 utmgclid:存储AdWords的自动标识,如果存在则utmcsr为(not set),utmccn为(not set)。但是在GA的报告中会将来源显示为google,媒介显示为cpc,能否正确显示广告系列、广告组和关键词等AdWords相关数据,则要看gclid能否与AdWords的数据匹配,无法匹配则显示(not set)。 注:这里的参数都为utf8编码的urlencode值。

注:目前Google官方也给出了流量来源判断的流程图,感兴趣的同学可以在https://developers.google.com/analytics/devguides/platform/features/campaign-flow?hl=zh-CN看到。



分享到: 更多
友荐云推荐