所谓埋点就是在应用中特定的流程收集一些信息,用来跟踪应用使用的状况,后续用来进一步优化产品或是提供运营的数据支撑,包括访问数(Visits),访客数(Visitor),停留时长(Time On Site),页面浏览数(Page Views)和跳出率(Bounce Rate)。这样的信息收集可以大致分为两种:页面统计(track this virtual page view),统计操作行为(track this button by an event)。
通俗来说就是,对用户的操作进行编码解码映射的过程。
数据埋点分三个阶段:
初级的数据埋点:在产品流程关键部位植相关统计代码,用来追踪每次用户的行为,统计关键流程的使用程度。
中级的数据埋点:在产品中植入多段代码追踪用户连续行为,建立用户模型来具体化用户在使用产品中的操作行为。
高级的数据埋点:与研发及数据分析师团队合作,通过数据埋点还原出用户画像及用户行为,建立数据分析后台,通过数据分析、优化产品。
埋点的意义:
数据埋点为了统计分析的需要,对用户行为的每一个事件进行埋点布置,并对这些数据结果进行分析,进一步优化产品或指导运营。
现在埋点的主流有两种方式:
名词解释:
访问次数(Visits)与访问人数(Vistors)是几乎所有应用都需要统计的指标,这也是最基础的指标。
对于应用的统计来说,经常看到的DAU,MAU,UV等指标都是指统计访客(Vistors)。访问(Visits)是指会话层,用户打开应用花一段时间浏览又离开,从指标定义(访问次数)来说这被称之为统计会话(Session)数。
一次会话(Session 或 Visit)是打开应用的第一个请求(打开应用)和最后一个请求决定的。如果用户打开应用然后放下手机或是离开电脑,并在接下来30分钟内没有任何动作,此次会话自动结束,通常也算作一次访问或会话期(30分钟是早起网页版应用约定俗成的会话数定义,目前用户停留在应用的时长变长,30分钟的限定也可能随之不同,总之是能代表一次用户访问的时长)。
在计算访问人数(Vistors)时,埋点上报的数据是尽可能接近真实访客的人数。对于有需要统计独立访客这个指标的场景,这里还是需要强调一下,访问人数(Vistors)并不是真实独立的人,因此收集数据时必须知道访问人数虽然能够很好的反映使用应用的真实访问者的数量,但不等于使用应用的真实人数。(原因是,重复安装的应用,或是手机参数被修改都会使得独立访客的指标收到影响。计算访问人数的埋点都是依赖Cookie,用户打开应用,应用都会在此人的终端创建一个独立Cookie, Cookie会被保留,但还是难免会被用户手动清理或是Cookie被禁用导致同一用户使用应用Cookie不一致,所以独立访客只能高度接近于使用应用的真实人数。)
停留时长用来衡量用户在应用的某一个页面或是一次访问(会话)所停留的时间。
页面停留时长,表示在每个页面所花费的时间;例如:首页就是进入首页(10:00)到离开首页进入下一个页面(10:01)的时长,首页停留时长计算为1分钟。页面A是2分钟。停留时长的数据并不都是一定采集得到的,比如页面B进入时间(10:03),离开出现异常或是退出时间没有记录,这时候计算就是0 (所以指标计算时需要了解埋点的状况,剔除这样的无效数据)。
应用的停留时长,表示一次访问(会话)所停留的时间,计算起来就是所有页面的访问时长,同样是上一个流程,应用的停留时长就是4分钟。
跳出率的计算方法现在在各个公司还是很多种,最经常被使用的是:用户只访问了一个页面所占的会话比例(原因是:假设这种场景,用户来了访问了一个页面就离开了,想想用户使用的心里画面应该是:打开应用,心想什么鬼,然后关闭应用甚至卸载了。这个场景多可怕,这也是为什么跳出率指标被如此关注)
跳出率可以分解到两个层次:一是整个应用的跳出率,二是重点的着陆页的跳出率,甚至是搜索关键词的跳出率。跳出率的指标可操作性非常强,通过统计跳出率可以直接发现页面的问题发现关键词的问题。
退出率是针对页面的,这个指标的目标很简单,就是在针对某个页面有多少用户离开了应用,主要用户反映用户从应用离开的情况。哪些页面需要被改进最快的方式被发掘。(注意:退出率高不一定是坏事。例如:预测流程的最终节点的退出率就应该是高的)
我们在产品上投入这么多,不就是为了衡量产出么?所以对于电商类应用,还有比转化率更值得关注的指标吗?转化率的计算方法是某种产出除以独立访客或是访问量,对于电商产品来说,就是提交订单用户数除以独立访客。
转化率的计算看起来想到那简单,但却是埋点中最贴近业务的数据收集。这也是最体现埋点技巧的指标,需要结合业务特点制定计算方法。提交订单量/访客数是最基本的转化率,转化率还可以分层次,指定用户路径的,如:完成某条路径的提交订单数/访客数。
试着找一条路径,想想转化率的数据怎么得来的吧,埋点都收集了什么样的数据吧?
参与度并不是一个指标,而是一系列的指标的统称,例如访问深度,访问频次,针对电商的下单次数,针对内容服务商的播放次数,及用户行为序列这些都可以是衡量参与度的指标。之所以把参与度列为一个指标,是希望大家明白把指标结合业务,产生化学反应,活学活用去发现事物的本质。
为了统计到所需要的指标,应用中的所有页面,事件都被唯一标记,用户的信息,设备的信息,时间参数以及符合业务需要的参数具体内容被附加上报,就是埋点。
最理想的埋点方式?
回到一开始的问题:何种埋点方式最理想呢?
正如同硬币有两面,任何单一的埋点方式都存在优点与缺点,企图通过简单粗暴的几行代码/一次部署、甚至牺牲用户体验的埋点方式,都不是企业所期望的。要满足精细化、精准化的数据分析需求,可根据实际需要的分析场景,选择一种或多种组合的采集方式,毕竟采集全量数据不是目的,实现有效的数据分析,从数据中找到关键决策信息实现增长才是重中之重。
因此,数据采集只是数据分析的第一步,数据分析的目的是洞察用户行为,挖掘用户价值,进而促进业务增长,故最理想的埋点方案是根据根据不同的业务和场景以及行业特性和自身实际需求,将埋点通过优劣互补方式进行组合,比如:
1、代码埋点+全埋点:在需要对落地页进行整体点击分析时,细节位置逐一埋点的工作量相对较大,且在频繁优化调整落地页时,更新埋点的工作量更加不容小觑,但复杂的页面存在着全埋点不能采集的死角,因此,可将代码埋点作为辅助,将用户核心行为进行采集,从而实现精准的可交叉的用户行为分析;
2、代码埋点+服务端埋点:以电商平台为例, 用户在支付环节,由于中途会跳转到第三方支付平台,是否支付成功需要通过服务器中的交易数据来验证,此时可通过代码埋点和服务端埋点相结合的方式,提升数据的准确性;
3、代码埋点+可视化埋点:因代码埋点的工作量大,可通过核心事件代码埋点,可视化埋点用于追加和补充的方式采集数据。
【参考】:https://www.zhihu.com/question/36411025
https://www.imooc.com/article/27151