Measurement Protocol跟踪邮件打开率?So Easy!

更简单的跟踪邮件Open Rate的方法来了!

更简单的跟踪邮件Open Rate的方法来了!

如何衡量邮件营销的效果呢?极诣曾经提供了一个挺简单的方法,那就是利用DoubleClick的DFP中Ad Unit被读取的次数。如果感兴趣的话请移步极诣的一篇旧文《电子邮件的跟踪和数据分析》。这个方法挺简单,不过并不能很好地与你正在使用的Google Analytics集成。

在上周极诣的博文《Referral Spam的对策和思考》中,极诣卖了一个关子,那是关于GA的Measurement Protocol。本周我们就来看看如何用这种更简单的方法进行电子邮件打开的跟踪。

Measurement Protocol简介

GAMP是GA升级到Universal Analytics之后的产物,有了GAMP,电冰箱、洗衣机、电视机,所有可以连到互联网的设备都可以利用Google Analytics进行数据收集。它实质上是一种协议、一种规则,就如它的命名那样。你可以遵循这种规则通过HTTP协议向GA发送数据。这些数据必须是Hit Level的数据。我们知道GA中的Metrics,也就是指标,分成三个Level:用户层(User Level)、会话层(Session Level)以及行为层(Hit Level)。用户层是用户的基本属性,如设备型号、屏幕尺寸、浏览器语言;会话层是每次用户进行会话时的不同特性,如会话时长、是否登录、浏览页面数、是否弹出;最后,行为层是用户在某一个会话中的单一操作,如一次页面浏览,一次鼠标滚动,一次点击。

在Measurement Protocol中,我们只可以向谷歌发送Hit Level的数据。道理很简单,脱了JavaScript,谷歌并不能正确识别每一个会话。如果你非要传入会话信息,谷歌当然也不会阻止你的。不过还是以Hit的形式传递。

有了GAMP,你可以通过服务器向指定Property发送Hit Level的数据。这也是为什么Referral Spam并不能光靠JavaScript来根除。甚至你可以用Excel的宏给某个GA的Property发送数据,虐不虐?

虐啊,虐死了!虐到你可以在你的线下商店通过收银时扫描二维码上传“卖掉一件XXX”给GA。Universal的意义就在这里。

利用Measurement Protocol统计邮件打开

几乎所有的邮件打开的思路都是通过插入一个看不见的小图片来达到目的。如果服务器端发现小图片被读取了,那么该邮件即被打开了。第三方的邮件有时候碰到GMail那样预存图片就会遇到统计失灵的情况。因此我们还是通过GAMP来解决问题。

GAMP都是通过HTTP协议来向服务器发送数据的,如果发送成功返回码会是2xx。要不然就是4xx的error。发送的地址是www.google-analytics.com/collect。因此我们的小图片就会是这样:

<img src=”https://www.google-analytics.com/collect?v=1&…”/>

?后面我们是需要提供一些参数的。你可以在GAMP的参考手册找到许多可以传递的参数名。对于Email跟踪来说我们通常会用到下面这些参数:

参数名 说明
v 版本(必须),目前只填1
tid 跟踪ID(必须),就是UA-XXXXX-Y。也称为PropertyID。和你的网站保持一致。
cid 客户端ID(必须),区别每个客户端用。就是一串字符串,我们发送邮件的时候可以随机生成。不宜过长,够区分标识即可。
uid 用户ID,此处不可上传用户个人信息。包括用户姓名、电邮地址。你可以另建表来对应。
t 跟踪类型(必须),对于邮件打开建议填写为t=event。
dt 文档标题,可以用来传递邮件主题。如果主题中包含用户信息请预处理。
cn campaign name,不解释。也可以同时添加ci,为campaign id
cm campaign medium,可以填为Email。

除此之外,如果你事先知道邮件阅读者的其他信息也可推送给GA。具体参数详见上面的参考链接。当我们选定参数规则后,我们在邮件中加入的小图片的HTML就会是这样:

<img src=”https://www.google-analytics.com/collect?v=1&tid=UA-XXXXX-Y&cid=134N3251JI3&uid=maxketadmin&t=event&dt=Weekly_Digest&cn=WEEKLY”/>

你可以使用Hit Builder(https://ga-dev-tools.appspot.com/hit-builder/)来验证你的格式是否正确。

非常好用的Hit Builder

非常好用的Hit Builder

享受你的邮件Open数据

既然你在t参数里设置了event,顺理成章你会以为已经在GA的Event中记录了邮件打开了吧?其实不然。所有这些数据都会储存在Content下面?你可以试一下Real-Time报告:

Open数据被记作一个PageView

Open数据被记作一个PageView

从上图中可以看到,极诣的这个PageView是一个Virtual的PageView而且是指定路径的。那是因为使用了dp这个参数(document path)。这有助于你将邮件打开分类,推荐你也这样使用。

另外极诣在一开始的调试中一直没有能在Real-Time中出现这个Open,原因是极诣过滤掉了浏览器语言设置或者IP来源地区为空的数据。如果你也使用了这些Filter,那么请你也把它考虑进去。不然是无法获得传来的数据的,因为www.google-analytics.com/collect?后面的参数里面并没有附带这些信息。

以上!