如何使用Google Analytics for 3rd party网站创建跟踪像素?

时间:2015-05-12 14:51:25

标签: google-analytics google-analytics-api universal-analytics

我们需要跟踪第三方网站上发生的转化。我们在该网站上唯一可以放置的是图像像素,也可能是一些JS逻辑,用于何时触发它。

我知道可以使用测量协议触发转换:https://developers.google.com/analytics/devguides/collection/protocol/v1/parameters#visitor

理想情况下,我只是给第三方一个IMG网址,那就是它。问题是CID(唯一客户端ID)。

我可以尝试通过URL参数将CID从我们的站点传递给第三方。但是,有很多情况下它不可用(例如,IMG pixcel将在电子邮件中,目标URL在印刷文献上)或第三方不愿意经历麻烦。以这种方式传递此CID是最佳做法吗?

我可以尝试生成CID,但我找不到一种简单的方法,例如,var CID = generateCID()。第三方网站在页面上有自己的GA。我可以使用他们的Google Analytics CID并在图片像素网址中使用它吗?

最好的方法是什么?谢谢!

2 个答案:

答案 0 :(得分:3)

如果第三方网站已运行analytics.js,那么使用该客户端ID可能是最佳选择。你可以通过以下方式获得它:

var cid;
ga(function(tracker) {
  cid = tracker.get('clientId'));
});

如果analytics.js未运行,或者由于某种原因无法访问ga变量,则只能随机生成客户端ID。这与Google的做法差不多。它是一个随机的31位整数,附加了当前日期字符串:

var cid = Math.floor(Math.random() * 0x7FFFFFFF) + "." +
          Math.floor(Date.now() / 1000);

答案 1 :(得分:3)

仅仅为了补充@Philip Walton的优秀答案,根据official Documentation,Google Analytics要求随机UUID(版本4)作为客户端ID。

  

客户端ID

     

所有匹配类型都必需。

     

匿名识别特定用户,设备或浏览器   实例。对于网络,这通常存储为第一方   两年到期的cookie。对于移动应用,这是随机的   为应用程序安装的每个特定实例生成。该   该字段的值应该是所描述的随机UUID(版本4)   在http://www.ietf.org/rfc/rfc4122.txt

@broofa提供了一种在JavaScript here中生成符合RFC4122的UUID的简单方法。为了完整起见,请在此引用它:

'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
    var r = Math.random()*16|0, v = c == 'x' ? r : (r&0x3|0x8);
    return v.toString(16);
});