EDM(Email Direct Marketing)是当今比较流行的一种营销方式,尤其在欧美国家非常受欢迎,并且通常成本低效果好。本文就Google Analytics如何整合EDM进行分步骤讲解。
EDM主要跟踪打开和点击数据,由于我们已知用户邮箱(通常会对应一个客户ID),因此我们也可以实现跨渠道跨屏跟踪。
跟踪打开的主要机制是在邮件正文插入一像素的gif图片,而这个图片则是利用GA的measurement protocol构建而来的一个请求。
跟踪点击则是通过添加UTM跟踪标记。
而实现这个流程的贯通则需要用到uid这个跟踪参数。当然,你还可以把这个用户信息填入自定义维度,并且也可以对用户打开邮件记录为一个自定义指标。
打开跟踪代码:
<img src=”http://www.google-analytics.com/collect?v=1&tid=UA-XXXXXXX-YY&cid=*|UNIQID|*&t=event&ec=email&ea=*|MC:SUBJECT|*&el=*|UNIQID|* &cs=newsletter&cm=email&cn=cookie-sale&cc=*|MC:SUBJECT|*&cd1=12345678&cm1=1&uid={uid}&dp=/email/{日期}” />
代码解释说明(以上代码以MailChimp为例,其他邮件服务商也是类似的):
tid=UA-XXXXXXX-YY:你的GA配置文件ID
cid=*|UNIQID|*:系统生成的唯一访客ID,如“35009a79-1a05-49d7-b876-2b884d0f825b”,这个通常是邮件服务商可以系统自动生成的)
t=event:跟踪类型为事件跟踪
ec=email:事件标签为email
ea=*|MC:SUBJECT|*:事件操作为*|MC:SUBJECT|*(系统动态参数,通常是标题)
el=*|UNIQID|:事件标签为访客ID
cs=newsletter:来源为newsletter
cm=email:媒介为email
cn=cookie-sale:广告系列名称为cookie-sale(系统动态参数,建议用日期+标题)
cd1=12345678:自定义维度,对应客户ID,需先在GA后台配置一个类型为hit、整型的自定义维度,需对应序列号,如自定义指标序号为8,则cd8=12345678。
cm1=1:自定义指标,标记edm被打开一次,需先在GA后台配置一个类型为hit、整型、最大值1最小值0的自定义指标,需对应序列号,如自定义指标序号为8,则cm8=1。
uid={uid}:对应客户ID,动态参数,通过邮箱匹配到会员ID号,从而对接实现会员分析
dp=/email/{日期}:构建一个虚拟的网页浏览,其中日期为动态值。从而可以看到用户打开了哪个邮件。
以上,我们便完成了邮件打开的跟踪,接下来需要跟踪用户的邮件点击并进入网站。
这个步骤,你只需要添加UTM网址跟踪参数即可。
为了保持数据的连贯性,建议命名方式与上述邮件打开的保持完全一致即可,注意大小写也需要保持一致。
如:
http://xiaoq.in/?utm_source=newsletter&utm_medium=email&utm_campaign=cookie-sale&utm_content=header&utm_term=logo
另外,有一种情况的用户打开邮件后并没有登录,因此我们可以在邮件的点击链接网址后加一串会员ID跟踪参数(如&mcid=12345678),当用户点击链接后,URL中会自动带上该会员ID。然后,通过JS提取这个会员ID,并且存入cookie,或者直接从cookie读取该ID,则可以实现用户即便不登陆网站也能实现整个流程的跟踪了。
代码如下:
function getUserId() {
var params = location.search;
var mcid = params.match(‘mcid=(.*)’);
if (mcid) { // if the mcid parameter is in the URL var uid = mcid[1]; // grab the value of the parameter setCookie(‘mcid’, uid, 30); // set a cookie named mcid with the // value of the mcid parameter and // an expiration of 30 minutes.
return uid;
}
else { // if there was no mcid parameter uid = getCookie(‘mcid’); // look for the mcid cookie return uid; // will return the value of the mcid cookie, or if // there is no mcid cookie will return an empty // string } };
function setCookie(cname, cvalue, exp) {
var d = new Date(); d.setTime(d.getTime() + (exp * 60 * 1000));
var expires = “expires=” + d.toUTCString(); document.cookie = cname + “=” + cvalue + “; ” + expires;
}
function getCookie(cname) {
var name = cname + “=”;
var ca = document.cookie.split(‘;’);
for (var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ‘ ‘) c = c.substring(1);
if (c.indexOf(name) == 0) {
return c.substring(name.length, c.length);
}
}
return “”;
}
var userId = getUserId(); // sets a variable to the value of either // the mcid parameter, the mcid cookie, or // an empty string. This is what will be // used in the Google Analytics ‹create› // command
ga(‘create’, ‘UA-xxxxxxxx-y’, ‘auto’, {
‘userId’: userId
});
ga(‘send’, ‘pageview’);
通过以上方法,你便能打通各个会员在EDM渠道从打开到点击再到访问的整个流程了。