埋点(Event Tracking),是互联网数据采集工作中的一个俗称,正式应该叫事件跟踪,英文为 Event Tracking,它主要是针对特定用户行为或事件进行捕获、处理和发送的相关技术及其实施过程。
埋点数据主要是用来收集用户的行为数据的,网站收集用的的行为数据可以分析网站的运行效果、用户行为特点、业务的目标达成。同时,还可以通过这些数据,实现为用户提供个性化的推荐功能,以达到最大的业务转化率。它主要包括以下功能:
在产品流程关键部位植相关统计代码,用来追踪每次用户的行为,统计关键流程的使用程度。
在产品中植入多段代码追踪用户连续行为,建立用户模型来具体化用户在使用产品中的操作行为。
与研发及数据分析师团队合作,通过数据埋点还原出用户画像及用户行为,建立数据分析后台,通过数据分析、优化产品。
网站自己产生的业务数据,如新闻网站发布的资讯文章、电商网站发布的商品信息等内容存放在网站自己的业务数据库里,网站如果有需要可以随时同步到数据仓库或者调取使用,但用户的行为,一般不会以业务数据的形式在数据库里存储,这有以下几个原因:
用户的行为复杂:除了用户的基础的页面访问、链接点击跳转等行为外,还有诸如鼠标动作、滑动屏幕、实施重力感应等交互行为,这些行为呈现多样性,无法全部列举,在设计业务系统时一般不做考虑。
用户的行为数据量大:用户在产品上的行为互动频繁,尤其在移动互联网场景下多屏互动时,产品设计更倾向于引导用户完成相应的目标,用户也乐于与软件进行流畅的互动。
用户的行为数据对业务无依赖:用户的行为数据与产品的主业务关联不大,用户的行为往往用于对用户进行后续的个性化的服务,但不会产生即时的影响。
基于以上原因,我们需要专门收集用户的行为数据,就需要用到埋点操作。
埋点的方法有很多种,大部分是利用第三方统计工具(如云眼),也有在产品研发的时候直接在程序里嵌入代码统计搭建自己的后台以供查询。
埋点的方式包括:手工埋点、可视化埋点、自动化埋点等。
按实现机理可以分为:手工编码嵌入、自动编码嵌入、运行时嵌入等。
使用第三方sdk埋点:如百度统计、友盟、TalkingData、Google Analytics、Sensors Analytics等都提供了这一方案。
1.上报的时机:时机就是事件场景,因什么而发生,发生了什么,由谁来触发。触发者可以是用户、系统、运营人员,本质还是系统,系统是事件发生的代理者。一个时机应该包含以上的隐含信息。常见的时机有:点击、浏览(访问)、曝光、播放、结果等事件。
事件往往站在结果的角度,对业务的影响,更加业务化。这时,事件不会过于关注埋点的触发场景,更多的聚焦在业务结果上。因此,事件往往有很多的时机,多种时机会产生一个事件。常见的事件有:关注、购买、收藏、下载、播放、曝光等等我们发现,上边很多事件其实都是由「点击」而来的。
2.上报的上报信息:埋点上报的信息一般分为:
1)公共信息:一般为用户的全局信息,包含设备、网络、个人、页面、位置模块、时间等与业务无关的通用信息。
2)业务公共信息:一般为主数据信息,商品、内容、订单等与业务内容相关的信息,一般为企业多个业务共用的信息。
3)自定义信息:业务内容的信息。
4)扩展信息:特殊场景下上报的信息。
以下是一个埋点设计表:
3.埋点信息主要包括:
1)基本信息
- SDK版本
- 事件产生的时间
- 服务端接收的时间
- 本次启动的时间
- Sessionid
2)用户信息
- 账号ID
- 用户昵称
- idfa/imei md5加密值
- 设备id
- 是否首日访问
- 国家
- 城市
- 省份
- 县区
- 会员等级
3)设备信息
- 操作系统
- 操作系统版本
- 手机型号
- 设备制造商
- 设备型号
- 屏幕高度
- 屏幕宽度
- 经度
- 纬度
- 深色模式
- 是否 WiFi
- 网络类型
- 运营商名称
- IP
- UA信息
4)应用信息
- 是否是灰度版本
- 当前渠道
- 应用内部版本号
- AB测试标识
- 实验ID
- 包名
- 是否青少年模式
- 夜间模式
- 位置是否授权
- 提醒是否开启
- 安装渠道
5)位置信息
互联网产品,特别是面向 C 端的产品,在内容呈现方面往往以区块为主体分隔,在区块中展现具体的业务内容。模块是指在展示界面中展示一批具体内容的区域。这些区域内部来看,往往承载了相同性质的内容,如视频、文章、商品等,或者表达了一种聚合方式,如推荐模块中的内容类型可能是混杂的,但此模块则表示模块中的内容全部来自于推荐。
在模块的外部来看,不同模块代表了不同的内容类型,或是不同的内容维度。
模块的编码:模块的顺序一般是从左到右,从上到下,并对界面中所有的内容全部(包括弹窗、默认隐藏内容等)纳入编码范围。
- A.界面信息:
- 当前页面
- 当前URL
- URL参数
- 当前URI
- 上一页
- 页面标题
- 形式(原生/H5)
- B.界面层级:
- 一级
- 二级
- 三级
- 四级
- C.模块信息:
- 模块名称
- 父模块名称
- 模块位置顺序
数据埋点可以根据用户在APP上的一系列操作线索,提炼有用的信息,进行数据分析。重点不在于埋点的作用,其实在于获取埋点数据后的二次加工,如何分析输出业务分析结论。
1、分析运营机制的合理性
如移动APP上大多都有用户分享的功能,一般的营销手段是通过老拉新的方式,运营设定一些奖励机制,用来提高APP的注册量。
提前在用户分享键返回后台重新进入购买页面埋点,就能记录到页面的访问次数和转化率,用于分析奖励机制对用户的刺激性,指导策略方向。
2、分析产品功能的合理性
如产品设计了新功能想提高下用户的满意度。提前在新功能的各个按钮上进行埋点,就能获取到用户使用新功能的次数,以及在新功能的使用行为,可以分析用户是否对新功能比较感兴趣,页面的跳转设置是否合理等。
3、分析用户消费行为,挖掘流失点
如老板问你为什么最近收益这么少。在用户消费的核心页面和按钮进行埋点,就能记录到每个流程的转化率,用于分析用户漏斗的哪一个阶段出现了问题,结合业务输出解决方案。
4、监控产品的流畅性
如产品刚上线阶段,需要监控用户使用过程中,各个页面或按钮响应的流畅性是否存在问题。提前在核心功能页面和按钮进行埋点,就能记录到每个页面和按钮的衔接情况,发现问题及时解决,以免影响用户体验。
5、分析不同渠道的用户行为差异
如市场推广常常需要分析不同渠道的用户转化情况,以便减少推广成本。提前在各个渠道进行埋点,记录各渠道用户在APP中的后续行为,调整推广策略。