接入前准备
最后更新于:2019-04-03 20:24:21
本节您需要达成如下目标:
理解什么是用户行为分析。
如何理解事件、用户、属性等概念。
1.什么是用户行为分析日常工作中,您可能会遇到如下问题:
产品经理新设计的功能,每天有用户在使用?新设计的按钮点击人数有没有变多?
运营部门刚上线的活动,浏览及参与情况怎么样?用户是在哪一步发生流失的?
渠道同学投放的广告,有多少用户点击了?这些用户后来有在落地页上发生注册吗?
要回答以上问题,我们需要关注用户在 App/H5/小程序 上的各种行为,并对用户行为进行统计和分析。以上述第一个问题为例,需要关注的行为包括:点击功能入口,进入新功能页面,点击目标按钮 等。如果对行为进行统计,则会得到如下指标
用户行为 | 统计指标 | |
点击功能入口 | 入口点击次数/人数 | |
进入新功能页面 | 新功能页面PV/UV | 新功能页面响应成功率(PV/入口点击次数) |
点击目标按钮 | 目标按钮被点击次数/人数 | 目标按钮点击率(点击次数/新功能页面PV) |
如果对行为进行分析,你可能会提出如下问题:
用户的三个行为之间,各步骤的转化率分别是怎么样的?哪一步是转化的关隘?前提是,准确的记录每一个用户的每一次行为。那么神策是怎么做到准确记录用户行为的呢? 通过不同入口进入新功能的用户,转化率是否有不同? 以上便是用户行为分析的一个小案例,这个过程我们经历了如下 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. 总结
对用户行为进行分析可以解答业务人员的各种常见问题。而开展分析的前提条件是,对行为准确的描述并进行采集。本节主要回答了"神策如何描述用户行为"这一问题,后续章节将回答"如何采集用户行为"。
这个问题我们将其拆解成 2 个子问题,首先,业务人员需要定义清楚采集哪些数据,请参考第 2 步:事件设计。
然后开发人员根据业务人员提供的文档进行代码实现,俗称”埋点“,请参考第 4 步:SDK 采集数据。