概要:本文介绍了自归因平台(简称SRN)的归因方式、深度链接、iOS应对方案,并提供常见问题答疑。
与AppsFlyer对接的SRN
SRN | Logo |
---|---|
Amazon Ads | |
Apple Search Ads | ![]() |
Google Ads | ![]() |
Google Marketing Platform | ![]() |
Meta ads | ![]() |
Snapchat—高级SRN | |
腾讯社交广告 | |
TikTok for Business——高级SRN | |
X Ads | |
Yahoo(Oath:Ad Platforms / Yahoo Gemini) | |
Yahoo!Search Ads | ![]() |
请注意:各SRN都有其自己的用户级别数据使用和保留政策。
归因
非SRN平台通过归因链接向AppsFlyer上报事件,而SRN则使用设备ID对AppsFlyer发出的激活信息进行匹配,从而完成自归因。在iOS应用中,相关流量的归因通过SKAN和汇总层级的高级隐私保护机制完成。
无论是SRN还是非SRN,AppsFlyer都根据以下逻辑进行归因:
- 末次触达和多点触达方法论。
- AppsFlyer的标准归因逻辑,用于对相关的展示和点击数据进行排序。
SRN的归因原理
SRN会通过以下方式向AppsFlyer上报新增激活和应用内事件等数据:
- 使用API与归因衡量服务商进行数据传输。
- 当第三方归因服务商检测到激活时,会使用与该激活相关的设备ID(Advertising ID)向SRN发出查询请求。
- 上报所有相关点击或展示的详细信息。
AppsFlyer完成归因后,会该SRN的数据保留期限内向其发送应用内事件回传。
高级SRN的归因原理
高级SRN的归因原理与常规SRN相同,但高级SRN可以在没有设备ID(IDFA)的情况下对广告交互行为进行归因,这是通过汇总层级的高级隐私保护j机制完成的。某些情况下,AF会通过双授权用户(在广告主应用和媒体侧应用中都授权允许广告跟踪)的ID匹配来完成归因,而对于部分高级SRN,AF则会通过API互通点击和展示数据,并根据概率建模来完成归因。
激活归因
潜在应用用户看到多条广告,并与其发生交互,然后激活应用。一般情况下,归因服务商会为广告主提供末次触达归因。也就是说,用户激活会被归因到实际激活之前发生的最后一次点击。
用户首次打开相关应用时:
- AppsFlyer可以检测到以下信息:
- 该应用是否收到由SRN带来的流量。
- 相关用户是否带有设备ID(Advertising ID)。
- 如果同时符合这两个条件,AppsFlyer就会使用相关设备ID向SRN发出查询请求。
- AppsFlyer在考量SRN的认领响应后得出归因结果。
激活归因示例
示例A:助攻归因
星期一:广告平台A上报了一个用户点击。
星期二:广告平台B上报了一个视频交互。
星期三:广告平台C上报了一个可玩广告的点击。在此之后的30分钟,发生了用户激活。
AppsFlyer会将此次激活归因到平台C,并为平台A和B各记录一次助攻激活。
AppsFlyer会向广告主提供助攻数据(即在激活之前发生但未获得归因的广告交互)。这些信息可以帮助广告主对自己的多触点(multi-touch)或多分法(fractional)归因模型进行自定义调整。详情请见助攻激活说明。
示例B:末次点击归因
广告平台D(SRN)比广告平台C早几分钟上报了一个点击。
广告平台C使用常规的归因对接。
AppsFlyer会根据末次点击原则将相关激活归因给平台C。
归因窗口期
归因窗口期点击型和浏览型回溯窗口。 部分SRN会按CPM(千次展示成本)和CPA(特定行为成本)计价模式向广告主收取激活流量的费用,这些费用是根据1-28天的期限内发生的点击或展示来计算的。
AppsFlyer会根据广告主偏好的归因方法论和回溯窗口期对用户的激活和其他行为进行归因,并计算eCPI(和eCPA。
广告主可能需要根据SRN的归因回溯窗口和浏览模型未用户激活付费。
- 广告主依靠AppsFlyer的第三方全局归因方法论来优化并合理分配广告消耗。
- 这是因为AppsFlyer会根据广告主设置的条件上报真实的eCPI和eCPA。
- 由于SRN通常会设定自己的计费条款,因此可收获短期利益。但广告主可通过第三方归因服务商来更正计费结果。
在SRN中使用深度链接
如需让用户点击链接后触发应用调起,您仅需设置App Link、Universal Link或URI scheme即可。但如需通过深度链接或延迟深度链接将用户引导到应用中的特定页面,各SRN会使用自己特有的方法来实现,不涉及AppsFlyer的深度链接方法。
那么要如何通过深度链接在引导用户的同时从SRN获取相关的数据呢?
直接深度链接
用户设备平台执行深度链接时,不会调用AppsFlyer的深度链接方法,而是完成SRN的直接深度链接。在下文示例中,点击广告的现有用户会通过Facebook的方法直接跳转到应用内的具体页面,而新用户则会根据AppsFlyer得到的转化数据获得同样的体验。详情请见在Meta ads中使用OneLink实现深度链接
示例
Greatapp的移动营销人员Jill决定在Facebook上针对普通用户投放一系列深度链接广告。用户点击这些广告后,会跳转到应用中名为“Bonus”(奖励)的页面。
移动端开发人员Jack在获取转化数据后添加以下逻辑:
- 流量是否来自Facebook("is_fb=true")?
- 如果该参数的值为true,则抓取广告组参数的值。
- 如果广告组参数的值中包含“Bonus”字样,则让用户进入Bonus页面。
延迟深度链接
与深度链接不同,在SRN中使用的延迟深度链接可以通过AppsFlyer GCD API来实现。 AppsFlyer始终会接收归因转化数据,并在首次启动时提供给应用程序。 通过自归因广告平台(SRN) 点击深度链接/再营销广告从而安装应用的新用户,广告主也能通过归因转化数据,在app启动时,将用户重定向至app内的指定页面。
Google Ads、Snapchat和TikTok for Business使用实际深度链接值来支持延迟深度链接,您可以在GCD中使用af_dp
字段进行查询。对于TikTok for Business,您还可以通过deep_link_value
字段来获取这个值。但在其他SRN中,深度链接数据不包含常规的AppsFlyer深度链接参数。如需在相关应用中使用这些数据,开发人员需要根据可用参数(如广告系列、广告组或单个广告名称等)部署其他逻辑。
请注意:在Meta ads中,安卓应用可使用Google Install Referrer机制,通过GCD来实现延迟深度链接。只有在将 Facebook SDK 集成到您的应用程序中时,iOS 应用程序才可用。
iOS政策的应对方式
大部分SRN都支持SKAN,并与AppsFlyer做了必要的对接。
iOS 14.5中的SRN归因方式
向SRN发送事件回传
SRN在收到事件回传后,需要使用其中包含的设备ID信息,才能对回传中上报的用户行为进行自归因。但大部分iOS 14用户都会选择拒绝数据跟踪,使相关应用无法读取其设备ID(IDFA)。这就会引发以下情况:
- 发送到SRN的事件回传数量减少
- SRN和AppsFlyer之间的事件回传数量存在差异——这是因为AppsFlyer会记录所有事件。
注意
- 在没有IDFA的情况下,激活、应用打开或应用内事件的回传不会被发送到SRN。但在部分场景中,AppsFlyer会在设备ID缺失时仍向SRN发送回传。
- 广告点击平台不受此限制影响,因为这些平台不使用设备ID,而是使用自己的交易ID(transaction ID)根据事件回传中的信息进行自归因。
常见问题解答
如何衡量SRN带来的再营销转化?
非SRN带来的再营销点击可通过再营销归因链接中的is_retargeting=true
参数来识别,非常方便。
但SRN中不支持类似的判断方式。这时,AppsFlyer会使用以下逻辑对SRN带来的再互动进行归因:
- 前期准备:
- 进入应用配置页面,打开启用再营销的开关。
- 进入活跃对接页面,选择相关SRN并打开再营销开关。
- 每当发生应用打开时,AppsFlyer会向该SRN发出请求,查询相关设备ID与该应用的一系列广告最近一次发生交互的信息。
- 如果该SRN在响应中提供了详细的广告交互信息,AppsFlyer就会验证该次广告交互是否发生在回溯窗口期内,且距离上一次再互动的时间间隔是否超过广告主设置的最短间隔。
- AppsFlyer会将经验证符合条件的互动行为记录为再互动,并归因到该SRN。
什么是SRN的定向误差?
SRN应针对特定人群定向投放广告,但无法总是确保定向的准确性,比如可能发生向现有用户投放拉新广告或向非用户投放再营销广告等。
如果您使用同一个SRN同时投放拉新和再营销广告,可能会导致定向误差。这时,您可能会为目标受众以外的流量支付不必要的费用。
场景: 您在AppsFlyer平台中启用了某个SRN,用于拉新投放。
- 每当发生应用打开时,AppsFlyer会向该SRN发出查询请求,检查相关用户(以设备ID表示)最近是否完成了广告交互。
- 如果是,
- SRN会在响应中提供对应的广告系列名称。
- AppsFlyer会判断该次应用打开是否为首次打开,并进行相应的归因:
首次打开:记录为新增激活,归因到相应的广告系列。
非首次打开:记录为再营销事件,归因到相应的广告系列。
结论:如果在投放拉新广告时获得了再营销事件,说明发生了预算浪费。
定向误差问题大吗?
AppsFlyer的数据分析师考察了某月内Meta ads中的拉新广告投放情况。
- 广告主已启用再营销。
- 在30%的广告投放中,至少有15%看到广告的用户是相关应用的现有用户。
- 在5%的广告投放中,至少有40%看到广告的用户是相关应用的现有用户。
- 结论:在SRN的拉新投放中,有10%看到广告的用户是现有用户。
定向误差的解决方式
基础解决方案: 在拉新广告的目标人群中排除所有现有用户。
- SRN仅向潜在的新用户投放广告。
- 在预算不变的前提下充分提升拉新效果。
- 定期(如每个月)手动更新相关广告系列的投放设置。
- 假设用户在第一个月内激活了应用,则在您更新广告系列之前的这段时间内,这些现有用户可能仍会看到拉新广告。
AppsFlyer提供的高阶付费产品受众共享可每天自动向数十个广告平台发送各类人群包数据,帮助您实现准确的定向投放。
AppsFlyer的研究表明,解决定向误差问题可大幅改善您的营销和获客效果。
原始数据报告中的原始URL字段为何为空?
用户在SRN环境中点击广告,但这些广告中没有AppsFlyer的归因链接。因此,AppsFlyer就无法获取这类点击的原始URL数据。
面板中没有SRN的点击和展示数据
代理是否可以配置SRN中的广告投放?
是的,详细说明请见代理的SRN配置说明。
AppsFlyer是否会发送不带设备ID(IDFA/GAID)的回传?
如果设备ID中包含空字符串(“”)或其值为‘00000000-0000-0000-0000-000000000000’(零值IDFA),AppsFlyer不会发送激活、应用打开或应用内事件的回传,但以下场景除外:
- Google Ads:作为Google Ads再营销衡量对接的一部分,当未授权的iOS用户打开应用或完成应用内事件时,AppsFlyer会向Google Ads发送
gbraid
以及事件信息(用于additional_data_json
事件)。 - Google Ads:对于安卓应用,在没有设备ID的情况下,如果激活中的referrer值包含
gclid
,或再互动事件中包含带有gclid
参数的深度链接,AppsFlyer会向Google Ads发送gclid
以及事件信息。 - Meta:深度链接或先前的再互动中带有Facebook cookie或广告系列ID,或广告主已启用AEM。
- Snapchat和TikTok(高级SRN):如果AppsFlyer通过PMOD将某个激活归因给Snapchat或TikTok,之后又接收到与该激活相关的应用内事件,这时AppsFlyer会向其发送回传。
gbraid
参数:由Google生成的汇总标识符信息,用于识别设备群组,并会在深度链接中体现该信息。 gclid
参数):通过广告点击链接传递的参数,用于识别广告系列以及相关广告的其他点击信息。适用于广告跟踪和投放归因。