广告花费上传指南

概览: 广告花费上传, 作为AppsFlyer Xpend功能的一部分,可以满足广告主获取100%覆盖全渠道campaign的广告成本需求。即使媒体渠道不支持通过API或者在点击中传成本参数的方式,广告主和媒体渠道也可以通过手动上传成本的方法来记录campaign的买量花费。

广告花费上传

AdspendIngestion.jpg

 观看如何使用广告花费上传功能

完整的campaign花费数据

使用 广告花费上传功能可以汇总那些不支持通过点击或者API来获取成本的媒体渠道的广告费用。这样可以使广告主通过后台面板对全部媒体的广告成本和ROI有一个完整直观的了解。 

成本费用必须记录到campaign层级,广告系列中的其他纬度是可选的。广告花费(成本)可以通过手动上传CSV文档到后台来实现。汇总的成本数据在更新后几分钟就可以通过后台或者汇总数据查看。

广告主或者广告平台都可以上传或者管理成本文件,即将支持代理来上传广告成本数据。 

根据需求,之前上传的广告成本数据可以被覆盖。

使用场景:

  • 记录来自于不支持通过API或者链接中的cost参数来获取成本的渠道推广所产生的花费数据
  • 线下渠道,例如广播活动和广告牌
  • Influencers网络红人营销

要上传和管理广告收入,请访问 对接>Ad Spend Ingestion 注意:广告收入上传页面是账户层级的,这意味着您可以在这个页面可以管理整个账户下所有app的成本数据。 

准备,上传和接入广告成本文件

请选择以下几种上传方式中的一种来准备,上传和接入广告成本文件。 

我们推荐您首先使用文件上传的方式。 因为由于文件格式和文件中的内容引起错误信息时会进行提示,从而使您更轻松和方便地解决问题。

上传步骤 

步骤:在后台界面中上传文件
步骤 描述 链接
1

仅针对渠道上传的情况: 在 广告平台上传文件之前,广告主需要先给媒体授权

授权上传成本数据
2

准备好CSV文件 

CSV文件格式和参数
3

通过后台页面上传和接入成本文件

上传成本数据文件

4

完成上传之后,使用后台页面来查看数据接入状态:

  • 状态
  • 数据匹配行数 多数情况下,如果数据匹配的行数比较低,意味着您数据有误
 广告成本上传步骤
 

附加步骤:覆盖之前上传的数据

覆盖之前上传的成本数据
操作流程:使用邮件上传文件
步骤 描述 链接
1

广告平台的先决条件: 在广告平台发送文件之前,广告主需要先给广告平台授权。 

授权上传成本数据
2

先决条件:获取广告成本token

获取广告成本token
3

准备好CSV文件 

CSV文件格式和参数
4

通过邮件发送文件 

电子邮件

5 AppsFlyer会通过邮件发送状态报告,将会包括上传状态是否成功,以及上传中是否发现问题。  
6  使用后台面板查看数据接入状态:
  • 状态 
  • 数据匹配行数 多数情况下,如果数据匹配的行数比较低,意味着您数据有误
 广告成本上传步骤
 

附加步骤:覆盖之前上传的数据

覆盖之前上传的成本数据

程序

CSV文件格式和参数

广告成本的CSV文件格式,栏位以及验证规则细节如下。如果您使用的是Excel或Google sheets来创建文件,请您务必参考Excel格式 说明。 

在您继续阅读之前,请留意在准备CSV文件中最常犯的错误,如下截图所示。 

ingestionfile_en-us.png

以下各节详细介绍了广告成本CSV文件的格式,栏位,以及验证规则。如果您使用的是Excel或Google sheets来创建文件,请您务必参考Excel格式 说明。

 注意

请勿使用Excel或Google sheets来浏览或者验证 CSV文件的格式是否正确,而是应该使用编辑器

广告成本CSV文件的内容规则和栏位

文件结构和内容规则
项目 要求

禁止字符

字符串格式中不能以==-或者@作为第一个字符。例如,@example_campign或者=123是禁止的。

媒体渠道

  • 一个文件中只含有一个媒体
  • 允许同一个媒体多个app数据
  • 限制
    • 请勿发送已经与AppsFlyer对接了成本API的媒体平台成本数据。这些平台的成本数据是不可以手动上传的。包括例如Facebook Ads,Apple Search Ads,Snapchat等。

应用所有者 

每个文件只允许一个广告主(应用所有者)。这也意味着允许来自同一个广告主的多个应用。 

文件扩展名

CSV范例:abc123.csv

文件结构

  • 格式:文件是CSV格式,意味着每栏都是用逗号分隔。请注意,这是Excel的CSV文件的默认格式。如果Excel格式文件是用分号这是与电脑的地区设置有关。 
  • 标题行:第一行是与栏位相匹配的标题行
  • 数据行 包含必填列。 注意:请确保您的数据中没有留空格。例如,[USD ](D后面跟着空格  应该改成[USD]。
  • 空白行:不被允许
  • 含有相同key的重复行:不被允许key是通过使用必填字段产生的。
  • 空白单元格:文件中不允许有空白值如果您不想上传某些字段,请不要将此字段放在文件中。

广告层级 

如果在较低的层级上传了不完整的数据,将会覆盖广告campaign层级以下的所有数据。

例如:如果您为adset1上传了带有campaign成本数据的文件,然后再单独为adset2上传了带有相同campaign的另一个文件,那么campaign的总成本会被替换,只显示adset2的数据。对于总的campaign成本数据,您上传的数据需要包含adset1和adset2. 

广告成本CSV栏位

列名称 

(区分大小写)

格式/备注

示例

强制性的内容

日期

  • 花费支出的日期
  • 格式:字符串:
    (最佳做法)YYYY-MM-DD
    YYYY/MM/DD
    MM-DD-YYYY 
    MM/DD/YYYY 
  • 未来日期是不可以的
  • 注意:您准备文件时是否使用Excel或者Google sheets?阅读这里 

2019-05-30
2019/05/30
5-30-2019 
5/30/2019
05-30-2019
05/30/2019

 

app-id

  • 格式:字符串
  • 在AppsFlyer后台中显示的App ID
  • 单个文件中允许包含多个应用的数据
  • 所有app需要属于同一个广告主账户
  • com.app.name 
  • id12356789

media-source

  • 格式:字符串
  • 广告平台的名称需要与后台展示的完全相同注意:如果在后台出现了 _int则必须要包含这个后缀 。
  • 单个文件中只允许含有一个广告平台。

network_x_int

campaign

Campaign名称。如果campaign名称出现在广告平台中,则它应该与广告平台中显示的名称完全一致(区分大小写)。

格式:字符串

campaign_a

花费

  • 货币支出
  • 允许小数点之后五位数字
  • 允许值为0
  • 注意
    • "2,874.12"的格式是不可以的。
    • 您准备文件时是否使用Excel或者Google sheets?阅读这里

2874.12345

 

 

地理位置

格式:字符串

符合ISO 3166的两位国家代码。 

对于英国请使用 UK 而不是GB。
注意:请确保您发送了不带空格的两个字符。

US, CN, AU

 

currency

  • 格式:字符串
  • 三个字母的货币代码请参考ISO4217。 注意:请确保您发送了不带空格的三个字符。
  • 文件中每个app只允许使用一种货币代码。不同的app可以使用不同的货币代码。 

USD, GBP, EUR, JPY

并不是。

如果留空则默认使用美元。

campaign-id

格式:字符串

abc1234def

并不是。

Note: If attribution data exists with both name and ID,  the CSV must contain both in order to match.

campaign

格式:字符串

campaign_name

广告集

格式:字符串  my_adset_1

adset-id

格式:字符串 id5678ghi

广告

格式:字符串。  my_ad_name

ad-id

格式:字符串。  id91011jkl

site-id

格式:字符串。  id1213mno

channel

格式:字符串。   video

keywords

格式:字符串

  • better
  • better you app
  • better you online

注意:名字中含有非英文字符的话必须使用UTF-8进行编码。

获取广告成本token

广告成本token是用来验证通过邮件发送广告成本文件的人是否有对应的上传权限。广告主和广告平台的token是不同的。 

注意

  • 广告主请勿与广告平台分享您的token。
  • 广告平台有自己独立的token。 
  • 广告主token
    • 相同的token对账户下所有app有效
    • 账户下任意团队成员都可以获取到广告成本token
  • 广告平台token
    • 相同的token适用于全部广告主。 
    • 另外,广告主需要给 广告平台 打开允许上传文件的权限。 

获取广告成本token:

  1. 在AppsFlyer左侧导航栏中,找到对接 > Ad Spend Ingestion。 
  2. 在页面的右上角,点击View Ad Spend token。
    广告成本token就会显示出来了。 
  3. 复制并保存广告成本token。

给广告平台授权上传成本数据

给广告平台授权上传成本数据的步骤如下:

  1. 在AppsFlyer后台,广告主需要在左侧导航栏选择配置  > 合作伙伴配置 
    之后,合作伙伴的页面显示出来。
  2. 选择要对接的合作伙伴。
  3. 去到授权选项卡。 
    PermissionAdNetwork.png
  4. 打开 授权广告平台按钮,如果尚未打开的话。
  5. (可选)添加团队成员。
  6. 打开 允许合作伙伴使用Ad Spend Ingestion上传广告花费数据
    按钮

通过邮件发送成本数据

邮件先决条件

  • 广告主:广告成本token 是需要的。
  • 广告平台
    • 广告成本token是需要的。 
    • 广告主需要给合作伙伴(广告平台)打开上传广告成本数据的权限。 

使用邮件发送广告成本文件

  1. 请填写完整的邮件地址字段: 
    • To:adspend-upload@appsflyer.com
    • CC:抄送需要得到自动反馈附件的用户
    • 主题:将 广告成本token复制粘贴在主题栏中 
    • 附件:带有数据的CSV文件。
  2. 发送邮件:
    • 处理完成之后,您将会收到一封发送状态的邮件,其中说明了在上传过程中发现的问题或者错误细节。这封邮件会发送至邮件中的各方,以及账户的管理员(admin)。如果发现错误,则需要采取修改措施。 
    • 您可以在Ad Spend Ingestion页面查看已提交的文件上传状态

上传成本数据文件

上传广告成本文档

  1. 在AppsFlyer左侧导航栏中,找到对接 > Ad Spend Ingestion。 上传广告成本页面展示出来。 
  2. 点击+ Ingest Ad spend file
    ,上传广告成本文件的窗口将打开。
  3. 将CSV文件拖拽至Ingest Ad spend file窗口内。
    显示正在处理文件的消息。
  4. 如果在上传过程中显示错误信息:修改错误之后重复相关步骤。 
  5. 广告成本上传总结 的窗口将打开。

    AdspendInestionFileSummary.png

  6. 请执行以下任一操作:
    • 如果要终止上传,则点击取消上传 
    • 完成上传过程,点击上传文件。
      All set!的信息显示出来。
  7. 点击上传另一个文件或者点击完成

成本上传管理

在广告成本上传页面,您可以进行以下操作。 

  • 监测上传文件的状态:需要注意那些没有尚未被成功上传,或者只上传了一部分数据的文件。您可能会需要重新上传提交文件。
  • 监测未匹配行:如果匹配行的占比很低,则可能是数据错误的征兆。
  • 下载已提交的CSV文件副本
  • 还原(取消)上传

查看上传文件和未匹配报告的权限:

  • 所有团队成员均可以查看广告成本上传页面 
  • 只有拥有该app权限的团队成员才可以访问具体的信息。
  • 如果文件中包含多个app,则团队成员需要有其中全部app的权限。

广告成本上传步骤

 查看文件层级的上传状态:

    • 在左侧导航栏中,找到对接> Ad Spend Ingestion。
      广告成本上传页面会展示已经上传的文件列表。
    • 如果您有文件中全部app的权限,那么点击Action可以执行以下操作:
      • 下载CSV文件下载上传的CSV文件的副本。
      • 下载未匹配报告:适用文件中所有app。

查看app层级的上传状态:

  • 选择文件。
    app-level页面展示出来。文件中包含的app列表展示出来。

    Adspendingestions2.png

  • 如此处所述,选择文件层级或者app层级来执行操作:
  • 文件层级:如果您有文件中包含的全部app的权限,则可以使用页面右上角来执行如下操作: 
    • 还原(取消) 文件中全部app的广告成本上传。 
    • 下载 已经提交的CSV文件副本。 
  • app层级: 如果您有特定的某个app权限,则可以通过Action执行以下操作:
    • 下载app数据。
    • 下载该app的未匹配数据报告 
    • 还原(取消)所选应用的广告成本上传。 

状态解读

状态 备注
已应用 操作成功完成
还原 操作成功完成
处理数据中出错

AppsFlyer系统问题等待10分钟后重试。如果仍旧失败,i去那个联系AppsFlyer技术支持团队。

没有进行授权

该token没有被授权此app使用

  • 广告主:请查看app id是否正确。
  • 合作伙伴:请与广告主确认是否已经在合作伙伴授权页面打开允许上传广告成本 按钮。 

验证错误

 

 

匹配及未匹配行报告

Row matching is the process where the ingestion mechanism matches the ad spend rows reported by ingestion with attribution data recorded in the Dashboard. This is done using all dimensions available in file’s schema, such as media source, campaign, adset, ad, etc. If they all match, the rows are designated as is-matching=TRUE. 

名称 vs IDs

Ad Spend Ingestion identifies a dimension, such as campaign, adset, or ad by its name, without the ID.  At present, Ad Spend Ingestion doesn't support spend reporting using IDs. 

注意:无论匹配状态如何,成本数据都将被记录。

 例如:匹配与未匹配行

日期 媒体渠道 广告系列活动 展示 点击 成本 匹配状态
2019-01-01 example abc 5000 100 $1000 is-matching = TRUE
Performance information found
2019-01-02 example abc       is-matching = FALSE
No performance information on 2019-01-02
2019-01-02 example influencer     $2500

is-matching = FALSE
No performance information on 2019-01-02

上传页面中展示出已匹配行的占比。

如果意外出现未匹配行的情况,请下载未匹配行报告查看原因。如果有需要,请点击还原来取消上传。

未匹配报告中包含一栏叫做is-matched,其值会包含TRUE (匹配) 或者FALSE (未匹配)。

广告成本上传页面会展示已匹配行的占比。

Adpsendmatching.png

覆盖(回溯)之前上传的成本数据

之前上传的成本数据可以通过上传与之前文件含有相同key的数据来实现覆盖(回溯)。

该key是通过数据中的广告平台和campaign字段形成的。如果key一致,最后上传的数据将会覆盖之前上传的数据。

以下示例说明了如何覆盖广告成本。

 示例:广告成本回溯

+ 代表必填字段

示例A

周一上传Spend1.csv文件
Date+ App ID+ Media Source+ Campaign+ 广告支出
2019-06-01 com.my.app network_x campaign_a 100
周二上传Spend2.csv文件
Date+ App ID+ Media Source+ Campaign+ 广告支出
2019-06-01 com.my.app network_x campaign_a 200
Spend1.csv文件中的成本数据会被spend2.csv文件中的数据覆盖。因为spend2.csv是最近一次上传的数据,并且由必填字段生成的key与Spend1.csv是一致的。 

示例B

周一上传Spend3.csv文件
Date+ App ID+ Media Source+ Campaign+ 广告支出 地理位置
2019-05-01 com.my.app network_x campaign_a 100 美国
2019-05-01 com.my.app network_x campaign_a 200 CN
周二上传Spend4.csv文件
Date+ App ID+ Media Source+ Campaign+ 广告支出
2019-05-01 com.my.app network_x campaign_a 50
Spend3.csv文件中的成本数据会被spend4.csv文件中的数据覆盖。因为spend4.csv是最近一次上传的数据,并且由必填字段生成的key与Spend3.csv是一致的。注意:Spend3.csv中的两行数据都将被覆盖。 

疑难解答

错误信息和解决方案

下表列出了广告成本上传时所有可能的错误消息和相应的解决方案。

广告成本上传错误信息与解决方案
错误信息 描述 解决方案
文件中的所有app id均不存在与AppsFlyer中。请确认app id是否正确。 账户中不存在该app id。 更换app id之后重新上传。

Line [line name] has the wrong number of columns. Expected [number] columns, received [number] columns.

文件中的所有列都必须有值。 根据您定义的表头更改文件中填充的值。
文件头中缺少“media-source”。
  • 文件表头缺少media-source。
  • 列名需要与我们定义的栏名称完全一致。
将media-source添加在表头行名。
The file can contain only one media source. Multiple media sources encountered in the file: [number of media sources].  单个文件中含有多个广告平台是无法上传的。 将每个广告平台的上传文件拆分为一个单独的文件。
The value provided [value] for [field] is not a valid value for this column. 列中的数据格式不正确。例如,日期结构是dd-mm-yy而不是yyyy-mm-dd。 更正格式后重新提交。 
该应用包含了多种货币。请在文件中每款应用使用单一的货币。使用的货币:%货币数量% 每个app只可以使用一种货币。 请在文件中使用单一货币,修改之后重新提交。
The following columns in the file header are not supported: [file headers]

文件表头与栏位名称不一致。也就是说,表头的参数名必须与栏位名称完全一致。

删除掉不支持的列,然后重新提交。
Missing required columns in file header: [file headers] 文件表头缺少必填列。 添加缺少的必填列和对应的值,然后重新提交。
The app contains a future date: [date] 不可以填未来日期。 将日期更正为今天或者更早一些的日期,然后重新提交。
此表为空,没有需要处理的数据。 此表为空。 填充文件中的数据并重新提交。
The following two rows conflict due to identical dimensions. Please provide a single row of spend per set of dimensions. [conflicting rows] 有超过两行包含完全相同的key(必填字段相同)。 删除重复行然后重新提交。
The file can contain data only from a single advertiser account. Different advertisers encountered in file: [advertiser names] 对于广告平台来说,不可以单次上传多个广告主的成本数据。 将每个广告主的数据拆分为单个文件。
The app [app ID] doesn't exist in the account. Please verify the app ID. 账户中不存在该app id。 更app id后重新提交。
Geo (country) code was not found for app [app ID]. Use an ISO 3166 2-letter code 地理位置不存在。 更正地理位置后重新提交。
Currency code was not found for app [app ID]. Use an ISO 4217 3-letter code. 货币不存在 请将货币更改为有效货币,然后重新提交。
文件中存在一个或多个app存在验证错误。请浏览文件以获取更多详细信息。 文件中存在多个错误。 下载文件并查看错误。
处理文件时发生内部错误,请尝试重新上传。
  • 处理文件发生后端错误。
  • 通常是临时问题。
请等一小时后重新尝试。

上传的成本数据不显示或显示为单独的行

现象: 成本数据上传成功了,但是没有显示。

  1. 在面板上,检查是否campaign名称显示了多次。
  2. 如果是的话,请找到campaign ID为空的行。
    campaign ID为空的行会包含成本数据。 

现象: 上传的成本数据出现在单独的行(额外行),而且没有表现数据(激活)。  campaign ID 参数为空。

原因: 当使用成本上传功能时,您只使用campaign名称来标识广告系列。您无法上传campaignID。因此, 上传的成本数据展示为独立的一行,没有campaign ID或没有表现数据。

使用Excel去格式化CSV文件中的日期和费用字段

当使用Excel/Google sheets去创建一个CSV文件时,需要在保存为CSV文件之前,正确地设置日期和花费列。使用以下方法正确设置文件中的日期和花费。 

保存CSV文件之后,请确认内容的格式是否正确。注意:请勿使用Excel进行验证,请使用编辑器。 

在Excel中格式化日期单元格

在Excel中格式化日期单元格,格式如YYYY-MM-DD

  1. 选中需要被格式化的表。
  2. 右键,选择格式化单元格
    格式化单元格的窗口打开。

    Formatdate..png

  3. 选择Custom
  4. 在类型字段中,输入YYYY-MM-DD
  5. 点击OK
    日期已格式化。

在Excel中格式化花费单元格

Excel通常在值的单元格中用逗号来分隔千位,如图所示。此格式不适用于广告成本上传的文件。 

mceclip1.png

您可以通过格式化Excel中的单元格来更正此问题。 

格式化的金额中不包含千位分隔符: 

  1. 选中需要被格式化的表。
  2. 右键,选择格式化单元格
    格式化单元格的窗口打开。
  3. 选择Number

    Formatnumbers.png

  1. 清除 使用千位分隔符(,)。 
  2. (可选)设置数字的小数点位数。默认是2,最大可以设置为5。 
  3. 点击 OK
    单元格的格式正确。

请勿使用Excel来浏览检查CSV文件。

需检查CSV文件内容时,请使用编辑器来查看该文件。 

  • Windows: Notepad, Notepad++
  • macOS: TextEdit

以下是一个CSV示例文件 在编辑器中显示出的截图。 

编辑器视图

mceclip1.png

使用编辑器来检查CSV文件。请特别注意以下几点:

  • 空格:请确保在分隔字段的逗号之前或之后没有空格。在Excel中,使用@trim命令来删除空格。 
  • 日期: 请确保日期的字段格式为YYYY-MM-DD。 
  • 花费:请确保花费栏中没有逗号。

    mceclip1.png 

Excel生成的CSV文件没有逗号作为分隔符

如果Excel生成的CSV文件中包含分号";"或其他字符作为分隔符,而不是逗号:

  • 这可能是因为您电脑的区域设置被设置为非英语的语言/地区而造成的。
  • 在区域设置中选择德语时,此问题尤其普遍。
  • 解决方案取决于您的计算机操作系统(macOS或Windows)。
  • 要解决此问题,请搜索Microsoft最新的指南或其他论坛。使用以下搜索词:操作系统(macOS或Windows)Excel更改CSV文件分隔符。

特性和限制

特征:

广告成本上传特点
特征 支持广告成本上传 备注
广告网络    
代理商 X  
代理数据透明化 X  
应用设定的时区  
应用设定的货币 campaign花费会转换为app设置的币种 
大小限制 不适用  
自然用户数据  
非自然用户数据  
数据新鲜度 监测的  
历史数据

成本报告可以被取消或更正 限制在数据 提交之后最多90天

团队成员访问  

限制

如果广告系列层级结构中的字段名称与归因数据中显示的字段名称不匹配,则会将它们分开显示。 

例如,如果campaign名称不匹配,那么即使campaign ID相同,也会将它们视为不同的campaign。

这篇文章有帮助吗?

此组别内的文章