公开课第3期:国内APP的跟踪监测原理与方案选择

Google Analytics Haran 6年前 (2017-11-13) 7150次浏览 6个评论

鉴于有读者反馈视频查看不方面而且耗时,本期采用图文的形式讲解。
公开课第3期:国内APP的跟踪监测原理与方案选择
这一节要介绍国内APP的跟踪原理与方案,主要讲解目前市面上一些工具采取的主流的跟踪方式和原理,以及其中的优缺点,让大家在选择第三方工具的时候心里有个底,而不是只是看第三方宣传吆喝。

公开课第3期:国内APP的跟踪监测原理与方案选择
这一节主要分为四大点,第一点是国内APP跟踪的现状,由于Google Play不能在大陆使用,说造成了现在国内安卓应用市场百花齐放,这给跟踪增加了不少难度;第二点是介绍目前市面上主要采取的集中跟踪方案和优缺点,第三个是,对比目前市面上集中比较热门的工具的所采用的方案;最后一个就是怎么选型了。
在正式进入正题之前,我们先来了解一下广告主和APP下载跟踪的整个流程,看这个流程主哪些参与者能够获取数据,看下图:
公开课第3期:国内APP的跟踪监测原理与方案选择
首先,是广告主,广告主通过广告平台去投放广告,吸引用户点击去应用市场下载APP,然后激活使用,在这个过程中,广告平台可以知道广告的展示和点击,应用市场可以知道下载,最终的激活这个数据就需要做跟踪才有的,激活的数据可以传递会前面不同的几个参与者,如应用市场,这个通常是操作系统本身才有的,如苹果的IOS和Google的google play,另一个是广告平台的,广告平台有些是目标优化或使用look alike这个功能,需要应用回传一些数据,最后一个就是广告主的,非常关心整个流程的转化,投入产出,ROI等,一般会使用第三方工具做监控,也就是我们这一节要讲到的。

公开课第3期:国内APP的跟踪监测原理与方案选择

目前操作系统主要是Android和IOS,虽然仍有部分使用微软的wp或其他的linux类的操作系统,但主流是安卓和苹果,可以说,手机系统,不是安卓就是苹果了
安卓的话,谷歌官方有个应用市场Google play,一般内置在系统里面,国外用户下载APP都是通过google play下载,APP的跟踪继续沿用web的逻辑,Google play能够传递传递referral参数,能够跟Google Analytics无缝对接。
但是在国内,由于一些政策因素,谷歌的这部分服务不能在大陆使用,国内的用户连不上google play,这个机遇催生了很多的应用市场,这跟跟踪带来的一定的难度,目前采用主要形式是渠道包,也就是每个渠道带一个包,内嵌一个id,通过id去识别;另一种方法是模糊匹配了,这个是比较少用的。

IOS的话,绝大部分的用户下载APP都是通过APP Store,只有部分越狱用户通过第三方市场去下载,现在越狱的已经很少了,所以这里主要讲解APP Store的跟踪方式,IOS是个比较封闭的系统,所以你能跟踪什么,能跟踪多少,取决于苹果开放了多少,目前苹果主要有3中跟踪方式
1、IDFA IDFA就是广告标示符,广告平台回传给第三方工具IDFA,用户下载后激活APP是也会回传IDFA,两者进行匹配。
2、cookie 用户点击推广链接的时候,链接上有广告参数,app在后台打开safari,然后将链接上的广告参数写入到cookie,然后跳转到app store下载,用户打开APP的时候,会沿用之前的cookie,实现广告参数的传递与回传。
3、模糊匹配,下载激活前后获取用户设备的指纹,如ip user agent idfa等,然后使用算法进行匹配。

下面来看看每种方式的具体实现原理,首先来看看安卓平台的

Android—Google Play
公开课第3期:国内APP的跟踪监测原理与方案选择
google Play的广告参数有一个完善的机制,这个机制也可以被第三方工具使用个,我在有些网站有看到第三方工具对这个原理做了测试,下面以google analytics讲解Google play如何实现广告参数传递的。
首先是用网址构建器对APP的下载链接添加广告参数,需要注意app的网址构建器跟web是不同的,用户在从google play 下载APP的时候,BroadcastReceiver会发送一条带有Referral的广播给APP,用户打开APP的时候,前面的广播就会发给GA,GA的接收器就接收到这个referral,这个用户就带上了对应的渠道标签了。
google Analytics 和Google Play都是谷歌的产品,所以整个过程可以无缝链接的。

Android—国内应用市场
公开课第3期:国内APP的跟踪监测原理与方案选择
众所周知 Google Play 无法在中国使用,所以国内 Android 市场被数十家应用商店( 豌豆荚、百度助手、酷市场、360手机助手等等 )占领,应用市场可以分成两个阵营,一类是大型互联网公司,如腾讯的应用宝,百度的手机助手,360的360应用市场,另一个阵营是手机厂商的,如华为,金立,vivo,Android 渠道追踪主要围绕上述渠道展开。
具体来说就是开发者为每一个渠道生成一个渠道安装包,不同渠道包用不同的 Channel ID (渠道标识)来标识,这个id一直跟app绑定;当用户下载了 App 之后,ID会岁相关的数据发送回来,从而实现渠道的识别。
这种方式完全是为了适应我们大陆的情形的,如果要上传的应用市场多的,意味着需要打很多的包。

这种方法有个天然的缺点,就是只能定位到应用市场,不能做更细的广告系列划分。
安卓平台的模糊匹配跟ios的模糊匹配的原理只一致的,这部分放到ios里面讲,基本上模糊匹配不怎么会用在安卓上的。因为可行性很低。

iOS的发行渠道则与安卓有很大的不同,除了少数越狱的机器之外,大部分用户的App都是从 App Store下载的。iOS的“渠道”其实通常是指那些在其它App或者网页内部,提供到AppStore的链接的页面。因此,在iOS中追踪发行渠道,主要是追踪进入App Store相关页面的渠道信息。

但iOS的渠道追踪面临着一道无法逾越的鸿沟。正因为iOS的渠道分发都有跳转到App Store这一步,而Apple本身是不会提供太多信息给开发者,所以,对于整个流程的三个步骤:在某个渠道点击下载链接并跳转到App Store —> App Store内下载App —>用户激活App,这整个过程能获取到的信息的多少。取决于苹果开放了多少。

现在市场上大概有以下三种方式:

IOS— IDFA
公开课第3期:国内APP的跟踪监测原理与方案选择
通过IDFA进行追踪:IDFA 的全称是 Identifier for Advertisers ,即广告标识符的含义,这是苹果专门给各广告提供商用来追踪用户而设的标识。这个方案一般用在App里面打开下载链接这种推广方式。Gooogle Analytics是通过IDFA去跟踪的,通过非APP投放广告也是可以跟踪到的。

基本的方案是,媒体的App(例如微信,这里就是媒体1,2,3),会详细记录哪个IDFA点击了待推广App(例如)的链接(或是在微信中嵌入SDK去记录),而聚美本身,也会记录具体的哪个IDFA激活了聚美App,两者都将记录下来的IDFA上传至指定的服务器,进行对比,即可确定下载来源。在用户不重置系统,不还原广告的情况下,这种方式精准度比较高。网页不支持这种形式。

IOS— Cookie
公开课第3期:国内APP的跟踪监测原理与方案选择
基于Cookie的方式,iOS 9中新增的SFSafariViewController,这个类的API允许在app内打开一个safari浏览器,而不是一个app内部的webview。这个app内的safari和外面系统的safari是同一个,共享同一个沙盒,可以操作同一个Cookie,也就是说它可以跨App与Safari实现共享Cookie。

基于SFSafariViewController控件,当用户在App中通过它打开渠道页面时,我们可以将渠道信息写入Cookie中,并设置生效时间。当用户安装并激活 App后,再次使用SFSafariViewController上报激活信息,同时将Cookie中的渠道信息上传,通过匹配,便可确定下载来源。由于渠道信息保存在设备本地,因此匹配是100%准确的。

但是基于SFSafariViewController这种方式也有一定的弊端:首先,这个方案只能支持iOS9及以上版本的设备,但覆盖了绝大部分用户,此外,对于目前业界主流的一些推广渠道,如微信、朋友圈,它们尚未在App中使用SFSafariViewController控件访问网页,因此这部分渠道也无法使用精准匹配的方案。

IOS— 模糊匹配
公开课第3期:国内APP的跟踪监测原理与方案选择
模糊匹配,点击下载链接,会跳转到appstore页面,这个过程会触发一个服务端的请求,服务器来记录这次点击的设备信息,包括ip地址、机型等。同时,被推广App这边,也可以记录用户激活App时机器的一些基本信息,并上传至服务器。结合下载和激活的时间差,再结合设备的IP地址和机型等信息,大概可以模糊地识别出同一个用户先点击了下载链接,再激活了App,从而确定下载渠道。这种方式的精确度取决于前后两次数据收集的完成程度和算法。

市面上的做法有的是上述三种方式单一出现,有的是两两组合,总之不管是通过哪种方式,这都是我们想象出来的间接的方式,只能说是尽量的去接近准确,但不能做到100%准确。
越狱的。参考Android的内嵌ID/渠道打包
下面来看看各种跟踪方式的优缺点:
公开课第3期:国内APP的跟踪监测原理与方案选择
Google Play的UTM跟踪方式是非常精准的,缺点是做国内市场的应用不适用
国内应用市场一般是采用渠道包的形式,缺点是只能跟踪到应用市场级别的数据,不能继续细分

对于IOS而言。
IDFA的准确度是非常高的,但是用户可能会关闭IDFA权限,重置系统、还原广告,数据会丢失
cookie的准确度也是很高的,但是IOS9以上适用,微信公众号广告、朋友圈广告仍然无法实现追踪
模糊匹配,这的很多厂商都在使用的一种方式,都强调倒高识别率,但是这个严重更依赖于两次收集的数据与算法,
一般来说数据会是idfa,ip user aget等信息,基本上,按优先级来说,第一个信息就能够匹配掉很高的比例了,收集多一个字段的信息,能够匹配更多,如idfa已经能够匹配八成的用户了,如果你用算法,可能是9成,也可能是6成,这个看你算法选型和调参的能力的,对于大部分人来说,这个是黑匣子的,即使第三方工具只是做了一个简单的优先级去匹配,然后对完宣称通过大数据,人工智能的方式去匹配,你也不知道的。

 

跟踪方式对比

下面看看几个工具的采用的跟踪方式,下面的数据主要是通过官方网站去找的,可能存在部分工具已经对跟踪方式左右优化调整的了,只是作为参考。
公开课第3期:国内APP的跟踪监测原理与方案选择
google analytics 采用referral和渠道包的方式,两种方式都有,所以国内也是可以用的,IOS的话是采用IDFA的方式

Adobe Analytics的 安卓端的没找到,苹果端口采用模糊匹配的形式
Umeng的,安卓采用渠道包,ios采用模糊匹配
growingIO 安卓是采用imei,苹果的话是优先采用IDFA,如果这个为空就采用模糊匹配
诸葛io 安卓采用的是渠道包,苹果的话有限采用idfa,其次是IDFv,IDFV是提供给APP开发者的唯一标示。
神策的话,安卓采用渠道包方式,苹果的话是采用Cookie和模糊匹配的形式

可以看到后面的三家,在ios的跟踪上都是采用两种方式的节奏,尽可能的去匹配准确,具体效果怎么样,只有它们知道了。

你要问哪种哪种比较准确,我也不知道,我只能说,目前各个第三方工具爆出来的数据,很多是公关数据,就高不就低的。

关于如何选型的:
公开课第3期:国内APP的跟踪监测原理与方案选择
预算够的,找有售后服务的:有问题,找乙方处理
免费的就找功能强的,用户群多的:遇到问题容易解决
只是看看数字,随意用个第三方工具就行

有看过我博客的人应该知道,我使用的是谷歌的方案,非要推荐,我推荐使用GA


如有疑问,可以在文章底部留言或邮件(haran.huang@ichdata.com) 我~
喜欢 (7)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(6)个小伙伴在吐槽
  1. 安卓的应用市场来源怎么配啊,需要修改什么地方吗?多谢多谢~
    tebay2018-06-28 17:21 回复 Mac OS X | Chrome 67.0.3396.87
    • 用内嵌渠道包的形式
      GA小站2018-06-28 22:29 回复 Windows 7 | Chrome 63.0.3239.132
      • 打渠道包的话GA能检测到吗?现在我们就是分的渠道包,但是GA上还是看不到
        tebay2018-06-29 14:04 回复 Mac OS X | Chrome 67.0.3396.87
        • 可以检测到的,需要部署
          GA小站2018-06-30 10:03 回复 Windows 7 | Chrome 63.0.3239.132
  2. 1. 为什么国内广告平台投放安卓的激活成本经常高于ios。抓包是如何发生的?2. ios的idfa、cookie、模糊匹配三种归因里,模糊匹配中的idfa匹配,和第一个idfa的差别是?
    匿名2018-02-06 09:55 回复 Mac OS X | 微信浏览器 6.6.3
    • 1、高这个有很多原因:自己投放问题;国内应用市场繁多,没有正确归因;跟踪方式不对。。。2、第一个是直接以idfa为主,而模糊匹配是根据获取设备的一些信息为主,如ip,user agent,当然能获取设备唯一码的话,也可以用进去
      GA小站2018-02-06 11:44 回复 Windows 10 | Chrome 63.0.3239.132