成本导入指南

高阶付费

概要:成本导入(Cost Import)功能是AppsFlyer ROI360解决方案中的一部分。广告主可以上传或通过邮件发送CSV格式的成本数据,全面满足营销成本的上报需求,同时确保数据的完整性和准确性。

速览

成本导入功能适用于以下场景:

  • 将所有营销投放(网红营销、移动端广告、CTV广告等等)的成本数据发送到AppsFlyer。尤其适用于不支持通过API或归因链接上报成本的媒体渠道。
  • 回滚更正之前的成本数据。

该功能支持您通过上传或发送邮件的方式将CSV格式的成本数据发送到AppsFlyer。AppsFlyer收到这些文件后会对其进行处理,并在数小时内将处理完毕的数据呈现在面板和报告中,为您提供全面的投放成本和ROI信息。

请注意

  • 广告平台也可以为其广告主导入成本文件,但必须先由广告主为其开通必要权限。
  • 代理可以制作成本数据的文件,但必须由广告主上传。

导入流程

使用成本导入功能向AppsFlyer发送成本数据时,需要完成以下操作:

  1. 制作带有相关成本数据的CSV文件,用于数据导入。
  2. 通过以下任一方式将该文件发送到AppsFlyer:
    • 在AppsFlyer面板中上传该文件
    • 通过电子邮件发送该文件请注意:CTV、PC和主机平台上的应用仅可使用此方法上报成本数据。

下文分别解释了这两种流程。

制备成本数据的CSV文件

广告主、广告平台和代理都可以制备用于成本导入的CSV文件。请参考文件范例

制备CSV文件时

  • 请遵循下表所列的文件结构、格式和规范。
    请注意:如果您使用Excel或Google Sheets来创建该文件,请务必参照Excel和Google Sheets的格式说明进行操作。

CSV文件结构

字段名称

(区分大小写)

格式/说明

示例

是否必须发送

date

  • 产生相关成本的日期
  • 格式:字符串
    (推荐格式):
    • YYYY-MM-DD
    • YYYY-MM-DD
    • MM/DD/YYYY
    • MM/DD/YYYY 
  • 不允许使用未来的日期
  • 推荐设置:使用您在AppsFlyer后台为相关应用设置的时区。
  • 请注意:如果您使用Excel或者Google Sheets来创建CSV文件,请务必参考相关说明。 
  • 2019-05-30
  • 2019/05/30
  • 5-30-2019
  • 5/30/2019
  • 2.
  • 05/30/2019

 

app-id

  • 格式:字符串
  • 即AppsFlyer面板中显示的App ID
  • 一个文件中可包含多个App ID。
  • 所有App ID都必须属于同一个广告主账号。
  • com.app.name 
  • id12356789

media-source

    • 格式:字符串
    • 这里的媒体渠道名称必须与AppsFlyer面板显示的渠道名称的完全一致请注意:如果面板显示的名称中带有后缀_int,也必须一并包含。
    • 每个文件只能包含一个媒体渠道的数据。同一个媒体渠道的文件中可以包含多个应用的数据。

network_x_int

campaign

  • 格式:字符串
  • 广告系列名称。请确保该名称与广告平台中对应广告系列的名称一致(区分大小写)。
  • 不同应用下切勿使用相同的广告系列名称。

campaign_a

请注意:如果归因数据同时带有名称和ID信息,那么CSV文件中也必须同样带有名称和ID。

spend

  • 广告消耗的金额
  • 最多可精确到小数点后五位
  • 可填充零值(0)
  • 请注意
    • 不可使用千位分隔符(逗号),如:"2,874.12"。
    • 如果您使用Excel或者Google Sheets来创建CSV文件,请务必参考相关说明

2874.12345

 

 

geo

  • 格式:字符串
  • ISO 3166中的国家代码,由两个字母组成。请注意:请确保您发送的是2个不带空格的字符。
  • 英国的国家代码是UK而非GB。

US, CN, AU

 

currency

  • 格式:字符串
  • ISO 4217中的货币代码,由三个字母组成。 请注意:切勿在代码前后使用空格。
  • 文件中的每个应用只能对应一个货币代码,不同的应用可以使用不同的货币代码。

USD, GBP, EUR, JPY

若该字段留空,则默认使用USD(美元)。

campaign-id

格式:字符串

abc1234def

不可以。

请注意:如果归因数据同时带有名称和ID信息,那么CSV文件中也必须同样带有名称和ID。

adset

格式:字符串  my_adset_1

adset-id

格式:字符串 id5678ghi

ad

格式:字符串  my_ad_name

ad-id

格式:字符串  id91011jkl

site-id

  • 格式:字符串 
  • 用于标记广告发行商(展示广告的媒体)的唯一ID。 详情请见此文档
id1213mno

channel

格式:字符串   video

keywords

格式:字符串

  • better
  • better you app
  • better you online

agency

  • 格式:字符串
  • 相关代理的名称,即af_prt参数的值。
  • 一个文件中仅可包含一个代理,且不能出现非该代理代投的广告系列。
  • 每行都必须包含该代理的名称。代理字段一列不能出现空白的单元格。
  • 代理必须具备文件中涵盖的所有应用的权限。
  • 只有广告主可以上传文件,代理不能上传数据。但代理可以制备文件,然后将这些文件发送给广告主,让广告主完成上传。
AgencyName

请注意:如果名称中带有非英文字符,必须使用UTF-8对其进行编码。

CSV文件的格式和规范

规范 要求

禁用字符

字段须以字符串格式填充,且不能以=+-或者@作为第一个字符,例如@example_campign=123会被视为无效。

应用拥有者 

一个文件中只能包含一个广告主(应用所有者)的数据,但可包含该广告主账号下多个应用的数据。 

文件扩展名

CSV文件名示例:abc123.csv

文件结构

  • 格式:文件必须使用CSV格式,也就是说每栏之间都以逗号分隔。
  • 标题行:第一行是与栏位相匹配的标题行。
  • 数据行: 包含必须配置的字段。 请注意:请确保您的数据末尾不带空格。比如末尾带空格的[USD ](字母D后有空格)必须更正为[USD]。
  • 空白行:不允许
  • 含有同一个key的重复行:不允许。key是在配置必填字段时生成的。
  • 空白单元格:文件中不允许包含空值。如果您不想上传某些字段,请不要在文件中添加这些字段。

广告层级  

记录成本时,广告系列是必须包含的维度,其他的投放维度是可选的。

任何比广告系列粒度更细的不完整数据都会覆盖对应广告系列层级以下的所有数据。

举例说明:假设您导入了某广告系列下adset 1的成本数据,然后在另一个文件中单独导入了同一个广告系列下adset 2的成本数据,则该广告系列的总成本会被替换为adset 2的成本数据。为了确保能记录到该广告系列的总成本,您导入的文件中必须同时包含adset 1和adset 2的数据。

上传文件

广告主和广告平台都可以上传CSV文件,用于成本导入。

前期准备:广告平台需要先让广告主为其开通成本导入的权限

通过AppsFlyer面板上传CSV文件的方式如下

  1. 在AppsFlyer后台的左侧菜单栏中选择配置 >成本导入。
    界面会显示成本导入页面。 
  2. 点击+ 导入成本文件
    界面会打开导入成本的窗口。
  3. 将CSV文件拖拽至导入成本文件的窗口内。
    界面显示“正在处理文件”的消息。
  4. 如果在上传过程中报错,请修正错误,然后重复相关步骤。 
  5. 界面会打开成本导入:文件摘要窗口。
  6. 此时可完成以下任一操作:
    • 点击取消导入中止上传。 
    • 点击导入文件完成导入流程。
      上传完毕后,界面会显示“准备就绪”的消息。
    • 如果出现报错,请按照报错部分的说明排查并解决问题。
  7. 点击导入其他文件完成。 

通过邮件发送文件

广告主和广告平台都可以通过邮件发送CSV文件,用于成本导入。

前期准备

请按以下步骤通过邮件发送CSV数据文件

  1. 获取邮件导入的token
    1. 在AppsFlyer后台的左侧菜单栏中选择配置 >成本导入
    2. 点击页面右上角的邮件导入token
    3. 复制并保存该token。
  2. 编写邮件,其中必须带有以下字段: 
    • 收件人adspend-upload@appsflyer.com
    • CC:抄送给需要收到自动回复的用户
    • 主题:将邮件导入的token复制粘贴到主题栏中。 
    • 附件:包含相关数据的CSV文件。
  3. 发送邮件。
    • AppsFlyer收到文件并处理完数据后,会向您发送状态报告邮件,邮件中说明文件上传的总体情况以及处理数据的过程中发生的具体问题和错误。原始邮件中抄送的各方以及广告主账户的管理员都会收到该邮件。如果邮件中说明出现错误,请按报错部分的说明排查并解决问题。
    • 您可以在成本导入面板中查看已提交文件的导入状态。

面板

您可以在成本导入面板中上传文件,并查看之前上传的文件信息。

成本导入面板

如需查看成本导入面板,请在AppsFlyer后台的左侧菜单栏中选择配置 > 成本导入

下表列出了面板对于先前导入的文件所提供的信息。

字段名称 说明
CSV文件名 即导入AppsFlyer的成本文件的名称。
上传日期 文件导入的日期。
媒体渠道 文件中包含的媒体渠道。
日期范围 文件中广告消耗发生的起始和截止日期。
匹配行(%)

文件中成本可匹配到归因的数据量(以行数计算)所占的百分比。详情请见此文档

状态

导入文件的状态:

  • 成功:操作成功。表示成本数据已记录到AppsFlyer面板和报告中,可供查看取用。
  • 验证错误:AppsFlyer系统问题。请等待10分钟,然后重试。若仍无法完成上传,请联系AppsFlyer的技术支持团队。
  • 无权限:该token未授权给此应用
    • 广告主:请确保您使用的应用ID正确无误。
    • 广告平台:请让广告主确认已向您开放成本导入权限。 
  • 已撤销:操作成功。表示该文件已被其他数据覆盖/替换。
操作
  • 文件层级的操作:如果您有文件中所有应用的权限,就可以完成以下操作:
    • 下载CSV文件:这里下载的文件是之前导入的CSV文件的副本。
    • 下载文件中所有应用的未匹配数据报告。详情请见此表中的匹配行说明部分。
  • 应用层级的操作:您点击某个具体文件时,面板会呈现相关应用的所有成本导入信息,包括您点击的文件以及其他文件。如果您有相关应用的权限,可以完成以下操作:
    • 下载该应用的数据。
    • 下载该应用的未匹配数据报告
    • 撤销(取消)文件中选定应用的成本导入。

匹配行

行数据匹配是一种数据处理方式,将导入的成本数据匹配到AppsFlyer记录到的归因数据。使用这种方式处理数据时,AppsFlyer会对所有可用维度(而非ID)的数据都进行匹配,包括媒体渠道、广告系列、广告组、广告等等。如果文件中某行数据的所有维度都与面板数据匹配,AppsFlyer会将该行标记为is-matching=TRUE。

无论匹配状态如何,成本数据都会被记录到AppsFlyer面板和报告中,供您查看取用。

成本导入面板中会显示匹配行的占比。如果出现反常的不匹配行,或不匹配行的占比过高:

  • 请下载未匹配数据报告,以便考察问题根因。未匹配数据报告中有一栏叫做is-matched,该字段可能出现的值为TRUE(表示匹配)或FALSE(表示未匹配)。
  • 必要时请点击“撤销”按钮以取消数据导入。
  • 详情请见上文表格中的“操作”部分说明。

其他相关信息

使用Excel或者Google Sheets制备CSV文件

如果您使用Excel或Google Sheets制备CSV文件,请务必先确认日期(date)和广告消耗(spend)字段的设置正确无误,然后再将文件保存为CSV格式。保存CSV文件之后,请检查其格式是否正确无误。请按照下文所述的方式分别完成以下操作:

  • 设置日期单元格的格式。
  • 设置广告消耗单元格的格式。
  • 检查并确认文件内容的格式正确无误。

日期单元格的格式设置

在Excel中按YYYY-MM-DD设置日期单元格的格式

  1. 选中需要设置格式的单元格。
  2. 右击并选择设置单元格格式(Format cells)。
    界面会打开设置单元格格式的窗口。

    Formatdate..png

  3. 选择自定义(Custom)。
  4. 在类型(Type)字段中,输入YYYY-MM-DD
  5. 点击OK
    日期格式设置完毕。

广告消耗单元格的格式设置

如下图所示,Excel对数值单元格进行格式化时,通常使用逗号作为千位分隔符。此格式不适用于成本导入文件。 

mceclip1.png

如需设置广告消耗单元格的格式,使其不带千位分隔符: 

  1. 选中需要设置格式的单元格。
  2. 右击并选择设置单元格格式(Format cells)。
    界面会打开设置单元格格式的窗口。
  3. 选择数值(Number)。

    Formatnumbers.png

  4. 取消使用逗号为千位分隔符(Use 1000 separator (,))的勾选。
  5. 【可选】设置数值的小数点后位数,默认值为2,最多可精确到小数点后5位。 
  6. 点击OK
    单元格格式化完毕。

检查文件内容的格式

请按以下方式检查文件内容的格式

  1. 使用以下任一编辑器查看相关文件。 
    • Windows:Notepad、Notepad++
    • MacOS:TextEdit
  2. 请特别注意以下几点:

    • 空格:请确保字段分隔符(即逗号)的前后没有空格。您可以在Excel中使用@trim命令来删除空格。 
    • 日期(date):请确保日期字段的格式为YYYY-MM-DD。 
    • 广告消耗请确保广告消耗单元格中没有逗号。
    • 分隔符:必须是逗号。如出现分号分隔符:
      • 这可能是因为您电脑的区域设置为非英语语言/地区(此问题在德语设置中尤为普遍)。
      • 在不同的计算机操作系统(macOS或Windows)中解决此问题的方法不同。
      • 如需解决此问题,请在Microsoft或其他论坛中搜索相关指南。您可以在搜索中使用以下关键词:Operating system (macOS or Windows) Excel change delimiter for CSV files(在macOS或Windows中通过Excel更改CSV文件分隔符)。

下图为CSV示例文件在编辑器中的截屏。

mceclip1.png

邮件导入token

邮件导入token用于验证邮件发送方是否已获得授权,可以提交成本导入文件。

广告主和广告平台分别有其各自的token。

  • 广告主的token
    • 一个账号下的所有应用共用同一个token。
    • 一个账号下的所有用户都可以获取该token。
  • 广告平台的token
    • 所有广告主共用同一个token。

广告主与广告平台之间切勿共享token!

广告平台的成本导入权限

广告平台需要广告主为其开放分应用的成本导入权限,才能使用该功能。

请按以下方式为广告平台开放成本导入权限:

  1. 广告主需要从AppsFlyer后台的左侧菜单栏中选择协作 > 活跃对接。 
    界面会显示对接渠道页面。
  2. 选择相关的对接渠道。
  3. 进入授权选项卡。 
  4. 确保广告平台权限开关已打开。
  5. 【可选】添加账户用户
  6. 打开使用成本导入的权限开关。
  7. 点击保存权限

问题排查、特点和局限性

报错消息和解决方法

下表列出了成本导入时可能出现的所有报错消息和相应的解决方法。 

报错消息 说明 解决方法
AppsFlyer平台中不存在该文件所包含的任何应用ID。请确认文件中的应用ID是否正确。 您的账户中不存在该应用ID。 更正应用ID,然后重新上传。

[某某]行的字段数量有误。应包含[X个]字段,实际接收到[Y个]字段。

文件中所有的字段都必须含有字段值。 根据您定义的表头更改文件中填充的值。
文件表头中缺少“media-source”。
  • 文件表头中缺失media-source一列。
  • 列名称必须与上文CSV栏位说明列表中的名称完全一致。
将media-source添加在表头行名。
一个文件中只能包含一个媒体渠道。发现该文件中出现多个媒体渠道:[媒体渠道数量]。  包含多个媒体渠道的文件是无法上传的。 将各媒体渠道的数据拆分到单独的CSV文件中分开上传。
字段[X]的值[Y]对此列无效。 相关列中的数据格式不正确。比如日期(date)字段的格式应为dd-mm-yy而非yyyy-mm-dd。 更正格式后重新上传。 
在该应用下发现了多种货币。文件中的每个应用只能使用一种货币。发现的货币:%货币种类的数量% 一个应用只能对应一种货币。 在文件中统一货币后重新上传。
文件表头中的以下各列不适用:[文件表头]

文件表头与栏位名称不一致。表头的参数名必须与上文所列的栏位名称完全一致。

删除不适用的列,然后重新上传。
文件表头中缺少必须配置的列:[文件表头] 文件表头中缺失必须配置的字段。 添加缺少的字段和对应的值,然后重新上传。
文件中包含了未来的日期:[日期] 不可使用未来日期。 更正日期,然后重新上传。最晚的可用日期为当天的日期。
文件为空,没有待处理的数据。 文件为空, 请在文件中添加数据,然后重新上传。
以下两行的维度完全一致,造成冲突。请将广告消耗数据按各组维度在单独的行中分开提供。[出现数据冲突的行] 多行数据的key完全相同(即必填字段相同)。 请删除重复行,然后重新上传。
一个文件中只能包含一个广告主账户的数据。发现该文件中包含多个广告主:[广告主名称] 广告平台上传文件时不能在同一个文件中加入多个广告主的数据。 请将各广告主的数据拆分到单独的文件中分别上传。
相关账户中不存在应用[应用ID]。请检查应用ID是否正确。 账户中不存在该app id。 请更正应用ID,然后重新上传。
未发现应用[应用ID]的地理位置(即国家代码)信息。请使用ISO 3166中的2字母代码。 地理位置字段值无效。 请更正地理位置信息,然后重新上传。
未发现应用[应用ID]的货币代码。请使用ISO 4217中的3字母代码。 货币字段值无效。 请使用有效的货币值更正文件内容,然后重新上传。
文件中一个或多个应用的验证出错。请重新检查文件信息以了解详情。 文件中存在多处错误。 请下载文件并查看错误详情。
处理文件时发生内部错误,请重新上传。
  • 处理文件时发生后端错误。
  • 通常是暂时性的问题。
请等待一小时,然后重试。

特点与局限性

特点 说明 
广告平台

支持。

例外:

  • Meta Ads
  • X Ads
  • ASA
代理
  • 代理不能上传数据。但代理可以制备文件,然后将这些文件发送给广告主,让广告主完成上传。
  • 制备这些CSV文件时,请务必确保文件中包含一个带有代理名称(即af_prt参数的值)的Agency(代理)字段。详见CSV文件结构示例
代理数据透明化 不支持
应用层级指定时区 支持
应用配置中的指定货币  支持。面板会按应用层级的指定货币对投放成本进行换算。
广告系列名称 请勿对不同的应用使用相同的广告系列名称,否则一个成本的成本会出现在个应用的数据中。
字段名称

如果与广告层级相关的字段名称与归因数据中的字段名称不一致,面板就会将相关数据分行单独显示。

举例来说,假设广告系列名称不一致,那么即使广告系列ID相同,面板也会将其视为不同的广告系列。

文件大小

上传CSV格式的成本导入文件时,文件大小限制如下:

  • 通过AppsFlyer面板导入:2 MB
  • 通过电子邮件导入:5 MB
自然量数据 支持
非自然量数据 支持
数据时效性 广告消耗数据
历史数据

支持。上传文件后的90天内可以还原其中上报的成本数据,并在更正数据后重新上传。

再营销 不支持。
相关账户下的用户权限 对于国家/地区或媒体渠道受限的用户不可用。