APP的数据采集与埋点方式分析
前言:
神策数据写过几篇分析APP前后端埋点的文章,原文在此:
https://sensorsdata.cn/blog/shu-ju-jie-ru-yu-mai-dian/
http://www.woshipm.com/data-analysis/665420.html
我在此总结一下。
正文:
埋点是指产品使用过程中,通过对用户事件的追踪,获得想要统计的用户数据,进而分析产品使用情况。
针对一个手机端APP来说,埋点有前端埋点、后端埋点(后端数据收集)这两种方法。
目前常见的前端埋点技术,有三类:
1、在某个控件操作发生时通过预先写好的代码来发数据的代码埋点;
2、通过可视化界面配置控件操作与事件发生关系的可视化埋点;
3、先收集所有数据再在后端筛选需要分析的对象的“无埋点”。
神策建议数据收集遵循两个基本原则:
1、优先在后端收集数据;
2、属性尽可能采集全面。
神策数据为保证数据采集做到“大、全、细、时”,更推荐“后端埋点”:当前后端都可以实现数据采集时,应优先考虑后端(代码)埋点,尤其在各行业中有特殊业务需求的数据,更是强烈建议通过后端(代码)埋点方式采集。
尤其以下类型的企业更应该首选后端埋点:
1、追求精细化运营,需要进行多维数据分析的企业
2、包含用户资产数据、用户账户体系相关数据、风控辅助数据等重要业务数据的网站或APP的企业
3、对数据安全要求比较高的企业
相对应的,在前端埋点就有以下缺点:
1、需要等待网络情况良好才能发送数据
2、需要积攒一定的量才发送数据
3、需要在本地暂存而本地暂存空间有限等一系列在数据传输性和数据可靠性上的一些问题。
但是,前端埋点毕竟有一些后端采集数据所无法替代的地方,例如,分析前端界面设计是否合理,分析一些在与后端没有交互的前端行为等,还是必须采用前端埋点方案的。
前端埋点的技术原理是:
在APP或者界面初始化的时候,初始化第三方数据分析服务商的SDK,然后在某个事件发生时就调用SDK里面相应的数据发送接口发送数据。
目前百度统计、友盟、TalkingData 等都提供了这一方案。
直接用代码处理每个事件太过麻烦。
而可视化埋点就稍微先进了一些,把核心代码和配置、资源分开,在APP启动的时候通过网络更新配置和资源即可,免除了每个版本都要修改埋点代码的问题。同时这样还方便了后端管理数据。
“无埋点”则是先尽可能收集所有的控件的操作数据,然后再通过界面配置哪些数据需要在系统里面进行分析。显然会有巨大的性能问题,不可取。
总结:
个人认为,埋点要看具体业务需求,从公司性质、业务性质、产品所处阶段综合来看。数据采集不是难事,重要的是数据分析。