IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    GTM:如何获取clientId并存入自定义维度

    肖庆的博客发表于 2014-04-01 00:00:00
    love 0

    如何获取clientId并存入自定义维度,这个问题之前困扰了我很久,主要看了这几个地方:1、2、3,都未能成功。以下这种方法通过配合事件跟踪成功过,如我的这个淘宝关键词排名查询网站中运用的就是这个方法(直接使用貌似不凑效):

    function(){
      var client = ga.getAll()[0].get('clientId');
      return client;
    }
    

    今天刚好有空再研究了下Google Tag Manager,看到宏已经支持了第一方cookie,这下简单很多了。因为客户ID是存储在名为_ga的第一方cookie中的,形如:_ga=GA1.2.1232495606.1396280517(你可以在console中输入:document.cookie查看),其中GA1应该是Universal Analytics的版本号,而2则是域名的层级,比如二级子域名的话则为3,1232495606.1396280517这个一般统称为clientId,也即上面方法的出来的client。不过,再行拆分的话,其中1232495606这个是唯一身份标识,而1396280517这个则是首次访问的时间戳。(详细介绍)

    了解了这个cookie的意思之后,我们便可以对这个数据进行拆分和存储了。我们存储这个信息的主要作用在于唯一身份识别与辨识,同时配合首次访问时间我们可以了解访客的忠诚度和推广效果。不过,由于UA存储的cookie值十分有限,只有上面说到的2个,不像ga.js那样,存储了3个时间戳、访问次数、来源媒介广告系列等信息。我们暂且就先用这2个好了,大多数情况下也够用了,至于其他的维度,我们可以也通过其他的方法来实现。

    如果你懂英文、理解能力不错并且对GTM非常熟悉的话,直接看这个gist文件就好了:ua clientid tracking。

    下面通俗地解释下这几个步骤:

    1. 创建一个“第一方Cookie”的宏,宏名称为:ga cookie。
    2. 创建一个”自定义JavaScript“的宏,宏名称为“cid”,在代码框中填入如下代码一:
    3. 创建另外一个”自定义JavaScript“的宏,宏名称为”intit_time“,在代码框中填入如下代码二(这里主要是提取cookie中的第四段值,然后将时间戳转化为一般的时间格式):
    4. 在你通用的UA代码中新增2个自定义维度,索引号分别为1和2,然后分别对应上述和
    5. 在Universal Analytics的后台分别新建2个自定义维度,索引号分别为1和2,分别命名为:客户ID、首次访问时间。

    代码一:

    function() {
      try {
        return .split(".")[2];
      } catch(e) {
        console.log("No Universal Analytics cookie found");
        return "n/a";
      }
    }
    

    代码二:

    function() {
      try {
        var init_time = new Date(.split(".")[3] * 1000)
        var init_time = init_time.getFullYear()+"-"+(init_time.getMonth()+1)+"-"+init_time.getDate()+" "+init_time.getHours()+":"+init_time.getMinutes()+":"+init_time.getSeconds();
        return init_time;
      } catch(e) {
        console.log("No init_timestamp cookie found");
        return "n/a";
      }
    }
    

    另外,需要注意的是:如果用户只访问过一次网站并且本次为你设置代码后的第一次,那么将在自定义维度的对应字段中显示为n/a,你可以根据情况设置为会话级别或者访客级别的自定义维度。最终我们可以生成类似如下的报告:

    init_time source_medium



沪ICP备19023445号-2号
友情链接