一种阿里创造的通用埋点规范,适用于大多数产品

1、简介

SPM(super position model 超级位置模型),由阿里创造,研究使用后觉得有如下几个优点:

适用于不同端任何类型的产品。

在集团内部,模型统一后,则可以有统一的分析工具。

熟悉后不用解释,基本可以在任意角色甚至部门中可读。

官方解释:https://open.taobao.com/doc.htm?docId=959&docType=1

2、设计思路

SPM核心包含如下几个等级的信息。

一是事件标记、二是事件类型、三是跳转关系、四是流量通道、五是其他参数。

2.1事件标记

我们用a.b.c.d用来标记某个页面中的某个事件。

a位:代表用户端层级,举例来说,手机淘宝App的a位,可以用tbapp标记,淘宝PC端可以用tbpc来标记,支付宝App端可以用alipayapp标记。

b位:代表端内的某个页面,如homepage则可以代表首页,cartpage可以代表购物车。

c位:代表某个页面中的某个区块,如购物车中,每个商品前面会有单选框,我们可以用S

singlebox标记,或者在淘宝首页有个聚划算区块,我们则可以用superdeal标记。

d位:代表某个区块中的某个具体的点击位置。拿上面的购物车中单选框举例,页面中有多个商品,每个商品前面都有单选框,这是后我们可以用1、2、3、4…直接标记勾选框的位置,或者是superdeal模块中,点击标题、商品都可以进入聚划算的页面,则可以用title表示点击了标题,用1、2表示点击了第几个商品模块。

例子总结:

spm=tbapp.homepage.searchbar.camera代表淘宝app中,首页顶部搜索栏中的相机按钮点击。

spm=tbapp.cartpage.product.1代表的是购物车中最上方第一个产品位的点击。

总体来说,d位置的定义相对来说会比较灵活,甚至还可以基于这个模型,扩展e的位置用来标记每一次请求,只要和数据团队约定好,不需要循规蹈矩。

2.2事件类型

abcd位仅能标记一个具体的位置,而区分不同的事件类型,基于特定事件类型记录不同的通用参数信息,才能覆盖到所有的统计需求,同时也有助于降低数据加工的难度和资源消耗,而以下三种类型基本够用。

页面类型:为了统计页面颗粒度的用户行为,当进入和退出页面时,需要记录用户id、设备id、时间戳、进入还是退出等参数,则可以统计每个页面的UV、PV、用户停留时长等数据。

点击类型:长按、滑动等我们都算作点击类型,无需其他解释。

曝光类型:指的是对于某个特定模块级别的曝光,比如说商品的曝光、视频的曝光,结合点击类型的事件一起来看,则可以计算出某个商品、帖子、视频的点击率。

2.3跳转关系

在跳转关系上,我们一般来说,只要在URL中,记录上一跳和上两跳的关系即可。

举例来说,我在购物车页面点击了第一个商品,则可以上报一次点击事件:spm=tbapp.cartpage.product.1

但上一跳我们可能是从某个商品详情过来的,那可以记录为:spm-pre=tbapp.detail.bottombar.addcart

上二跳我们可能是从首页的猜你喜欢信息流的第五个商品过来的,那可以记录为:

spm-pre2=tbapp.homepage.youmaylike.5

那基此,用户的动线就被串联起来了。

2.4流量通道

那很有可能的是,我们要观察的颗粒度并不是一个页面,而是一组页面作为的一个大的功能模块,比如说首页的某一个频道,包含了多个页面,那如何去统计呢?这时候就要引入流量通道的概念。

比如说,我们把一个秒杀频道包含的3张页面,都标记为一个流量通道flashdeal,那只要将这三张页面的UV进行去重,则得到了这个频道的总UV,其他的点击、PV等也是同理在统计逻辑上处理即可。

2.5其他参数

其他参数相对来说自定义性比较高,但主要是针对不同的事件类型,我们要做一些规范通用的参数,比如点击商品或者视频的时候,必须要记录商品及视频的ID。这样才能在数据统计逻辑上知道商品颗粒度的分析。

你可能感兴趣的:(一种阿里创造的通用埋点规范,适用于大多数产品)