终于准确知道顾客是从哪里来的了

说顾客从哪里来,不是指顾客居住的地理位置, 而是指顾客找到我的产品,我的网站的方式。 最终付费的顾客是通过搜索引擎找到的,还是通过在哪个站点投放的广告, 还是通过adwords。这是我一直最关心的问题,也用了各种方法去分析,比如网页里插入Google Analytic的统计代码,用web log analyzer 分析自己网站的日志,但因为自己的共享软件是通过regsoft, regnow等注册服务提供商来完成,当用户最终确认付款时,已经离开了我的软件站点页面,Google Analytic和日志都不能确认这个用户是否付款。 很多时候把钱扔到各种推广方式上,但对每种推广方式能有什么具体效果则心里一点数也没有,只要月底一算账收入增长了,就觉得推广的方式还是有用。 如果下降了, 就不管有用没用,所有推广方式全给砍掉。

前天痛感这种状态不能再继续,于是自己修改了一下google analytic的代码来实现对顾客来源的跟踪。 Google Analytic会在客户端种植几个cookie,最有用的是__utmz, 记录了用户的来源信息,通过搜索引擎过来的用户还能找出关键词。但有个问题是,不能区分正常搜索结果过来的用户和通过adwords广告过来的用户。 这就需要自己做点工作了。

1.adwords广告的目标url设置特殊参数, 我就设定为 /index.html?ref=adwords

2.在index.html加入如下javascript代码 ,种植_isadwords cookie

var _isadwords;

_isadwords= _uGC(document.cookie, ‘_isadwords=’, ‘;’);

//判断是否cookie中已经存在isadwords字段,如果不存在就设置此字段
if( !_isadwords|| _isadwords== “-” )
{

//判断是不是adwords过来的用户
if( window.location.href.indexOf( “/index.html?ref=adwords ” ) > 0 )
_isadwords= “1” ;
else
_isadwords= “0” ;

document.cookie=”_isadwords=”+_isadwords+ “; expires=” + _uNx()+”;”;
}

这其中 _uGC()和_uNx()都是google analytic 的 script中提供的函数。_uGC()是在第一个参数中寻找以第二个参数开头,第三个参数结尾的子串。 _uNx()则是返回当前时间一年以后的时间,用做cookie的过期时间。

种下了cookie,剩下的问题就是怎么读出来了。先下载http://www.doyj.com/images/a.gif, 上载到你的站点图像目录里。 a.gif是一个只有一个透明像素的gif图像文件。然后在产品购买页面嵌入如下代码:

var _urefgifpath=”http://www.doyj.com/images/a.gif”; //这里要换成你的图像链接

var zx = _uGC(document.cookie, ‘__utmz=’, ‘;’); //取出__utmz cookie
var _isadwords=_uGC(document.cookie, ‘_isadwords=’, ‘;’);

var i3=new Image(1,1);
i3.src=_urefgifpath+”?”+”utmz=” + zx + “_isadwords=” + _isadwords + “&utmn=”+_uu;
i3.onload=function() { _uVoid(); }

代码中的_uu是google analytic中生成的一个随机数,=Math.round(Math.random()*2147483647);, 这是为了保证每次url都是不一样,客户端不会缓存对这个图像文件的访问。代码中的_uVoid()也是google analytic中的一个空函数。

这段代码其实就是new 出一个图像文件, 把cookie信息做为这个图像的参数返回给服务器,这样在日志中就会留下用户的cookie信息。因为这个图像文件是一个透明像素,并且是在javascript中new出来的,所以在页面中是不可见的。

因为在订单中有用户的ip, 每收到一个订单, 就可以去日志中去查找这个ip, 再查找这个ip访问a.gif时留下的参数,就能知道这个用户从哪里过来的了。

后记:写在这里的方法已经比我当时采用的方法又改进了一些, 当初想的方法,那是…………相当的蠢。 改进后的方法依然不好,还要去看日志文件,很麻烦,但至少实现了追踪用户来源的功能。方法还有很多改进余地,我这是抛砖引玉,先提出这么个思路,欢迎大家指正。

《终于准确知道顾客是从哪里来的了》上有5条评论

  1. 看完了。现在这个需要运行日志去分析,感觉有点麻烦。应该还可以更简化一些。:)

    另外,用 javascript 的话,有些顾客屏蔽了这个,就跟踪不到了吧?

  2. 其实对于google广告。通常一般进你的主页是这样的情况:
    1. Google搜索结果顶部,搜索页右侧广告
    进入url 为 http://www.yourdomain.com/?glicd=26个随机字母
    进入时referer为(以wow gold为例)
    http://www.google.com/search?q=wow+gold&hl=en&newwindow=1&gl=us&start=10&sa=N

    2.如果是 adwords,指嵌在其他网站的google文字广告

    进入url 为 http://www.yourdomain.com/?glicd=26个随机字母
    本文来源于扫地老僧的Blog http://www.doyj.com , 原文地址:
    http://www.yourdomain.com/?glicd=26个随机字母
    进入url为 http://www.yourdomain.com/?gclid=26个字母
    进入时referer以
    http://pagead2.googlesyndication.com/pagead/ads?client
    开头.

    普通google搜索进入的用户,是不会带 ?gclid=…的

    其实如果你的网站访问量不大的话,完全可以在每个页面
    检测 location和 referer然后写入数据库,这样很方便看到用户来源。

    当然,如果你精力充沛,每次有成交后登陆到linux shell
    grep “买单者IP” 日志文件.log
    也可以

  3. [quote comment=””]其实对于google广告。通常一般进你的主页是这样的情况:
    1. Google搜索结果顶部,搜索页右侧广告
    .如果是 adwords,指嵌在其他网站的google文字广告

    [/quote]

    多谢指教!

  4. 你好, 看了你的文章很受启发
    是这样的, 我是做共享软件的,采用的是regnow系统

    adwords的跟踪我已经做了, 而且也能观察转换率

    下个月我想在一个网站上买一个文字链接
    我想跟踪这个文字链接能够给我带来好多购买客户
    请问应该怎么做跟踪阿
    谢谢
    如果有好的方案,请给我发邮件好吗?

    [email protected]

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注