iOS渠道追踪统计方法大全
说起 iOS 的渠道统计,不少人会想到苹果官方的 App 分析功能(iTunes Connect),但实际操作中我们会发现,这个服务的统计维度还不够全面,许多广告主和运营人员更关心的是各个推广渠道实际带来的安装量、注册量等数据,毕竟这对渠道引流的分析价值更大。iOS的“渠道”通常是指那些在其它 App 或者网页内部,提供到达 App Store 的链接的页面。因此,在 iOS 中追踪发行渠道,主要是追踪进入 App Store 相关页面的渠道信息。
从技术角度来看,也就是在用户首次下载时不仅要获取下载来源,还要实现参数传递,简单来说,就是用户第一次下载后,我能得知后续的注册、活跃、付费等操作行为。或者在此基础上,实现场景还原,帮助用户在首次打开 App 后直接跳转进指定页面,而不是首页。
方案一:苹果官方自带的统计工具 iTunes Connect
![]()
登录 iTunes Connect ,在“App 分析”中,能很方便的查看 App 的展示次数、购买量等基础数据,但无法获取更加详细的安装量、注册量等运营数据。
当然,往往 App 推广的渠道会有很多同时进行,怎么对多个渠道的来源做分析呢?同样在“App分析”的“来源”中点击“营销活动”,右上角有个“生成营销活动链接”,进入后就能自定义给每个渠道生成对应的唯一标识。
![]()
![]()
这种方法虽然可以追踪到多个渠道的来源,但存在以下几个问题:
- 只有当营销活动启动后超过一天时间(最长72个小时)后才能显示相关数据;
- 至少有 5 个 App 购买量归因于此营销活动时,营销活动才会在“App 分析”中显示;
- 统计的维度不完整,仅限“展示次数”、“App 购买量”、“销售额”、“App 使用次数”四个;
- iOS 8.0 及以上版本的用户可以选择是否将自己的应用使用情况的数据发送给Apple。
方案二:使用 SFSafariViewController 传递参数
SFSafariViewController 是 iOS 9.0 出现的,可以通过 Safari 对应的 cookier 传递参数,跨App与Safari共享数据。但是 openurl 失败率还是很高,并且有系统版本、浏览器等限制,比如微信等第三方 App 的内置浏览器就不能很好实现。
方案三:通过 IDFA 进行追踪,比如 Google Analytics
常用的比如谷歌官方的 Google Analytics,它的获取原理就是通过获取设备的 IDFA ,来作为唯一标示符号,然后根据你的渠道来源提供数据,通过比对的方式进行渠道定位。弊端在于,用户重置系统,或者关闭广告跟踪的话,这种方法就会失效。
苹果设备设置里都会有一个开关用于限制广告跟踪:
![]()
目前用户的隐私保护意识也在逐渐觉醒,只要用户手握这个开关,IDFA 的统计误差就始终存在。
另一方面,Google Analytics 的 iOS 安装跟踪功能仅适用于通过移动广告网络(例如投放应用内广告的AdMob)投放的广告。也就是如果渠道是从线下扫二维码或者web上的推广链接下载是不能通过这种方法跟踪到的,这时就需要其它工具作为补充。
![]()
方案四:通过模糊特征匹配的方式进行追踪
用户点击下载链接,会跳转到 App Store 里,这个过程会触发一个服务端的请求,服务器来记录这次点击的设备信息,包括 ip 地址、机型等。同时,被推广 App 这边,也可以记录用户激活 App 时设备的一些基本信息,并上传至服务器。结合下载和激活的时间差,再结合设备的 IP 地址和机型等信息,大概可以模糊地识别出同一个用户先点击了下载链接,再激活了 App,从而确定下载渠道。这种方式在面对用户量大的渠道时,准确率就会下降不少。
方案五:采用第三方 SDK 追踪,比如 openinstall
openinstall 基本原理:
![]()
- 开发者在分享的 h5 页面上集成 openinstall web sdk,发布分享链接时在url上动态的拼接任意的自定义参数(如推广渠道号,邀请码,游戏房间号等等);
- 当某一终端访问该 h5 页面时,openinstall web sdk 将同时确定该设备的个性化信息和采集自定义参数,上传至 openinstall 服务器, 待用户通过该 h5 页面安装 App 后首次打开时,使用 openinstall Android/iOS sdk 从 openinstall 服务器再取回暂存的自定义参数。
在推广渠道相当多的情况下,通过分发 h5 落地页给不同渠道,从每个渠道来的用户,没有任何感知的情况下,后台可以统计到他激活及注册时的渠道 ID (甚至其他任意参数)。实际误差是较低的,相比其他方法精准度更高。
这种方法没有 iTunes Connect 的诸多限制,也很好的补充了 Google Analytics 不能统计网页下载渠道的弊端,理论上可以同时生成无上限的渠道链接进行统计,由于是国内产品,还能实时反馈数据情况。
总结:
我的建议是,如果自己的业务既有网站又有 App 的话,Google Analytics 的一系列产品都可以使用,毕竟都用同一种统计工具,可以保证数据的统一性,方便数据分析。
当然,从权威性来看,苹果官方的 iTunes Connect 自然更加值得信赖,但上文提到的弊端需要适当斟酌。
两者在使用中都可以用 openinstall 来补充弊端,如果产品主要是面对移动端,openinstall 甚至可以兼容安卓的统计,在市场运营中也能保证数据的统一性。
iOS渠道追踪统计方法大全的更多相关文章
- IOS渠道追踪方式
本文来自网易云社区 作者:马军 IOS,安卓渠道追踪的差异 Google Play国内不可用,国内的安卓 App 分发,都是依托几十个不同的应用市场或发行渠道,如百度.360.腾讯等互联网企业以及小米 ...
- App渠道统计方法全面解析 总有一种适合你
一.App渠道统计对于App推广运营的重要性 (理解App渠道统计重要性的老司机,请直接移步到第二部分) App服务的竞争重点已经由功能竞争转向市场和运营的竞争,而App的推广与运营离不开App渠道统 ...
- 免打包:简单、灵活、便捷的APP渠道统计方法
相信做过APP运营推广的小伙伴们应该对APP渠道统计并不陌生吧.APP推广运营人员需要根据数据来评估渠道推广的效果,找到最适合自家APP的渠道,有针对性的投放,不断完善推广策略,这样才能更加精准.有效 ...
- iOS-提高iOS开发效率的方法和工具
提高iOS开发效率的方法和工具 介绍 这篇文章主要是介绍一下我在iOS开发中使用到的一些可以提升开发效率的方法和工具. IDE 首先要说的肯定是IDE了,说到IDE,Xcode不能跑,当然你也可能同时 ...
- iOS渠道分包2种模式之包内注入文件分包
解决问题:商业模式中会存在这样的形式1款app需要不同的运用团队(工会)去分包推广,谁推广的包下载的人数都会在服务器记录,不同渠道的标示唯一来区分. iOS渠道分包模式有两种 一.IDFA模式 IDF ...
- [OC][转]UITableView属性及方法大全
Tip: UITableView属性及方法大全 (摘录地址) p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; line-height: 14.0px; font: 1 ...
- JS去掉首尾空格 简单方法大全(原生正则jquery)
JS去掉首尾空格 简单方法大全 var osfipin= ' http://www.cnblogs.com/osfipin/ '; //去除首尾空格 osfipin.replace(/(^\s*)|( ...
- iOS中的过期方法和新的替代方法
关于iOS中的过期方法和新的替代方法 1.获取某些类的UINavigationBar的统一外观并设置UINavigationbar的背景 注:方法名改了但是基本使用方法不变 + (instancety ...
- opencv直线检测在c#、Android和ios下的实现方法
opencv直线检测在c#.Android和ios下的实现方法 本文为作者原创,未经允许,不得转载 :原文由作者发表在博客园:http://www.cnblogs.com/panxiaochun/p/ ...
随机推荐
- testng学习笔记-- 场景和module
一.定义 TestNG是一个测试框架,其灵感来自JUnit和NUnit,但引入了一些新的功能,使其功能更强大,使用更方便. TestNG是一个开源自动化测试框架;TestNG表示下一代(Next Ge ...
- ansible之变量
一.常用系统变量 1. loop #表示循环,去读循环体里的变量固定使用{{item}},item是个字典对象item.key=value,例如如下playbook内容: --- - name: ...
- Juniper初始化之配置管理接口
一.实验环境 Juniper vSRX 12.1 二.配置管理口步骤 2.0 console进入命令行窗口,初始化用户root,密码为空 2.1 配置接口IP地址 set interfaces ge- ...
- java 计算器
初识java:利用swing制作一个简单的计算器,仿造window10内置计算器标准模式下的界面. 涉及学习内容: 设置窗口 设计界面按键 设置文本框:只读 String字符串操作:与double类型 ...
- Selenium + python 测试环境搭建扩展-HTMLUNIT的使用
尝试给公司的网站写每日例行检查的脚本时,不需要去打开浏览器,这是就用到HTMLUNIT的使用 HTMLUNIT是基于Selenium服务端的,所以需要selenium-server-standalon ...
- sql server中的cte
从SQL Server 2005开始,提供了CTE(Common Table Expression,公用表表达式)的语法支持. CTE是定义在SELECT.INSERT.UPDATE或DELETE语句 ...
- input样式重置(outline:none)
我们在写表单的时候,经常需要自定义表单的样式,当然input输入框也不例外,那么如何能写出好看一点的输入框呢? 例如简单的三个空按钮: <input type="button" ...
- vim文件时,误用了ctrl+z命令,该怎么办?
linux中,当正在使用vim命令编辑文件,退出时,如果误使用了 ctrl+z ,当前目录中会多一个隐藏文件. 比如我正在编辑 t.txt 文件时,误以为我之前使用的是 tail 命令,直接使用 ct ...
- 玩转 SpringBoot 2 快速搭建 | RESTful Api 篇
概述 RESTful 是一种架构风格,任何符合 RESTful 风格的架构,我们都可以称之为 RESTful 架构.我们常说的 RESTful Api 是符合 RESTful 原则和约束的 HTTP ...
- [转]Android ImageView的scaleType属性与adjustViewBounds属性
Android ImageView的scaleType属性与adjustViewBounds属性 ImageView的scaleType的属性有好几种,分别是matrix(默认).center.c ...