SPM(shopping page mark,导购页面标记) 是淘宝社区电商业务(xTao)为外部合作伙伴(外站)提供的跟踪引导成交效果数据的解决方案
注:也有解释 SPM 为超级位置模型(Super Position Model),自行理解即可
淘宝官方解释:开放平台-文档中心 (taobao.com)
注:如果大家平时刷 b 站的话,可以看到 b 站也是有 spm,除此之外 b 站还有 vd_source 字段,额外用于统计用户信息,由登录账户访问链接自动生成追加,内部机制我不了解,但是可以理解为用户 ID,所以谨防泄露
首先思考几个问题
一种思路是直接统计服务端请求日志(nginx),只要统计该页面的请求数即可。
另一种思路是直接在客户端埋点,当访问到某个页面时,同时向日志服务器发送一条埋点日志,日志服务器处理后拿到 pv。
在第一种思路下,分别统计 nginx 日志下该页面请求的 referer 头信息即可。
而第二种思路下,可以在来源里面加上不同的 URL 来源参数进行区分。
很显然在第一种思路下已经不能解决这个问题了,所以这个就是 SPM 做的事情,做个更加精细度的埋点,即为每个链接进行编码
SPM 示例链接: http://detail.tmall.com/item.htm?id=3716461318&&spm=2014.123456789.1.2
其中 spm=2014.123456789.1.2
便 SPM 编码,用来跟踪页面模块位置的编码,标准 spm 编码由 4 段组成,采用 a.b.c.d 的格式(建议全部使用数字),具体如下:
完整的 SPM 四位编码能标识出某网站中某一个频道的某一个具体页面
比如 xTao 合作伙伴(a=2014)中某个外站 appkey 为 123456789(b=123456789),频道 ID 为 1(c=1),页面 ID 为 2(d=2),那么 spm=2014.123456789.1.2,就唯一标识外站 123456789 的频道 1 上的页面 2,从这个页面点击出去的链接,后面都应该携带 spm=2014.123456789.1.2 的参数串
这样,通过这个编码,我们就能唯一的定位到一个 url 是由外站中哪个具体页面点击生成的
如果是站内,则 SPM 编码会有第五个参数,具体为:
注意:spm 的四位总长度 32 位,并且不支持%、&等特殊字符,请尽量使用英文以及数字
SPM 的应用场景因为 spm 编码本身是有层次的,因此:
搭建 SPM 体系图示
如一个双 11 的广告页需要投放到微博、知乎和优酷等渠道,只需要为每个渠道指定一个编码,后续可以统计每个渠道的投放效果,事后按流量计费进行费用结算。
假设现在有一个淘宝女装的专题页,为了进行活动引流,会在淘宝首页多处区块放置引流入口,怎么统计各个入口进行淘宝女装专题的量呢,以便后续进行优化提高入口曝光度?
一种常见的思路是每个入口进行布点,当用户进行点击时,同时向日志服务器发送一条埋点日志。但是这个方案有天然的弊端: 1、在页面跳转时,埋点日志请求可能会丢失 2、日志请求过多。
SPM 通过指定编码解决了这个问题,只需要进入页面的时发送一次埋点日志请求即可。
如新用户的注册过程中,往往包含多个步骤,输入账号,验证手机,设置密码和上传头像等等,这么长的链路过程中,任何一个产品或者技术优化,都可能直接作用到用户的流失率,为了直观的看到这个效果,一般会采用漏斗图。而 SPM 的采集数据包括了精细化的来源数据,可以做出丰富的漏斗图出来分析链路转化率问题
阿里曾经退出过一款数据产品 Quick Analytics Plus(现已改名 Quick Tracking)。这款产品的文档里有对应的埋点管理模型描述,其内部的埋点管理逻辑是位置 > 事件,可以称之为位置优先的埋点模型,在该模型下,事件是限定在位置下的事件,意味着其内部可能有着成千上万的埋点事件
SCM(Super Content Model,超级内容模型) 编码是用来跟踪内容的编码。与业务内容一起下发的埋点数据,用来唯一标识一块内容。客户端打点时,将 SCM 编码作为埋点的参数上传给 UT 服务器。
SCM 规范
SCM 编码也采用 a.b.c.d 的格式,具体如下:
spm 针对的是用户位置分析,而 scm 针对的是内容分析,通过内容来源、投放算法、算法版本、对应人群四个参数标识当前用户的 feed 流推荐内容来源,再针对性的计算不同类型的 CTR 就能够做到数据追踪与复盘。
本文由博客一文多发平台 OpenWrite 发布!