用户行为分析是产品调优、用户精准运营的基础,而良好的数据采集方案,则是进行准确的用户行为分析的基础。
代码埋点、无埋点、可视化埋点、全埋点、前端埋点、后端埋点,叫法很多,实际上可以简单的分为客户端埋点(即前端)与服务器端埋点(即后端)。而前端埋点根据实现方式可分为可视化埋点与代码埋点,后端埋点统一都是代码埋点方式。
一、代码埋点VS无埋点(全埋点、可视化埋点)
代码埋点方式档案卡
概念 :代码埋点是指在产品开发阶段,PM通过对产品上线后需要做的数据分析的场景,设计数据需求,撰写数据需求文档,然后交由开发在每个需要采集的数据点写入代码,通过写入的代码进行数据监测与上报。代码埋点又会分为前端埋点与后端埋点,前端埋点是指在web、app这样的产品内写入代码,而后端埋点是指在数据服务器内写入代码。
应用场景 :需要分析app内用户事件、需要进行多维用户行为分析、需要精确分析服务器端数据
优势 :1. 同时适用于客户端与服务器端数据采集 2. 可进行多维度属性定义,采集数据进行自动分类 3. 后端代码埋点可提高数据准确度,适用于精细数据分析
劣势 :1. 前期需做好埋点设计 2. 开发工作量大,出错率高 3. 版本更新后有可能需要部分重新埋点
实现方式 :PM整理数据需求、PM与开发沟通确定埋点文档、开发进行手动埋点、PM根据业务需求进行数据分析、埋点方案迭代调整
数数科技SDK埋点后的事件上传
注:大型公司,开发产品较多,会碰到比较通用的埋点需求,因此会开发适合此类通用需求的SDK以减少埋点工作量。而中小型、产品数量较少的公司,会选择纯手动代码埋点或借助外部SDK的方式,开展埋点工作。
无埋点方式档案卡
概念 :无埋点属于前端埋点的一种方式,开发通过加入“无埋点”采集代码,对网页或者APP上所有的可交互事件元素进行解析并监测,当有用户操作行为(交互事件)发生时,即对此事件进行采集、上报,因此“无埋点”与“全埋点”是相同的概念。无埋点并不是不用写入任何代码,而是通过代码将所有事件元素解析后,以可视化的方式呈现,让PM、运营经理等可以根据需要自行手动选取、标定。为了与开发逐一进行代码写入的方式进行区分,被称作可视化埋点。可视化埋点通常通过第三方工具实现,美国Heap公司于2013年将无埋点方案推向商业化。
应用场景 :产品上线初期无明确业务和交易数据、只需要对web界面进行分析
优势 :1. 部署简单,工作量小2. 数据全量采集,前期数据设计要求低 3. 使用简单,业务人员可自行操作
劣势 :1. 无法记录详细事件属性 2. 因为缺乏事件属性,分类报告生成繁琐,需手动添加事件属性 3. 属于前端埋点,数据准确度偏低
实现方式 :开发在产品中加入全埋点监测代码、PM/运营根据需要进行可视化埋点选择、PM/运营进行数据分析应用
通过HeapAnalytics实现可视化埋点
注:因为不存在完全不依赖统计代码就可以实现数据收集的方式,所以无埋点的说法并不准确。
二、前端埋点VS后端埋点
前端埋点档案卡
概念 :前端埋点也称客户端埋点,指在APP或者web产品中植入代码,对用户在产品内的行为事件数据进行收集,用户一旦触发了该事件,就会上传埋点代码中定义的、需要上传的有关该事件的信息。前端埋点会包含代码埋点与可视化埋点方式。
应用场景 :产品运营阶段初期,功能简单,无深度分析需求;分析事件与后端无交互;
优势 :可统计app内与服务器无交互事件数据
劣势 :出现丢数据的情况,和自己的业务数据库数据对不上。这是前端数据采集的先天缺陷,因为网络异常,或者统计口径不一致,都会导致数据对不上
数据埋点过程中通过公共事件设置,减少工作量
后端埋点档案卡
概念 :后端埋点也称服务器端埋点,通过开发在服务器端写入代码,采集客户端与服务器端会存在交互的事件数据,以及存储在业务服务器中的业务数据。
应用场景 :产品功能复杂,需进行深度下钻与多维分析;用户行为数据与业务数据整合分析;数据保密性高;分析项与后端交互,前后端均可采集的数据;涉及充值、退订等的重要事件
优势 :1. 避免多个客户端埋点 2. 采集数据准确
劣势 :1. 客户端与服务器端无请求交互的数据 2. 无法进行客户端行为事件精确统计(如提交订单,用户可能是点击了3次才提交成功)
三、3种数据埋点采集方式对比
选用哪种方式往往是根据产品形态、发展阶段而定,有可能前期采用可视化埋点方式,后期采用可视化埋点+后端代码埋点方式;也有可能前期采用前端代码埋点,后期前端+后端代码埋点方式;而对于没有交易、广告位类型的企业官网,采用Google Analytics或百度统计这样的外部工具即可。
四、梳理清楚思路之后要学会节省精力
据调查:数据团队的绝大部分时间都浪费在数据采集、清洗的基础工作上了。
产品经理、运营经理、数据分析师、开发为了数据收集、整理的事情会花费很大精力,导致没有足够时间真正结合业务需求进行数据分析,那么有没有什么好的方式可以减少这部分工作量呢?
结合业务需求,活用外部工具
可以尝试多个外部工具搭配使用,减少内部自己开发,借助使用了分布式框架可以对亿级数据实时分析的工具提高分析速度等。比如通过Google Analytics做网页分析,通过Heap Analytics初识可视化埋点,通过 数数科技ThinkingAnalytics 系统app、小程序、服务器等全端数据采集SDK,实现多维的深度用户行为分析。
用好所有工具的基础都是对自己产品逻辑、业务的清晰分析。从而能够在前期设计良好的埋点方案、在后期分析时根据业务需求灵活应用数据,有分析结果之后能够做出准确的判断与运营决策。