第 1 步:接入前准备

最后更新于:2019-05-23 10:48:57

本节您需要达成如下目标:

  • 理解什么是用户行为分析

  • 理解用户行为分析领域事件、用户、属性等概念

1.什么是用户行为分析

日常工作中,您可能会遇到如下问题:

  • 新上线的产品功能,每天有用户在使用?新设计后的订单页面成交比率有没有提高?

  • 运营刚上线的活动,用户参与情况怎么样?用户是在哪一步发生流失的?

  • 渠道投放的广告,有多少用户点击了?这些用户后来有在落地页上发生注册吗?

要回答以上问题,我们需要关注用户在咱们产品上的各种行为,并对用户行为进行统计和分析。以上述第一个问题为例,需要关注的行为包括:点击功能入口,进入新功能页面,点击目标按钮 等。如果对行为进行统计,则会得到如下指标

用户行为 统计指标
点击功能入口 入口点击次数/人数
进入新功能页面 新功能页面PV/UV、新功能页面响应成功率(PV/入口点击次数)
点击目标按钮 目标按钮被点击次数/人数、目标按钮点击率(点击次数/新功能页面PV)

如果对行为进行分析,你可能会提出如下问题:

  • 三个行为之间,各步骤的转化率是怎样的?

  • 不同入口进入新功能的用户,后续转化率是否有不同?

以上是围绕用户行为分析的一个小案例,这个案例展现了我们做行为分析需要经历的3个步骤:
1、提出业务问题
2、定义问题的分析对象,具体是哪几个行为
3、对行为进行统计和分析

实际上第 2 步和第 3 步之间,我们有意忽略了行为数据的采集,这项工作涉及的面非常广,且复杂度高。后面我们将对这项任务进行拆解并逐步介绍。

在着手数据采集工作之前,首先需要了解神策是如何用数据的方式来描述用户行为,便于后续工作的开展。

2.如何描述用户行为

在神策分析中,我们使用“事件模型(Event 模型)”来描述用户的各种行为,事件模型包括事件(Event)和用户(User)两个核心实体。

为什么这两个实体结合在一起就可以清晰的描述描述清楚用户行为?

实际上,我们在描述用户行为时,往往只需要描述清楚几个要点,即可将整个行为描述清楚,要点包括:是谁、什么时间、什么地点、以什么方式、干了什么。

而事件(Event)和用户(User)这两个实体结合在一起就可以达到这一目的。下面分别介绍一下这两个实体。

2.1 Event 实体

一个完整的事件(Event),包含如下的几个关键因素:

Who:即参与这个事件的用户是谁。
When:即这个事件发生的实际时间。
Where:即事件发生的地点。
How:即用户从事这个事件的方式。这个概念就比较广了,包括用户使用的设备、使用的浏览器、使用的 App 版本、操作系统版本、进入的渠道、跳转过来时的 referer 等,目前,神策分析预置了如下字段用来描述这类信息,使用者也可以根据自己的需要来增加相应的自定义字段。
$app_version:应用版本
$city: 城市
$manufacturer: 设备制造商,字符串类型,如"Apple"
$model: 设备型号,字符串类型,如"iphone6"
$os: 操作系统,字符串类型,如"iOS"
$os_version: 操作系统版本,字符串类型,如"8.1.1"
$screen_height: 屏幕高度,数字类型,如1920
$screen_width: 屏幕宽度,数字类型,如1080
$wifi: 是否 WIFI,BOOL类型,如true

What:以字段的方式记录用户所做的事件的具体内容。不同的事件需要记录的信息不同,下面给出一些典型的例子:
对于一个“购买”类型的事件,则可能需要记录的字段有:商品名称、商品类型、购买数量、购买金额、 付款方式等;
对于一个“搜索”类型的事件,则可能需要记录的字段有:搜索关键词、搜索类型等;
对于一个“点击”类型的事件,则可能需要记录的字段有:点击 URL、点击 title、点击位置等;
对于一个“用户注册”类型的事件,则可能需要记录的字段有:注册渠道、注册邀请码等;
对于一个“用户投诉”类型的事件,则可能需要记录的字段有:投诉内容、投诉对象、投诉渠道、投诉方式等;
对于一个“申请退货”类型的事件,则可能需要记录的字段有:退货金额、退货原因、退货方式等。
描述事件的任意一个字段,都是一个事件属性。应该采集哪些事件,以及每个事件采集哪些事件属性,完全取决于产品形态以及分析需求。

2.2 User 实体

每个 User 实体对应一个真实的用户,每个用户有各种属性,常见的属性例如:年龄、性别,和业务相关的属性则可能有:会员等级、当前积分、好友数等等。这些描述用户的字段,就是用户属性。

3. 总结

本节以一个实例充分说明了用户行为分析的价值,并解释了“神策如何用数据的方式来记录用户行为”。
后续章节将针对”神策如何采集用户行为“进行解答。
这个问题我们将其拆解成 3 个子问题,首先,我们需要识别行为发生的“当事人”是谁,即 Event 实体中第一个关键因素 Who,详见第 2 步:如何准确的标识用户
其次,业务人员需要定义清楚采集哪些数据,搞清楚在哪些地方埋什么样的点,相关介绍请参考第 3 步:事件设计
然后开发人员根据业务人员提供的“事件设计”文档进行代码埋点,详细内容请参考第 4 步:SDK 采集数据