一、数据埋点以及其意义

一般来说,用户信息分为以下几类:

  1. 1)用户基本信息
  2. 常规注册/登录即可获取的信息,例如注册时间、注册渠道、注册所在IP、最近登录时间等。
  3. 2)用户行为信息
  4. 用户在APP页面内表现出来的行为信息,需要预先作埋点追踪,例如页面访问(分为PVUV)、按钮点击,从而可统计出页面访问路径、页面转化率。
  5. 3)用户业务信息
  6. 用户在APP页面内跟业务紧密相关联的数据,例如电商模块的订单数据、推荐模块的搜索记录等。

所谓埋点就是在应用中特定的流程收集一些信息,用来跟踪应用使用的状况,后续用来进一步优化产品或是提供运营的数据支撑,包括访问数(Visits),访客数(Visitor),停留时长(Time On Site),页面浏览数(Page Views)和跳出率(Bounce Rate)。这样的信息收集可以大致分为两种:页面统计(track this virtual page view),统计操作行为(track this button by an event)。
通俗来说就是,对用户的操作进行编码解码映射的过程。所以,数据埋点针对的是用户行为信息,并且用户行为信息能在足够的数据下协助完善用户基本信息(例如标签化用户分群)以及用户业务信息(例如通过埋点分析调整策略,提高业务转化)。

数据埋点的意义:
image.png


二、数据埋点基础知识

1、理点方式

埋点技术主要分为代码埋点 、 可视化埋点 、 无埋点三类。
image.png

埋点采集的是一个一个的事件,狭义来说就是某人、某时与某事组合而成的一次事件。 通过这种行为数据的累计,可以获得诸如某件事有多少人进行、某人在一周内做了多少件事等统计任务 。与业务相结合起来,可以分析人次或事件发生的次数、两件前后相互连接的事件之间的转化率、 留存比例、 时长、内容等。

从技术实现的方式以及埋点事件触发类型分类可以分为前端埋点、后端埋点。

埋点方式对比,如下图:
image.png

2、埋点事件分类

1)、点击事件
点击事件,用户点击按钮即算点击事件,不管点击后有无结果;如下图红框标注所示,点击一次记一次。
image.png

2)、曝光事件

  1. 成功打开、加载一次页面记一次
  2. 刷新页面一次记一次

3)、页面停留时间事件
页面停留时间(Time on Page)简称 Tp,是网站分析中很常见的一个指标,用于反映用户在某些页面上停留时间的长短。

可以把一个页面生命周期抽象为三个动作:「进入」、「活跃状态切换」、「离开」,三个动作的详细触发行为如下表:
image.png

页面停留时间Tp的计算公式为:

  1. 页面停留时间Tp = 离开时间 - 进入时间

3、事件触发类型

1)、用户侧
自动式触发
自动式触发一般是曝光事件、页面停留时间事件。

  1. PV
  2. UV
  3. 转化率
  4. 停留时间
  5. ...

交互式触发
交互式触发一般是点击事件,如点击按钮、滑动页面等。通常是梳理产品的功能流程或者页面结构,剥离关键流程,提炼关键指标,组成业务事件流程,从而记录用户的操作路径。

2)、技术侧

  1. 前端触发上报:用户在前端进行相应的操作时,即触发采集数据事件。
  2. 前端获取后端结果上报:一般除了记录用户操作外,还要获取用户操作的结果,触发机制必须等到前端拿到后端服务器处理结果后,再进行上报。
  3. 后端触发上报:后端处理后直接上报,采用这种方式的好处是数据不会出现漏报,但基本拿不除接口外的其他用户信息。
  4. 后端获取前端属性后上报:为了解决后端埋点的软硬件环境属性等问题,可以在前端进行相应操作时,将相应的属性一并传回服务器,服务器在发生操作时,带上相应的前端属性上报数据。

4、埋点工具

私有化部署
对于一些对数据安全性要求比较高的公司,会研发或者私有化部署独立的数据系统,用于收集用户数据。但是大部分公司而言,更多的是专注业务本身,埋点 直接使用第三方的技术服务。

私有化部署优点是定制化的数据,保证数据的安全性和精确性;缺点是成本较高。

接入第三方服务
目前有很多做埋点和数据支持的公司,例如友盟、诸葛IO、GrowingIO、神策等等,也有埋入移动端、H5、Web等。

接入第三方服务优点是研发成本较低,几乎能满足企业的数据埋点需求;缺点是数据会存在不安全的风险,无法定制个性化埋点机制方案,接入收费依据不同需求不同。


三、数据埋点方案设计

1、确定数据埋点的时机

结合产品所在的阶段,“以终为始”,在收集之前得想明白,用数据来做什么;确定了目标再进行收集,可以起到事半功倍的效果,同时也更好地有的放矢。
通常,埋点技术,哪些埋哪些不埋,哪些先埋哪些后埋,是要考虑的事情。

数据埋点的时机:

  1. 产品初期没有数据埋点,后续埋点
  2. 每个迭代都进行埋点(建议,完整的设计方案包括指标的制定与回收)
  3. 全埋点

2、明确数据统计目的和意义

依据产品的需求,大致可以分为产品应用的全局数据、优化产品功能与指导运营三大类。

1)、全局数据(AARRR模型)
需要结合对业务的理解,从获取客户价值的角度出发,在所有事件中找出关键事件,并在关键事件的各个环节埋点布控,为后续在关键环节上的产品优化提供数据支持。根据AARRR模型,企业获取客户价值需经历以下五个环节:
image.png

制定核心指标:
image.png

2)、优化产品(基于后期分析方法判定埋点目标)

  1. 任务流分析法:根据产品设计的任务流,在任务流开始和结束处埋点,分析用户处理任务的情况
  2. 页面转化分析法:统计相关页面的转化率及页面元素点击率,分析用户行为。
  3. 情景分析法:列出各种用户使用场景,自己或多人体验不同场景下产品的使用流程,寻找依据设立数据埋点,通过数据反馈验证用户行为。

可以从以下的几点思路出发:
- 功能流程转化率:关键业务的留存转化指标尤为重要,用户在哪个关键节点发生了流失。

- 改版调整:如果产品做了改版,肯定会在一些关键入口进行了布局上的优化,那么埋点统计有利于收集变化前后的不同。

- 用户轨迹:用户来进入产品,记录第一件事情是做什么,然后还会做什么,从而挖掘出更深层次的需求。

3)、指导运营(基于商业目的埋点)
首先基于产品和业务确定商业目标,继而将商业目标拆解,完成数据原型设计。

例如,一次完整的活动运营,在工作的前中后阶段,对数据的需求如下:

- 活动前:需要了解面向的用户、兴趣、标签、来源,入口的引导和布局,有了这些,才可以更好地评估面向对象、渠道。而这些,在产品早期建立数据的时候,是需要第一时间就考虑的问题。

- 活动中:对数据的时效性要求更高,落地页或者活动页面的PV/UV、活动参与数、页面登陆数、中奖数、兑奖数、活动转化人数/金额以及用户信息等。必要的时候根据数据反馈及时调整问题和优化。

- 活动后:更加注重反馈和总结,对活动的复盘。本次活动的带来了多少的访问流量,转化率如何,不同渠道过来的用户表现如何,最终这些用户转化成活跃用户的又有多少。

3、数据埋点整体思路

首先,依据AARRR模型,制定核心指标产品全局数据指标;其次,依据业务建立业务流程的数据指标。

埋点大致分为三点:

  1. 点:基本事件埋点(单个事件的埋点)
  2. 线:流程(有场景化流程化的点事件组成)
  3. 面:业务模块(包含点、线埋点)

对一个完整产品的数据埋点来说,可以分三不部分:

  1. 第一,一般可以从AARRR模型开始,从获客、活跃、留存、营收、自传播五个方面去做基础的点型埋点;
  2. 第二,从场景化考虑,做重要流程的线型埋点;
  3. 第三,从业务模块入手,做重要业务的面型埋点(适用于迭代埋点)

现在成熟的埋点工具都会自动引入较为全面的全局数据指标机制,这里的埋点思路主要还是业务流程的埋点思路。

4、业务需求梳理

1)、梳理产品的产品结构
首先,先别急着马上就去建立埋点,此处应该是优先复盘当前的产品或者模块,整理出产品结构和页面结构。梳理出产品完整的结构、页面逻辑,这些都是决定了用户在使用产品时的任务路径,所以需要做一次完整的复盘。

2)、梳理产品页面流程
有了基础的梳理后,需要再将页面流程梳理出来。将用户与系统的交互故事完整的梳理出来。借助它,更容易知道流程中的潜在地雷是什么,哪里的效率比较低,有助于系统化、全局化、周全性的思考。后续可以在每个流程步骤,考虑好用户的目的、场景,提炼出重要指标。

3)、制作业务流程图:
- 充分理解业务需求与用户需求(在产品结构以及页面流程的基础上)
- 分析、找到所有角色
- 找到每个角色完成任务的所有接触点

  1. 和产品或某一渠道发生交互的关键点
  2. 通俗:用户做了某件事、用户看到某个信息不停的交错

- 梳理接触点

  1. 基于用户模型,经验,用户调研的体验故事(用户地图故事)
  2. 推理每个接触点的心理情况和行为动作(做事——看信息——做事)

- 处理异常流程
- 注意设计的完整性

  1. 不要随意地跳过某一页面,流程设计需要考虑到流程中出现的每个页面。
  2. 注意开头和结尾这会影响你的设计完整性。

4)、根据业务流程设计指标
在前面做了一系列的功课之后,定义好分析的目的,就可以开始依据业务流程,剥离关键流程,提炼关键指标。

  • 例如,购物环节的业务流程:
    1. 购物环节:宝贝详情页>加入购物车>订单确定>订单提交>支付>支付结果
    image.png

在这个过程中,需要采集到从详情页到购物车的转化,从详情页到订单确认的转化,订单从确认到支付成功之间的漏斗数据模型。

那么对应的数据采集,可以为详情页UV、购物车添加事件、订单确认事件、订单提交事件、支付事件、支付成功反馈事件。

  • 例如,想要了解注册流程的转化
    1. 注册流程:进入注册>注册信息填写>获取验证>注册成功
    image.png

想要了解注册流程的转化,可以主要采集注册按钮点击事件、提交信息事件、获取验证事件、注册成功事件,再加上能够统计到渠道包信息,那么也就可以分析出,不同渠道下的用户转化效果。

5、提出埋点需求

1)、收集事件
依据业务流程指标,制定这么一个事件收集表格:
image.png

2)、设置事件的参数和参数值
- 事件描述
数据埋点是为了更好的数据采集,通常记录用户行为的基本要素采用 4 W1 H 的方式,即人物(Who)、时间(When)、地点(Where)、行为(What)、方式(How)。用户在什么时间什么地点使用什么方式产生了什么样的行为来记录。

除了统计事件的触发次数外,还可以收集触发这个动作时,其他的附带信息。利用这类信息,有助于对事件有更加精准的统计,又称为参数(Key)和参数值(Value)。
事件、参数、参数值的关系如下:
image.png

根据业务流程指标和事件参数,在事件收集表格的基础上,可以制定并维护这么一份数据埋点需求表格:
image.png

示例:《越野侠数据埋点》

3)、制作数据埋点原型
依据业务流程和数据埋点需求表格,在对应的设计稿上,参考数据埋点的技术要求的数据格式,添加对应的数据埋点说明信息。

示例:
image.png

6、开发与测试校验

数据埋点是开发业务的一种,也是严格按照正常的开发流程进行的。依据不同的情况,可以在业务功能开发中添加数据埋点,也可以在业务功能开发完成后再添加相应的数据埋点。

1)、数据埋点开发
开发人员依据数据埋点原型和数据埋点需求表格,完成数据埋点的开发工作。

2)、数据埋点测试与校验
开发完成后,依据埋点需求,进行埋点数据的测试。

在最终上线验收的环节中,需要做一个预发环境的校验,避免影响后续对产品的判断。

7、数据分析与优化设计

依据数据统计目的和意义,以及搜集的用户行为数据,做具体的分析。案例:《whaleCode数据埋点方案》

数据分析不是本文的重点,关于数据分析,请查看《常见数据框架与技术》《交互设计师的数据分析》

由于数据不可见、数据不可靠、数据不可变,所有的数据分析的结果都有一定的局限性,它对产品的设计是指导性的,总是要结合产品设计理论与产品具体的情况,才能体现数据统计的价值。

image.png