概要:对广告收入进行归因,全面了解LTV维度的变现效果。
广告收入归因
- 广告主可以在相关应用中通过横幅、积分墙、插屏等形式展示广告,从而产生广告收入。
- 将广告收入与应用内购和订阅收入相结合,就可以全方位了解用户的LTV价值。将用户的LTV数据与渠道买量成本进行匹配,便可判断广告投放的ROI,并将其用于投放渠道的进一步分析。
非自然广告收入数据:
- 来自聚合和/或广告变现平台,通过服务器API或内嵌SDK(支持iOS 14)上报给AF。
- 变现收入会归因给初始带量渠道。具体链路如下:
- 用户在A平台上看到一则广告,然后下载了您的应用。
- 您的应用向用户展示广告。
- 不论这些广告是由哪个渠道发布的,所产生的广告收入都会归因到A平台(即最初带来用户的平台)。
- 上报数据的颗粒度取决于变现平台的对接以及广告收入的归因类型。
广告收入归因的对接类型
广告收入归因支持各种颗粒度层级,具体取决于变现平台。
广告收入归因的对接类型 | 说明 |
---|---|
汇总数据(通过S2S API上报) |
|
通过S2S API上报设备级别数据 |
|
通过SDK上报的展示级别数据 |
|
由SDK上报的展示级别数据与由S2S API上报的设备级别数据相结合 |
|
启用方式
以下章节介绍了各种类型的广告收入归因,以及您在启用这维护这些功能时需要完成的流程和步骤。
广告收入平台的对接方式
前期准备:
- 让广告收入对接渠道将API证书发送给您。
请按以下方式与变现平台对接广告收入:
- 从AppsFlyer后台进入ROI360 > 收入设置 > 广告收入。
- 在广告收入配置页面中,点击新建广告收入对接。
- 选择要添加的广告收入合作渠道,然后点击下一步。
-
选择您想要接收的广告收入数据类型。注意:可用的数据类型取决于具体平台。
- 归因收入(Attributed Revenue)是指可归因到获客渠道的收入数据。归因记录报告分为以下两种:
-
汇总数据(通过S2S API上报)
- 选择事件,该事件与广告收入的计算相关联。假设您选择的事件是af_app_opened,那么广告收入就是平均每次应用打开所产生的广告收入,即总体广告收入除以应用打开事件总数。
- 通过S2S API上报设备级别数据
- 注意:如果您需要启用某聚合平台的设备级别广告收入API,就必须关闭该平台所聚合的变现平台的广告收入对接,否则会产生重复数据。
- 通过SDK上报的展示级别数据。
- 由SDK上报展示级别的数据与由S2S API上报的汇总层级数据相结合。
- 由SDK上报的展示级别数据与由S2S API上报的设备级别数据相结合。
- 注意:如果您正在使用聚合平台进行广告变现,请务必先关闭该平台所聚合的变现平台的广告收入对接,然后再启用该聚合平台的广告收入对接,否则会产生重复数据。
-
汇总数据(通过S2S API上报)
- 归因收入(Attributed Revenue)是指可归因到获客渠道的收入数据。归因记录报告分为以下两种:
- 按对接渠道的要求填写API证书或登录信息。这与SDK集成无关。
- 点击保存。
-
如果界面显示“测试连接”按钮(如上图所示),请点击测试连接。
- 如果界面显示消息“API key verified”(API密钥已验证),则表示您已顺利完成该流程。
- 若界面显示其它信息,请参照广告收入API的连接状态与测试排查问题,然后重复上述流程。
-
如果界面未显示测试连接按钮,则表示您已完成该流程。
AppsFlyer会在一天内多次从该渠道收集数据。 - 【可选】核查您在AppsFlyer中看到的广告收入数据,并将其与聚合平台和UA渠道面板中的广告收入进行对比。了解详情
- 【可选】通过UA signals和广告收入事件回传将广告收入数据分享给您的合作渠道。
注意:如果您更改了对接方式,新的对接配置将在第二天UTC时间的凌晨12点生效。
查看、修改或删除广告收入对接渠道
如需查看、修改或删除您与广告收入平台的对接,请按以下方式操作:
-
从AppsFlyer后台进入ROI360 > 收入设置 > 广告收入,然后选择相关应用。
界面会列出您所有的渠道对接,包括对应的产品和对接类型、对接状态以及广告收入事件名称。 - 将鼠标悬停在相关对接上,然后根据实际需要点击编辑或删除。
对相互对应的广告收入去重
按应用打开或应用内事件汇总数据
汇总级别广告收入数据的作用原理如下:
- 对接平台上报分地区的每日总收入。
- AppsFlyer的eRPA(实际用户行为平均收入)计算方式为:广告收入/某个事件的触发次数
- AppsFlyer创建a _monetized事件,其中包含每个已归因设备的总体eRPA,如ad_matched_monetized。
- 通过eRPA将收入归因到媒体渠道。
- 您可以使用以下任一事件类型:
- 特有变现事件要求对应用进行相应修改。
- af_app_opened事件默认可用。
- 请勿在使用广告收入对接的同时通过应用内事件上报广告收入金额,否则会导致面板中出现重复的广告收入数据。这是因为AppsFlyer会通过对接获取变现平台的收入数据。
按事件汇总广告收入
事件类型 | 触发方式 | 注意事项 |
---|---|---|
特有变现事件 |
|
|
af_app_opened event |
|
|
应用内事件配置方式对比
配置方式 | 优点 | 缺点 | 注意事项 |
---|---|---|---|
为所有平台配置同一个事件,如“ad_watched”,从而自动生成包含变现信息的“ ad_watched_monetized”事件 | 配置最便捷 | 无法产生有价值的信息,如分平台的点击次数及广告收入数据 |
|
推荐做法:为每个平台单独配置专用的广告观看事件,如ad_watch_admob。 ad_watch_vungle |
不仅可获得原始数据外,还能在面板上对看到所有变现平台的数据并进行对比。 | 无法通过单个事件收集总体广告收入数据,有多少广告平台就有多少事件。 | 可在面板中对比各变现平台的数据。由于针对每个平台分别配置了应用内事件,因此广告收入可按平台细分。 |
广告收入API的连接状态与测试
-
广告收入对接正常时的状态信息如下:
- 成本和广告收入对接状态面板:集中查看账户下已对接相关应用(一个或多个)广告收入的渠道列表。
- 部分渠道允许广告主测试广告变现API的连接状态,这种情况下界面会显示测试连接按钮。
- 验证API连接是否正常:
- 点击测试连接。
界面显示消息“API key已验证”。若未显示,请按下表指南进行排查。
状态 | 含义 | 说明/行必要操作 |
---|---|---|
API key verified (API key已验证) |
|
无 |
Invalid credentials (证书无效) |
一个或多个证书错误。 |
从变现渠道获取正确的证书信息 |
Missing configuration details (配置信息缺失) |
一个或多个证书字段不完整。 | 从广告收入平台的面板中获取证书信息,或联系该渠道要求其提供证书信息。 |
广告收入数据
您可以通过AppsFlyer面板和原始数据报告查看广告收入数据。
汇总层级的广告收入数据
广告收入数据能反映出各渠道的长期用户质量。随着用户打开应用并与广告互动的行为逐渐累积,用户的LTV就会持续提升。
注意:各面板和报告的广告收入数据之间可能会有差异,详情请见此处。
您可通过下列方式查看广告收入:
- LTV维度:
- 面板展示:数据总览、事件报告
- LTV报告
- 群组面板和报告
- Master API
- 活跃维度:
- 面板展示:活跃数据报告
- 广告收入原始数据
数据总览面板-汇总效果报告
数据总览面板:
- 面板中的收入等各种数据是LTV维度的。详情请见LTV数据与活跃数据的差异。
- 收入一栏显示所有收入,包括广告收入和应用内购。
- 深入各广告层级(媒体渠道、广告系列、广告组、地理位置)对数据进行切分,查看报告中的变现事件。
活跃面板:
- 面板中的收入等各种数据是活跃维度的(即按用户行为发生日期计算),详情请见LTV数据与活跃数据的差异。
- 用户平均操作次数用于说明用户在应用中与广告互动的可能性。
示例
三名用户于2017年12月31日安装了一个应用。他们的归因信息如下:
- 用户A:广告平台A
- 用户B:广告平台B
- 用户C:自然用户
这个应用对接了五个不同的变现平台。广告主通过AppsFlyer的SDK为每个平台分别配置了单独的应用内事件,具体如下:
- Meta Audience Network:fb_ad_view
- Chartboost:chartboost_ad_view
- Admob:admob_ad_view
- Applovin:applovin_ad_view
- IronSource:is_ad_view
在用户激活应用的四天后向用户显示广告,具体如下:
用户 |
UA平台 |
fb_ |
chartboost_ |
admob_ |
applovin_ |
is_ad_view |
总计 |
---|---|---|---|---|---|---|---|
A |
广告平台 A 2017-12-31 |
2018-01-01 $1 |
2018-01-02 $1 |
2018-01-03 $1 |
2018-01-04 $1 |
|
$4 |
B |
广告平台 B 2017-12-31 |
2018-01-02 $1 |
|
2018-01-04 $1 |
|
$2 | |
C |
自然流量 2017-12-31 |
2018-01-01 $1 |
2018-01-02 $1 |
$2 |
我们可以从这些数据中总结出每个用户每天(通过每个应用内事件)所带来的广告收入:
用户 |
2018-01-01 |
2018-01-02 |
2018-01-03 |
2018-01-04 |
总LTV |
---|---|---|---|---|---|
A |
$1 |
$1 |
$1 |
$1 |
$4 |
B | $1 | $1 | $2 | ||
C | $1 | $1 | $2 | ||
总计 | $2 | $3 | $1 | $2 | $8 |
报告解读:
如前所述,广告收入是LTV维度的数据,即在面板中选定时间段内激活应用的用户从激活之日起到当前为止的累计收入。以下示例展示了选定时间段内面板呈现的数据:
汇总报告:选定时间段为2017-12-31至2018-01-05
广告平台 |
LTV收入 |
---|---|
自然流量 |
$2 |
广告平台 A |
$4 |
广告平台 B |
$2 |
广告平台C |
$2 |
这时面板中显示的用户是在2017-12-31到2018-01-05期间激活app的用户。这些用户产生的所有收入都归因给用户拉新渠道,显示为用户的LTV。
广告收入原始数据
广告收入原始数据报告中的数据来自与AppsFlyer对接的变现平台,对接类型可以是设备级别,也可以是展示级别。
广告收入原始数据的作用原理
- 广告收入数据是基于每个用户的独立展示数来汇总的。独立展示数是根据广告变现平台、广告单元和广告位综合计算得出的。
-
展示级别的原始数据:
- 汇总到设备级别,呈现在设备级别的报告中。
- 呈现在Data Locker的展示级别报告中。
- 原始数据的时效性与活跃数据报告中的设备级别广告收入一致。
报告 |
数据导出页面 |
Pull API | Data Locker |
---|---|---|---|
归因广告收入(非自然) | ✓ | ✓ | ✓* |
自然广告收入 | ✓ | ✓ | ✓* |
再营销广告收入 | ✓ | ✓ | ✓* |
展示级别原始数据 | - | - | ✓ |
* 同时提供版本化报告,每天更新数次,在设备层级汇总数据。非版本化的Data Locker报告每天更新一次。 |
数据特征和字段
广告收入报告中的填充字段:
- 按广告收入事件填充,详见下文表格。这些字段分为两类:
- 专用字段:专用于广告收入的字段,如展示数和广告位。注意:具体的字段填充取决于变现平台,详情请见下文表格,其中列出了分平台的填充字段。
- 通用字段:与其他原始数据报告相似的字段,如事件名称、事件值、货币等。
- AppsFlyer将广告收入事件归因到相关用户的拉新渠道,并以此为基础来填充相应字段。也就是说,这些字段按最初的拉新转化事件信息来填充,如媒体渠道和广告系列。这些字段不包含在下表所列范围内。
广告收入填充字段
api_name | 字段名称 | 字段类型 | 说明 |
---|---|---|---|
event_time | Event time (事件时间) |
通用字段 | 变现收入归因到的日期 |
event_name | Event name (事件名称) |
通用字段 |
|
event_revenue | Event Revenue Currency (事件收入货币) |
通用字段 |
|
event_revenue_currency | Event Currency (事件货币) |
通用字段 | 事件收入货币 |
event_revenue_XXX | Event Revenue XXX (事件收入XXX) |
通用字段 |
|
country | Country (国家) |
通用字段 |
发生激活转化的国家/地区 |
ad_unit |
Ad unit |
专用字段 |
广告类型 |
Segment | Segment (广告段位) |
专用字段 | 广告位名称 |
monetization_network | Monetization Network (变现平台) |
专用字段 | 发送广告的平台 |
impressions | Impressions (展示) |
专用字段 | 用户看到广告的次数 |
mediation_network | Mediation Network (聚合平台) |
专用字段 | 将事件发送给AppsFlyer的聚合平台 |
分平台的填充字段
显示名称 | Admob | Ironsource | AppLovin MAX | Appodeal | Fyber |
---|---|---|---|---|---|
Ad unit (广告单元) |
✓ | ✓ | ✓ | ✓ | ✓ |
Segment (广告段位) |
- | (1) | - | - | - |
Placement (广告位) |
- | ✓ | ✓ | ✓ | ✓ |
Monetization Network (变现平台) |
✓ | ✓ | - | ✓ | - |
Impressions (展示) |
- | - | ✓ | ✓ | - |
Mediation Network (聚合平台) |
- | ✓ | ✓ | ✓ | - |
(1)广告主需要在ironSource中进行配置 |
数据时效性
数据时效性取决于对接类型以及上报方式:
在S2S API对接中,数据的最早呈现时间为:
- 面板和Data Locker中的报告从UTC时间第X+1天的上午8点开始呈现数据,每天约更新4次,每6小时更新一次。若您购买了ROI360,还可获得第2、3、7、14天的数据,每天更新一次。
在展示级别的SDK对接中,数据的最早呈现时间为:
- 理想状态下,面板和Data Locker中的报告会从UTC时间第X天的早晨5点开始呈现数据,每天约更新6次,每4小时更新一次。
- 展示级别的原始数据报告(通过Data Locker拉取)在UTC时间第X天的凌晨1点呈现数据,且每小时更新一次。
对于带有设备级别数据(通过S2S API上报)的展示级别数据(通过SDK上报),您可以在第X天获得当天数据,并在第X+1天获得准确数据,具体如下:
-
对于通过SDK上报的展示级别数据:
- 理想状态下,面板和Data Locker中的报告会从UTC时间第X天的早晨5点开始呈现数据,每天约更新6次,每4小时更新一次。
- 展示级别的原始数据报告(通过Data Locker拉取)在UTC时间第X天的凌晨1点呈现数据,且每小时更新一次。
-
对于通过S2S API上报的设备级别数据:
- 面板和Data Locker中的报告从UTC时间第X+1天的上午8点开始呈现数据,每天约更新4次,每6小时更新一次。若您购买了ROI360,还可获得第2、3、7、14天的数据,每天更新一次。
在ROI360之前的遗留对接中,数据最早从UTC时间第X+1天的下午5点开始呈现。
请注意:更改对接类型后,新对接不会对之前通过原对接类型接收的数据进行回滚更新。举例来说,假设您在第X天将对接类型从SDK改为S2S,那么新的对接会从第X+1天开始拉取数据,而不会拉取第X天之前的数据。
Data Locker的广告收入报告
名称 | 数据时效性 | 报告结构 |
---|---|---|
每日广告收入(从设备层级进行汇总) |
第X天的广告收入会在第X+1天的UTC时间晚上8点进行上报。 比如5月1日的广告收入会在5月2日上报。 |
该报告包含Attributed(非自然广告收入)、Organic(自然广告收入)、和Retargeting AdRevenue(再营销广告收入)几个部分。 |
标记版本的每日广告收入报告(从设备层级进行汇总) | 每日报告中包含以下内容:
|
报告的各个版本都包含Attributed(非自然广告收入)、Organic(自然广告收入)、和Retargeting AdRevenue(再营销广告收入)几个部分。 |
展示层级的广告收入报告(展示层级) | 展示层级的广告收入记录每小时写入单独的文件中。 |
其他信息
将数据颗粒度从汇总层级切换到设备级别
- 切换颗粒度不会影响历史广告收入数据,也就是说历史数据保持不变。
- 广告收入数据每天拉取一次,拉取时间为UTC时间14点,颗粒度取决于数据拉取当下的设置。
- 与汇总层级不同,设备级别的数据上报不需要定义应用内事件。您可以继续发送这些事件,但它们不会出现在AppsFlyer的设备级别数据中。
广告平台的UA(拉新)信号
注意
有些广告平台可以接收到UA信号,建议广告主首选与这类平台合作。这类拉新平台可以从聚合平台接收广告收入数据,并使用这些数据来优化广告主的拉新投放。
如需向拉新平台发送信号,聚合平台的对接必须达到展示级别或设备级别的对接。
可向UA平台发送UA信号的聚合平台包括:
- Applovin Max
- Google Admob
- Appodeal
- Chartboost
- Fyber
- Tapdaq
- Topon
- Unity
- Unity LevelPlay聚合平台(前身为ironSource)
- Admost
- Tradplusad
- Yandex
可收到UA信号的UA平台列表:
- AdAction
- Adamobi
- Adjoe
- Adonco
- Adshow
- Appier
- Apprainbow
- Aura from Unity
- Betop
- Bidswave
- Brandscale
- Chameleostudios
- Chartboost
- Datawave
- DLab
- Ecomonline
- Etusdigital
- Foregon
- GNA Company
- Happimobi
- Hybrid
- Inflecto
- Irismedia
- Lambadapp
- Leadidadmonster
- Lifestreet
- Liftoff
- Melodong
- Mintegral
- Mobrand
- Moloco
- Motive
- Mpnd
- Msla
- Muvmobile
- Nexamob
- Nftdroper
- Nsofmedia
- Performadlive
- Personalyrtb
- Pitatroas
- Rebornads
- RTBhouse
- Runfuns
- Scmobi
- Shalltry
- Shareit
- Smadex
- Tapjoy
- Targetmedia
- Thepurpleline
- TikTok for Business
- Trademob
- Truemoney
- Unity Ads
- Yandex
- Yeahmobi
- Z2A Digital
- Zoyo
允许广告平台获取广告收入原始数据
拉新渠道必须先获得您的授权,然后才能接收聚合平台的数据。
前期准备:
- 需要购买ROI360 Advanced进阶功能。
- 请先联系相关渠道,确认其具备数据接入流程和优化逻辑,有能力处理您的数据。
请按以下步骤向渠道开放广告收入数据的权限:
- 进入配置 > 活跃对接。
- 选择要对接的合作伙伴。
- 转到对接选项卡。
- 确认激活合作伙伴是否已开启。如果未开启,数据就不会被共享。
- 进入授权选项卡。
- 打开广告平台权限开关。
- 打开访问广告收入原始数据开关。
- 发送选项部分有两种发送方式可选:若选择仅该合作渠道,则仅发送该渠道带来的广告收入数据;若选择所有媒体渠道,包括自然流量,则发送来自所有媒体渠道的广告收入。
- 点击保存设置。
- 联系该渠道,告知其授权已完成。
- 请确保相关广告平台已在其Data Locker中启用该报告,并已配置报告内容。
广告平台的广告收入事件回传
您可以配置广告平台的广告收入回传。也就是说,拉新平台可以接收到聚合平台的实时广告收入数据,并使用这些数据来优化广告主的拉新投放。
如需向UA平台发送回传,您与聚合平台之间必须具有展示级别的SDK对接。AppsFlyer会自动为每个展示生成一个af_ad_revenue事件。这些事件会出现在通过应用内事件回传发送给UA平台的事件列表中,供您选取。
重要提示!
您可以向具体渠道发送广告收入回传,但在启用广告收入回传之前,请先确认该渠道对相关数据的使用方式符合政策规定。
请按以下方式设置广告收入事件回传:
- 搜索并选择相关渠道,可以从Marketplace渠道平台或进入配置 > 活跃对接页面操作。
- 在渠道对接选项卡中,向下滚动到应用内事件回传,打开此开关。
- 在“AppsFlyer事件”列表中选择af_ad_revenue。
-
将该事件映射到相关UA广告平台中的对应事件,具体如下:
UA广告平台 af_ad_revenue的渠道映射事件 截屏 Ironsource adRevenue Unity Ads ad_revenue Moloco 无需映射 Mintegral 无需映射 Smadex 无需映射 Meta Ads fb_mobile_purchase TikTok For Business - 高级SRN ImpressionLevelAdRevenue Aura from Unity ad_revenue - 点击保存对接。
可向UA平台发送展示级别广告收入事件的聚合平台包括:
- Applovin Max
- Google Admob
- Appodeal
- Chartboost
- Fyber
- Tapdaq
- Topon
- Unity
- Ironsource
- Admost
- Tradplusad
- Yandex
可收到广告收入事件回传的拉新平台包括:
- Ironsource
- Unity Ads
- Moloco
- Mintegral
- Meta Ads
- Smadex
- TikTok For Business - 高级SRN
常见问题解答
如何获取分平台的总体广告收入?
|
活跃面板中是否有广告收入数据? 是的。活跃面板中的收入是应用内购买收入和广告收入的总和。注意:AppsFlyer每天接收前一天发生的广告收入事件所产生的收入数据。 |
需要在对接选项卡中打开“启用该渠道”开关吗? 如果该渠道仅用于广告变现,则无需在对接选项卡中打开启用该渠道开关,只需打开广告收入选项卡中的获取广告收入开关。 |
如果用户安装的应用版本中没有接入AppsFlyer SDK,这时设备级别的广告收入如何归因? 广告收入会归因到自然量。 |
不同面板和报告中的广告收入数据是否会有差异? 数据总览面板中的收入数据可能会与原始数据报告、活跃面板和群组面板之间有所差异。这是由以下原因造成的:
|
特点与局限性
特点 | 说明 |
---|---|
局限性 |
广告收入事件目前不适用于:
设备级别数据颗粒度的局限性:
AppsFlyer面板不支持通过独立用户数来触发af_ad_revenue事件。 |
渠道访问权限 | 无法访问群组报告 |
代理访问权限 |
代理:
|
代理数据透明化 | 不支持 |
时区 |
AppsFlyer面板和报告仅按UTC时间呈现广告收入数据。也就是说,如果数据在UTC+2时区的下午2点上报,则在AppsFlyer中呈现为UTC时间下午2点。广告收入数据每天处理一次。 这是因为AppsFlyer需要对来自多个渠道和平台的数据进行归一,而大部分渠道和平台都是按UTC时间来上报数据的。 |
货币 |
在AppsFlyer后台:
|
数据类型 | 同时支持自然量和非自然量数据 |
数据时效性 | 广告收入 |
历史/回溯数据 |
|
账户用户权限 | 支持 |
SKAN | 展示级别的广告收入SDK对接支持SKAN。 |
地理位置/国家 | 在群组面板中,如果地理位置信息不可用(呈现为“N/A”),则按地理位置汇总数据时面板不呈现N/A数据。 |
应用内事件回传 | 向渠道回传的数据仅限归因到该渠道的应用内事件,不包含与其他渠道相关的数据。 |
CTV、PC和主机端应用 | 不支持。仅支持安卓和iOS应用。 |
已对接广告收入的渠道列表
渠道 | 必填证书参数 | 数据颗粒度 |
---|---|---|
|
带有地理位置信息的汇总层级数据 | |
Admost |
|
带有地理位置信息的设备级别数据 |
|
带有地理位置信息的汇总层级数据 | |
|
|
|
|
|
|
Bytedance Ads - 中国本地流量 |
|
带有地理位置信息的汇总层级数据 |
Chartboost |
|
带有地理位置信息的汇总层级数据 |
Meta ads |
|
带有地理位置信息的汇总层级数据 |
Fyber |
|
|
Google Marketing Platform -DV360/CM(DoubleClick) |
|
带有地理位置信息的汇总层级数据 |
Google Admob |
|
|
Google Ads |
|
带有地理位置信息的汇总层级数据 |
Ironsource |
|
|
Mintegral |
|
带有地理位置信息的汇总层级数据 |
Tapjoy |
|
带有地理位置信息的设备级别数据 |
|
带有地理位置信息的汇总层级数据 |
|
TopOn |
|
带有地理位置信息的设备级别数据 |
Tradplus聚合平台 |
|
带有地理位置信息的设备级别数据 |
|
|
|
Voodoo Ads |
|
带有地理位置信息的汇总层级数据 |
|
带有地理位置信息的汇总层级数据 | |
Yandex |
不适用 |
|