数据分析主要基于用户的行为数据,而这些数据的获取都来自数据埋点的上报。
1、什么是埋点
所谓埋点,就是在APP中特定的位置或者功能中埋下数据点,以收集一些信息,用于跟踪APP使用的状况,为后续优化产品或者运营提供数据支撑。
埋点埋什么取决于我们想从用户身上获取什么信息,一般主要分为用户的基本属性信息和行为信息。
- 用户的基本属性信息主要包括城市、地址、年龄、性别、经纬度、账号类型、运营商、网络、设备等。
- 行为信息即用户的点击行为和浏览行为,在什么时间、哪个用户点击了哪个按钮、浏览了哪个页面、浏览时长等数据。
埋点主要有以下两种方式。
- 第一种:自己公司的研发人员在产品中注入代码来统计,通常有客户端埋点和后台埋点。
- 第二种:第三方统计工具,如友盟、神策、Talkingdata、GrowingIO等。
在产品上市初期,一般会使用第二种方式来采集数据,并直接使用第三方分析工具进行基本的分析。这种方法不需要花费较大的人力去维护数据,其缺点是可能有数据泄露的风险,同时数据使用的灵活度会受到一定的限制,无法进行较深入的分析。如果企业对数据安全比较重视,业务又相对复杂,则通常使用第一种方式采集数据,并建立自己的数据分析平台。这种方式需要花费大量的人力从零开始创建大数据平台,从零开始采集数据,但保证了安全性及灵活性,数据分析师可以根据自己的需求进行埋点。
2、为什么埋点
埋点是为了对产品进行全方位的持续追踪,通过数据分析不断指导优化产品。数据埋点的质量直接影响数据、产品、运营等的质量。
- 产品迭代:产品的迭代离不开用户的行为数据,通过用户行为分析产品是否有问题,如用户注册过程中的页面转化挖掘,这些数据都依赖埋点上报的数据。
- 精准用户运营:对用户进行精细化运营需要对用户进行分层,用户的分层离不开埋点上报的用户行为数据。如针对用户的付费RFM分群就是基于埋点上报的关于用户付费时间及金额的数据。
- 完善用户画像:基本属性(性别、年龄、地区等)、行为属性(设备操作习惯等)等数据都依赖埋点的上报才可以获取到。
- 产品指标计算:公司内部涉及的常见核心指标,如DAU(日活跃用户数)、MAU(月活跃用户数)、活跃时长、留存率、付费用户数、付费金额等,都需要通过埋点的上报然后进行计算。
- 算法依赖:现在越来越多的APP都需要推荐算法来给用户推荐符合他们偏好的内容或者功能。推荐算法背后依赖的是用埋点上报的数据进行加工后的用户行为特征。
3、怎么设计埋点
要设计一个完整的埋点方案,需要具备以下4个要素:明确埋点目标、确认上报变量、明确上报时机、明确优先级。
- 明确埋点目标
每一个埋点的需求都是为了解决某个业务的需求,所以在写埋点方案时,需要明确这次方案是为了上报什么具体的数据。这个数据是为了解决业务方的什么具体需求,这些数据的上报大概可以带来哪些业务收益。
埋点目标需要对业务有一定的了解,所以需要跟业务方沟通,保证埋点需求的科学性,以免很多埋点只是数据分析师自己的想法,却不是业务方关注的。
明确埋点目标有助于数据分析师对埋点的把控,知道每一次埋点的方案是否必要及重要,以免乱提无用的埋点或埋点目的不清晰的需求。明确埋点的目标有助于整个埋点方案的设计,更好地设计出完整、高效的埋点。
- 确认上报变量
上报变量主要是由事件和其他参数变量组成的,其中事件是必须的,用于标识这一次具体的操作。事件的上报主要用于捕捉用户的行为,知道用户具体操作了哪一个按钮、访问了哪一个页面、滑动了哪一个页面等。
其他参数变量一般是和事件相关的,其他参数的上报用来帮助我们获取和用户操作行为相关的数据。因为在实际场景中,当用户执行了一个操作时,我们需要知道很多和这个行为相关的信息。比如,当用户在使用淘宝APP搜索某个商品时,事件记录了用户操作这个行为,但是我们不知道是哪一个用户用了什么设备搜索了什么,所以要用其他参数来上报用户搜索的关键字,用户的ID、设备及其他关注的内容。
参数变量在具体的分析中起到非常重要的作用,事件的上报可以让我们分析出用户做了什么具体的行为,参数变量的上报可以让我们完整深入地分析这个行为。
- 明确上报时机
事件的触发时机,往往是影响数据准确性的重要因素。以用户的点击行为为例,如要统计用户点赞行为,我们是在用户点击点赞按钮时上报还是在用户成功点赞后上报,其结果是有偏差的。
经常遇到的另外一种场景是,用户停留时长的上报,停留时长指的是用户在一个APP中停留的总时间,一般有两种典型的上报方法。
- 第一种方法是上报用户的进入时间及用户的退出时间,这样我们做数据统计时就可以直接计算出用户的停留时长。这种方法的缺点是如果进入时间或者退出时间有一个丢失未上报,那么用户的停留时长相减后就会有问题。
- 第二种方法是直接统计好用户的停留时长,然后进行上报,这种上报方法避免了上述问题,同时也避免了后续的计算,但是在开发成本上会比第一种方法多一些。
不同的触发时机代表不同的数据统计口径,我们要尽量选择最贴近业务的统计口径,然后与开发人员沟通,在可行性与业务贴合度之间找到最优解。
- 明确优先级
一般情况下,我们会同时提出多个埋点需求,这时就需要规划好这些埋点需求的优先级。提交给开发人员后,他们可以根据优先级来调整。
埋点的优先级主要是根据上报数据的重要性及紧急性确定的。比如,版本功能的需求埋点,埋点优先级较高的是基础指标的统计,用户的操作行为明细略微低一点。因为每次发版的新功能,业务侧最先关注的是基础指标,例如多少人用了这个功能、用的频次等,我们需要保证基础的数据指标齐全,其次才是深入分析所需要的数据。