SKAdNetwork指南

iOS14.5+带来的变化

iOS14.5由苹果2021年4月27号正式发布,iOS14.5后苹果要求开发者上架送审App中必须使用ATT框架(App Tracking Transparency)以保证苹果对于用户隐私的保护,用户进入App后需要手动选择“同意”或“拒绝”追踪,拒绝追踪后,IDFA(广告标识符)将变为全0的一串字符串,开发者将无法获取到用户设备实际的IDFA。

苹果官方资料
iOS14.5新闻
用户隐私和数据使用
App Store审查指南-法规相关
用户隐私数据应用案例

全0 IDFA对于移动营销行业的影响

全0 IDFA数据对于移动营销人员来讲显然是毫无用处的,无法唯一标识用户将在移动营销的各个环节显露弊端。

iOS14.5后应如何选择归因方式

对于iOS端,市场上流通的归因模式并不像Android端一样多(国内常见的方式是渠道包,而海外则通过Google Advertising ID或Referrer机制进行精准归因),在很长一段时间内,DeviceID精准归因和Fingerprinting模糊归因是主要的iOS端归因逻辑,IDFA作为精准归因的重要参数桥接了广告曝光、点击和后端激活、后续事件。而在iOS14.5后,可用的IDFA获取率可预见性的将大幅下降,通过IP+UA为主要参数的归因也被营销人员考虑使用,除此之外,苹果在WWDC2020上同时也推出了SKAdNetwork v2.0来帮助营销人员衡量广告投放效果。

SKAdNetwork特性

SKAdNetwork是苹果公司推出的广告平台API,旨在保护用户隐私的前提下,为广告主带来衡量广告活动效果的能力。目前SKAdNetwork最新版本为v2.2,与v2.0一起成为iOS14广告归因解决方案。

苹果官方资料
SKAdNetwork介绍
激活时调用SKAdNetwork归因查询接口
事件发生时更新conversion_value
SKAdNetwork归因逻辑
验证安装回发报文

我们为您整理出了使用SKAdNetwork时,应当了解的一些知识:
1.SKAdNetwork属于汇总型归因模型,所有输出数据中没有设备信息(IDFA或指纹信息)和用户信息(登陆账号id,付费流水号金额等),这使得LTV、ROI等分析模型无法工作;
2.SKAdNetwork由于其定时器刷新和随机延迟发送机制,导致数据延迟至少在24+0~24(小时)以上,用户在定时器过期前执行越多的事件,updateConversionValue(_:)将会导致定时器刷新次数越多,相应的,数据将会更晚地从客户端发出;
3.结合数据延迟特性,SKAdNetwork的安装通知将无从知晓用户真实发生事件的时间,这给数据报表分析带来很大的误导性;
4.SKAdNetwork允许每家广告平台为不同的广告主最多同时设置100个不同的广告计划,但显然一定有部分广告主的campaign数量是超过100个的,此时SKAdNetwork的campaign id体系将无法满足要求;
5.结合campaign id特性,SKAdNetwork仅能通过广告活动粒度观测数据,而ad group或creative层级暂时缺失,深入的广告效果分析受到阻碍;
6.SKAdNetwork的归因回溯窗口期是固定不可变动的,Click Through:点击到安装30天,安装到打开60天,View Through:展示到安装24小时,安装到打开60天;
7.SKAdNetwork可监测卸载重装用户的广告效果,由redownload参数区分,但由于缺少了User Level的数据,广告主在iOS14.5后很难re-target到卸载用户并向其展示广告;
8.广告主可从SKAdNetwork安装通知中得知效果来源应用,由source-app-id区分,通过source-app-id,广告主可得知具体的广告位应用信息,子媒体来源将更加透明;
9.SKAdNetwork通过签名解码和校验参数进行数据验证,由于安装通知仅由苹果发送到广告平台一方,验证工作仅由广告平台进行。

TrackingIO对于SKAdNetwork的解决方案

TrackingIO打通广告平台数据,将SKAdNetwork数据进行整合,并统一规则进行解码校验,广告主仅需要在一张报表中即可查看所有SKAdNetwork广告效果。
通过TrackingIO使用SKAdNetwork投放的优势:
1.聚合数据。无需额外对接各个广告平台,一张报表查看数据;
2.中立校验。规则统一的官方校验方法,有效剔除作弊数据;
3.自由配置。支持全部64个conversion-value的事件关联,以及报表展示;
4.关联活动。可支持将数据关联到广告体系的广告活动;

最佳实践

Step 0.准备工作
在使用SKAdNetwork前需要确认以下几点,保证功能正常使用:
1.确认需要投放的App是否支持SKAdNetwork,必要的两个接口registerAppForAdNetworkAttribution()updateConversionValue(_:)
2.确认投放渠道是否支持SKAdNetwork,确认渠道是否支持将SKAdNetwork install notification转发给TrackingIO;
3.确认TrackingIO「产品信息」页面内的「apple_appid」是否填写为真实正确的值(如下图),TrackingIO将通过「apple_appid」查找SKAdNetwok中的「app-id」进行应用关联。
填写错误的「apple_appid」将导致TrackingIO无法关联应用,从而影响数据展示,请务必在投放前确认。

Step 1.配置conversion-value与事件的对应关系
登陆新版TrackingIO,进入【SKAdNetwork】模块,您需要首先关联事件,您在App内所定义conversion-value触发逻辑,即为conversion-value和事件的关联关系。例如用户在激活后完成的第一个需要更新conversion-value的事件是注册,则conversion-value=1的事件需要设置为「注册」(或任意一个可理解的名称)。

conversion-value的用法相当灵活,您可以按照用户进入App后必经的几个关键事件(如注册、登陆、付费或其他自定义事件)触发updateConversionValue(_:),也可以在用户重复执行了某一个相同事件(比如x日留存、重复付费)时更新conversion-value,值得一提的是,广告主同样也可以根据App内平均的客单价范围设置一个更新conversion-value的次数,例如用户付费399,此时conversion-value更新4次即代表了用户付费大致的付费情况。
总结:conversion-value的用法分为:
1.Events Statistics:统计所有(或关键路径)事件是否触发;
2.Single Event Count:统计单个事件(建议最好是KPI强相关事件)的触发次数;
3.Revenue Estimate:统计大致的收入金额(SKAdNetwork不支持回传带有明确金额、支付方式、支付流水号等数据信息)

Tips:广告主需要根据自身App推广的考核目标进行灵活打点和使用,合理的conversion-value触发规则是SKAdNetwork数据分析的重要一环。

Step2.观测SKAdNetwork数据表现
广告主将可以在「SKAN报表详情」中查看正在通过SKAdNetwork进行广告投放的渠道效果数据。
进入报表界面,按照「日期」「渠道」「广告活动」「来源应用」这四个维度进行查询,同时可以筛选「新用户和卸载重装的老用户」和「点击或展示归因」,TrackingIO将依据接收到的install notification中的不同参数展示这些维度以及筛选数据。查看SKAdNetwok参数信息

使用小技巧:
1.「编辑指标」罗列了所有“已关联”和“未关联”的事件,TrackingIO已经将其自动区分开;
2.使用「广告活动」维度报表时,TrackingIO同时展示了SKAdNetwork体系和渠道体系中的campaign-id,需要注意的是,并不是每个渠道都会向TrackingIO传入自家的campaign-id,未传值的报表数据将会为空,而筛选项中的「广告活动」也将以SKAdNetwork体系的为准;
3.使用「来源应用」维度报表时,TrackingIO将苹果体系的app-id解析成了具体可读的应用名称,广告主可以轻松分辨买量媒体的来源;
4.TrackingIO对install notification进行校验和解码后,将会识别出未通过签名校验的数据,以及测试数据,广告主可通过「编辑指标」内的「非苹果官方数据」和「测试数据」进行查看,签名校验文档测试数据官方文档说明。

可能关心的一些问题

支持SKAdNetwork需要更新TrackingIO的SDK吗?
不需要。SKAdNetwork的数据统计是由广告平台将从客户端收到的install notification转发至TrackingIO实现的,与TrackingIO的SDK没有关系。但站在iOS14.5的层面上,您仍旧需要集成最新版本的SDK,最新版SDK将完全符合苹果对于隐私数据采集的要求。
SKAdNetwork数据和现有投放可以打通吗?
不可以。SKAdNetwork是完全脱离了设备层级数据的汇总归因模型,而现有的Last Touch Attribution是完全基于设备层级数据进行的,双方数据没有任何可桥接的参数,所以TrackingIO的SKAdNetwork报表是完全独立与其他报表的,这也代表了数据回调将会存在重复的现象,不过TrackingIO将会通过参数区分归因提供方,从而让广告平台或客户区分效果。
需要注意的是,任何机构声称自己可以将SKAdNetwork与设备级别数据进行打通融合的,都存在不同程度的违规做法,这与苹果隐私条款相悖,严重的有可能面临App下架风险,而数据打通大多是以概率和预测的方式提供,参考意义有限。
可以同时使用SKAdNetwork和现有监测链接投放吗?
可以。这也是我们所建议的归因方案,目前大多广告平台的做法是将SKAdNetwork流量与其他流量区分开的,广告主可以灵活组合流量类型和归因方式,探索最优方案。使用TrackingIO时,两种方案互不干涉,不会出现数据扰动的情况,使用SKAdNetwork前后也无需对现有监测链接做任何改动。
TrackingIO对全0 IDFA是如何归因的,后续事件如何关联
穷举一共有点击有无IDFA激活有无IDFA四种情况,除过点击和激活都有IDFA的情况时使用IDFA进行精准归因外,剩余其他三种情况均使用Fingerprinting信息进行模糊归因,后续事件通过AppKey+IDFV(Identifier for Vendor)关联。
TrackingIO如何保证Fingerprinting归因的精准度
1.对UA(User Agent)的充分解析,提高在指纹信息方面的匹配精准度;
2.支持IP v6参数归因,v6相比v4全球资源节点上限更高,从而更精准,但需要流量方支持上报;
3.独立配置Fingerprinting的归因回溯窗口期,使其可缩短至误差范围较低的程度,窗口期可根据TrackingIO后台的激活延迟分析或MTTI分析(Mean Time to Install)进行确定。

围绕iOS14.5,TrackingIO的一些建议

在App层面
1.按照苹果的隐私条款规定,请务必确保App内不存在任何以标识用户唯一性为目的数据采集和使用行为,包括您自身和其他任何供应商,否则将面临App下架的风险。TrackingIO也仅在用户选择同意ATT框架后才可获取IDFA,请集成我们最新版SDK以保证这一点;

2.提升选择同意ATT框架的用户比例是一项相当有必要的工作,成功获取IDFA代表着您依旧拥有基于现有生态的营销分析能力。
目前总结出的方法有:
a.将ATT弹框放置在所有弹窗最后(或之中)显示,而非首个弹窗;
b.ATT框架内描述文案应具有正确的引导性,表明用途和拒绝后的影响,需要注意的是,请勿提供给用户任何带有激励性质的文案,这将面临App下架的风险;
c.用户拒绝ATT框架后,可在合适的时机提示用户更改这一决定;
d.任何决策建议预先进行小范围A/B 测试,以确定最优方案,热云同时也将提供ATT框架相关的A/B测试功能,可咨询销售或运营同学了解详情;

在SKAdNetwork集成层面
1.SKAdNetwork目前共有1.0,2.0,2.1,2.2四个版本,各个版本的归因能力逐级提升,建议在任何情况下优先选择最新版本的SKAdNetwork方案支持您的投放;

2.更新conversion-value的逻辑规则代表了您对于本App推广KPI的认知,正确合理的逻辑将使数据统计事半功倍,我们同时建议您不必使用过多的conversion-value,因为每一次conversion-value的更新都将重置SKAdNetwork定时器,这也就意味着数据呈现的时间距离用户实际触发事件的时间更长;

3.建议提前合理规划好更新conversion-value的埋点位置,更改埋点位置需要重新发版,这一过程将耗费很长时间;

在iOS14.5+归因方案层面
1.现有归因方案建议以Last Touch Attribution+SKAdNetwork两种方式组合归因,传统的Last Touch Attribution逻辑瀑布流应是DeviceID>Fingerpriting,提高Fingerprinting的归因精准度可通过缩短归因回溯窗口期进行控制,需要注意,不正确的归因模型将引起过度归因,导致营销成本增高;

2.目前SKAdNetwork的归因能力和与国内投放环境的匹配程度仍旧较低,但我们仍旧建议尽早开发支持SKAdNetwork,作为备选方案使用;

3.归因方案应根据广告营销生态体系的走向趋势合理选择,良好的上下游体系将帮助您的广告投放更加轻松高效,欢迎各界大佬与我们进行交流。