iOS 归因方案总结

iOS 天生不完美的归因

Android 归因有谷歌原生支持, 通过 GooglePlay 安装的应用归因结果很精准, 但是 iOS 的话, Apple Store 没有提供任何来源消息给到 app, 所以(先说一句)在 iOS 下的所有归因方法都是不完美的, 存在误差(比 Android 大)

iOS 统计归因从渠道到 app 经历了以下过程

  • 通过渠道获取的唯一标识(需要统计方保存的, 这个唯一标识后面说), 记录用户操作
  • 导流到 AppStore 时候, 记录这个标识存在跳转
  • 下载 app 后, app 第一次打开, 回传拿到的唯一标识. 归因方统计分析命中归因.

前面说的归因的准确性没有 Android 高, 就是因为这个唯一标识是不完美的.

当下设置唯一标识的三种方式

  1. IDFA (可以在系统设置限制获取, 有获取不到的情况, 而且渠道放是 web 的情况下获取不了.), 统计较为精准
  2. Cookie 渠道 web 打开一个域名, 带上一些参数(无所谓), 服务器写入 Cookie 一些标识信息, app 安装后通过打开能共用Cookie的一个控件(当前是用 SFSafariViewController), 由服务器来命中归因 (这个东西(SFSafariViewController)的方案在打开的相同域的事件, 有可能会被系统吃掉, 导致统计不到归因)
  3. 模糊匹配 通过渠道方的 web 获取信息, 后台计算设备指纹. app 第一次打开后获取相同信息上传, 统计方匹配命中归因 (这方案能获取的信息是有限的, 本身就存在较大误差) (当前开源的计算指纹的方式有 OpenIDFA, SimulateIDFA)

以上是在 iOS 平台下统计方法, 各个第三方归因工具也是基于这种方式操作的. 而且第三方掌握了很多合作广告源, 可以自己计算唯一标识, 但是这个就不是整个平台通用了, 只有他自己掌握渠道接入并有 app 集成才能正常工作.

综上:

  • 渠道有统计 app 没有的话, 结果就是有导流但是没安装, 体现为没有转换(app 没有回传安装事件)
  • 有安装事件但是没有统计归因(传回的标识符并没有击中任何一个渠道, 有可能没有走渠道, 有可能标识符获取到的不一样了)

不同的唯一标识符的获取

下面只讨论:

  • 当下能使用的, 不能用的已经成历史或者是成私有 API 了, 不在讨论了.
  • 能用于归因的, 有些标识符获取出来, 和模糊匹配的计算指纹一样, 只能在统计方有自己一个”环”的时候才能正常工作

获取 IDFA

todo: 记录唯一标识的获取

1
2