概要:验证规则(Validation Rules)可针对广告误投和作弊强化防护。广告主可以通过自定义的规则,把控应用内事件的拦截和归因修正。
简介
- 广告主可以在AppsFlyer后台的规则配置页面中界定流量的验证规则。我们提供多种可定制的条件和逻辑,帮助广告主筛选出需要保留或拦截的应用激活或应用内事件。
- 这些规则以一系列参数为基础,适用于下列各种使用场景:
- 排除不符合定向人群的激活(如国家/地区、操作系统版本等不匹配)
- 流量不符合广告主与广告平台签订的广告订单时,排除相关激活
- 排除被作弊平台劫持的激活
- 排除由自动化脚本(bots)、模拟器或设备农场伪造的虚假激活
- 针对应用内事件配置的规则仅对未被拦截的激活所产生的应用内事件生效。
- 如果规则中涉及某个广告平台,则该广告平台的成员可以看到这条规则(但无法看到该规则中涉及的其他广告平台)。这一机制既是为了提高透明度,也有助于广告平台更好地了解其流量质量。
- AppsFlyer实时执行这些规则,触发后即时生效。详情请见验证结果说明部分。
- 购买了Protect360的广告主除了自动的Protect360假量拦截和检测功能外,还可以手动设置额外的验证规则。实践证明,这些验证条件对于激活劫持、虚假激活和应用内事件这几种作弊类型非常有效。
请注意:验证规则仅用于验证未被Protect360判定为假量的激活/应用内事件。
验证结果
- 适用于激活的验证结果: 1)阻断当前渠道的归因并将激活归因到上一个触达用户的有效渠道,或2)彻底阻断归因。具体取决于选定操作。
- 适用于应用内事件的验证结果:阻断应用内事件的归因。
-
详见下表所列的验证规则拦截类型及其结果。
拦截类型 说明 激活数据的呈现位置 后续的应用内事件 激活 阻断当前渠道的归因并纠正到上一个有效渠道 - 适用于真实激活,可根据您指定的条件归因或不归因到具体渠道。
- AppsFlyer会纠正归因结果,即将激活归因到上一个触达用户的有效渠道。
- 如果未发现有效渠道,则相关激活会标记为自然量。
- AppsFlyer面板及原始数据报告中显示为常规激活(归因到上一个触达用户的有效渠道)
- 购买了Protect360高阶付费套餐的广告主:
- Protect360激活面板
- Protect360激活原始数据报告(包含被拦截的媒体渠道)
- 未购买Protect360高阶付费套餐的广告主:
- Protect360激活原始数据报告(包含被拦截的媒体渠道)
- 归因结果与纠正渠道后的激活相同
- Protect360高阶付费套餐可提供下列数据:
- AppsFlyer面板和报告中标记为常规应用内事件,并显示已纠正的归因结果
- Protect360的应用内事件面板和已拦截的应用内事件原始数据报告中也会显示这些事件,并同时呈现被拦截的渠道
将激活标记为无效,不进行归因 - 适用于根据指定规则的条件被判定为虚假激活的流量
- 相关激活的归因会被彻底阻断(即不会归为非自然量也不会归为自然量)
- 购买了Protect360高阶付费套餐的广告主:
- Protect360激活面板
- Protect360激活原始数据报告(包含被拦截的媒体渠道)
- 未购买Protect360高阶付费套餐的广告主:
- Protect360激活原始数据报告(包含被拦截的媒体渠道)
- 已拦截的激活
- 已购买Protect360高阶付费套餐的广告主可在Protect360的应用内事件面板和已拦截的应用内事件原始数据报告中查看该数据
应用内事件 拦截归因 - 适用于根据指定规则的条件被判定为假量的无效应用内事件
-
购买了Protect360高阶付费套餐的广告主:
- Protect360的应用内事件面板
- Protect360应用内事件原始数据报告
- 未购买Protect360高阶付费套餐的广告主:不适用
- 已购买Protect360高阶付费套餐的广告主可在Protect360的应用内事件面板和已拦截的应用内事件原始数据报告中查看该数据
从AppsFlyer中彻底删除相关事件 - 如果您对于某些应用内事件完全不需要任何数据,建议使用该选项
- 选择该选项后AppsFlyer完全不会记录这些事件
- 广告平台和代理可以查看相关数据,但需要广告主为其开通权限。
- 每当有激活被实时拦截或归因纠正到有效渠道时,我们会立即向被拦截的广告平台发送拦截流量回传,以简化您的对账流程。AppsFlyer阻断当前渠道的归因并将流量归到上一个有效渠道时,也会向获得归因的广告平台发送回传。
-
每当有应用内事件被拦截时,我们会立即向被拦截的广告平台发送拦截回传。
请注意: -
激活和应用内事件的拦截仅会影响相关数据在AppsFlyer中的上报方式及呈现位置,不会影响终端用户对相关应用的使用。
- 如有需要,您可以使用被拦截的激活和应用内事件原始数据报告(可通过导出数据页面、Pull API和Data Locker获取)来创建用户黑名单。
-
被拦截的激活/应用内事件报告以及拦截回传的拦截原因一栏中会列出拦截相关激活/事件时所使用的规则。对于多规则场景,请参阅多规则并行部分的说明。
- 如果相关激活/应用内事件被Protect360的防作弊引擎拦截,则即使有适用的验证规则,报告中仍会呈现Protect360的拦截原因。
- 启用验证规则可能会导致AppsFlyer与Meta ads及Google Adwords等SRN之间产生数据差异,因为这些平台会使用其自有逻辑来验证激活。
多规则并行
- 如果某个激活/事件同时满足多个规则的条件,就会出现多条验证规则同时对同一个激活/事件生效的情况。
- 如果某个激活/事件不符合任何一条规则的条件,则会被判定为无效。
- 原始数据报告及拦截回传会在拦截原因(block reason)字段的值中列出所有将相关激活或事件判定为无效的规则名称。
- 多规则并行时,各规则的执行顺序按其拦截类型排列,具体如下:
规则/拦截类型 | 执行顺序 |
---|---|
拦截激活 |
随机 |
阻断归因 |
随机 |
拦截应用内事件 |
随机 |
从AppsFlyer中彻底删除 |
将事件及其所有相关数据从AppsFlyer中删除,并忽略其他规则。 |
拦截激活及阻断归因 |
|
使用Protect360引擎和验证规则拦截激活和阻断归因 |
|
使用Protect360引擎和验证规则拦截应用内事件 |
|
规则配置界面
规则配置界面旨在为您提供更具互动性的规则配置体验。小贴士:建议您在细读本文前先探索一下规则配置界面中的各种选项,熟悉其中的内容。
规则配置界面中包含以下几个板块:
板块 | 说明 |
---|---|
通用信息 |
这里的设置决定了后面几个板块(代理、媒体渠道、广告投放等)中可用的选项 |
流量来源 | 设定这条规则所适用的流量。另请参阅Protect360流量来源说明部分 |
条件 |
选择拦截“符合”或“不符合”指定条件的激活/应用内事件。
|
处理方式 |
对于符合指定条件的激活,设置AppsFlyer的处理方式:
对于符合指定条件的应用内事件,设置AppsFlyer的处理方式:
详情请见验证结果说明部分 。 |
激活来源
来源部分用于设定相关规则所适用的激活流量来源。
这里有两个主要的选项:
-
所有流量:选择该选项后相关规则会对所有激活生效,无论其流量源自何处(即包括代理、媒体渠道、广告系列、自然量)。
请注意:由于该选项包含自然激活,因此无法再选择更细的流量来源维度,仅可设置拦截激活选项。由于自然激活本就在归因范围之外,因此无法阻断其归因或纠正其归因结果。 - 仅限非自然流量:选择该选项可让相关规则仅对选定流量生效。您可以使用下表所列的字段、运算符和字段值来界定具体流量。
购买了Protect360的广告主还可以使用额外的激活 和应用内事件流量选项。
字段 | 运算符 | 字段值 | 说明 |
---|---|---|---|
Agency(代理) |
|
|
|
Media source(媒体渠道) |
|
|
|
Campaign(广告系列) |
|
|
|
Campaign ID(广告系列ID) |
|
||
Ad ID(广告ID) | |||
Ad set ID(广告组ID) | |||
Ad set name(广告组名称) |
激活条件
您可以在条件部分中设置判定条件,以便针对符合条件的激活阻断归因或将其归因到上一个有效渠道。
每一条规则下都可以添加多个条件和条件组合。
下表列出了设置条件时可用的维度、运算符和值。
购买了Protect360的广告主还可以使用额外的激活和应用内事件条件选项。
条件 | 运算符 | 字段值 | 说明 |
---|---|---|---|
Campaign(广告系列) |
|
|
|
Campaign ID(广告系列ID) |
|
||
Ad ID(广告ID) | |||
Ad set ID(广告组ID) | |||
Ad set name(广告组名称) | |||
Device type(设备类型) | |||
Geo(国家/地区) |
|
|
|
Platform(系统平台) |
从菜单中选择所需值。 |
||
OS version(操作系统版本) |
|
|
|
Lookback days(回溯天数) |
|
|
|
Is preinstalled(是否为预装) |
|
|
|
Is deeplink(是否为深度链接) |
若某激活原始数据中的深度链接字段为空,该激活会被判定为Is deeplink = No |
应用内事件来源
如果您购买了Protect360,并在事件部分中选择了应用内事件,则在界定规则所适用的应用内事件时,除了常规的流量来源选项之外,还有一个额外的专属选项可用。
您可以使用下表所列的字段、运算符和值来界定流量来源。
请注意:相关应用内事件的所有其他来源字段都与其初始激活一致(如代理、媒体渠道、广告系列、广告系列ID、子渠道ID等)。
字段 | 运算符 | 字段值 | 说明 |
---|---|---|---|
Event name |
|
|
|
应用内事件条件
如果您购买了Protect360,并在事件部分中选择了应用内事件,则在界定规则所适用的应用内事件时,还可以使用额外的专属选项。这些条件可以与前文所列的非Protect360专属条件搭配使用。
您可以使用下表所列的条件、运算符和值来界定Protect专属条件。
条件 | 运算符 | 字段值 | 说明 |
---|---|---|---|
Event name |
|
|
|
Protect360专属的激活和应用内事件来源选项
如果您购买了Protect360,则在界定相关规则所适用的流量来源时,除了常规流量来源选项外,还会有额外的专属选项可用。您可以使用下表所列的字段、运算符和值来界定流量来源。
字段 | 运算符 | 字段值 | 说明 |
---|---|---|---|
Site ID |
|
|
|
Protect360专属的激活验证条件
购买了Protect360d的广告主可使用一系列专属条件来验证其激活。这些条件可以与前文所列的非Protect360专属条件搭配使用。
您可以使用下表所列的条件、运算符和值来界定Protect专属条件。
条件 | 运算符 | 字段值 | 说明 |
---|---|---|---|
CTIT(点击到激活时间) |
|
|
|
Customer user ID(客户用户ID,即CUID) |
|
|
|
App version(应用版本) |
|
|
|
SDK version(SDK版本) |
|
|
|
Installer/Store(安装程序/商店) |
|
从菜单中选择所需值:
|
如果某个用户的设备不向AppsFlyer提供安装程序/商店参数,这条规则不会对此用户生效。 |
Attribution touch type(广告触达类型) |
|
|
|
Carrier(移动运营商) |
|
|
|
User Agent(用户代理) |
|
|
|
IP address(IP地址) |
|
|
Protect360专属的应用内事件验证条件
如果购买了Protect360的广告主在事件部分中选择了应用内事件,则在界定规则所适用的应用内事件时,还可以使用额外的选项。这些条件可以与前文所列的非Protect360专属条件搭配使用。
您可以使用下表所列的条件、运算符和值来界定Protect专属条件。
条件 | 运算符 | 字段值 | 说明 |
---|---|---|---|
Event source |
|
|
选择SDK或服务器到服务器 |
Event value |
|
|
|
Install to event time(激活到事件时间,以秒为单位) |
|
输入自定义文本,仅支持单个数值。 |
|
条件和条件组之间的逻辑
如果您在一条规则下添加了多个条件或条件组,需要选择这些条件或条件组之间的逻辑关系,可用选项为:
- And(并且):即相关激活需符合您设定的所有条件。
- Or(或者):即相关激活至少需符合您设定的条件之一。
举例来说,如果您想要同时根据系统平台和系统版本来验证激活,这时必须选择and,让AppsFlyer只验证使用指定版本的指定系统的用户。如果您想要根据系统平台或系统版本两者之一来验证激活,则必须选择or。
流程
查看规则列表
如需查看相关账户下的所有规则,请按以下方式操作:
-
从AppsFlyer后台进入配置 > 验证规则。
界面会打开验证规则窗口,其中呈现验证规则列表。 - 使用列表视图/详情视图切换按钮,根据您的偏好选择表格视图。
-
使用搜索和筛选选项对列表中的规则进行筛选。
- 您可以按规则名称、流量来源、条件名称和字段值进行搜索。
- 比如可以输入数字7来搜索将操作系统版本条件设置为版本号带有7的所有规则(如“2.7.4”、“7.1”等等),或者输入Canada搜索将加拿大设置为国家/地理条件的规则。
添加规则
新规则的添加方式如下:
-
从AppsFlyer后台进入配置 > 验证规则。
界面会打开验证规则窗口。 -
点击添加规则。
界面会打开“添加新规则”窗口。 - 输入规则名称。 请使用符合以下要求且带有唯一性的名称:
- 可准确描述该规则。
- 对广告平台没有冒犯性。该名称会出现在被拦截的激活报告以及拦截回传中,发送给广告平台。
- 完成规则配置部分的设置。
- 【可选】根据实际需求添加条件和/或条件组。请确保各条件/条件组之间的逻辑关系设置正确。
- 【可选】点击预估流量变化,查看这条规则会对流量产生什么样的影响。
- 点击保存。
查看验证规则的影响
您可以查看相关验证规则可能会对流量产生的影响水平预估,即规则生效后可能会被拦截的激活和归因数量。
注意
- 验证规则预估功能仅对广告主可用,渠道没有访问权限。
- 预估功能仅适用于针对激活设置的条件,不支持应用内事件的条件。
- 即使适用于当前验证规则的流量已被其他机制拦截(如Protect360防作弊体系、其他规则或当前规则的以往设置),也会被计入预估值中。
如需查看相关验证规则可能造成的流量变化预估,请按以下方式操作:
- 从AppsFlyer后台进入验证规则。
- 选择现有规则或点击+ 添加规则以创建新规则,并为其设定流量来源和条件。
-
向下滚动到该规则的底部,然后点击预估流量变化。
界面会打开该规则的“预估流量变化”窗口。 - 选择以最近1天或7天的数据为基础进行预估。
验证规则的编辑或删除
如需编辑、删除、启用或禁用某条规则,请按以下方式操作:
- 在规则列表中找到相关规则。
- 使用活跃(Active)按钮启用或禁用该规则。
- 点击规则名称进入操作页面。点击垃圾桶图标删除该规则,或更改该页面中的内容对该规则进行编辑。
常见问题解答
什么是“正则表达式”(regular expression)?
正则表达式由字符组成,用于查找匹配项。如果您需要查找某个字符串的直接匹配项,可使用该字符串组成简单的正则表达式。如需查找更为复杂的匹配项,可在表达式中加入特殊字符。
示例:
正则表达式 | 说明 |
---|---|
^abc | 以abc开头 |
xyz$ |
以xyz结尾 |
^abc.*xyz$ |
以abc开头且以xyz结尾 |
^abc.*(?<!xyz)$ |
以abc开头且不以xyz结尾 |
^([0-9]{2}) |
以2位数字开头 |
\"example_param\":\"[5|6] | 指定参数的值以5或6开头。 |
^.{0}$|^\{\}$ | 值为空或{} |
搜索流量来源或条件时没有出现相关词条,为什么?
可能导致该情况的原因有以下两种:
- 应用的选择有误。请确保您要搜索的值适用于选定应用,否则搜索结果中不会出现这些值。
- 搜索结果仅显示过去30天内的流量中出现过的值。此外,相关转化发生后,其流量来源或的条件选项最多需要1天时间才会出现在菜单中。
如果您需要的值未出现在搜索结果中,可以将其作为自定义文本输入相应字段中,然后按下回车键。
为什么媒体渠道菜单中只有Meta ads和X Ads两个选项?
媒体渠道字段的选项取决于您选定的代理。如果您在流量来源中选择了不透明代理,则除了Meta ads和X Ads外没有其他可用的媒体渠道选项,因为只有这两个渠道是不透明代理也必须共享的流量来源。
请注意:如果相关规则对多个应用生效,且有代理在某个/部分应用中设置为透明,而在其他应用中设置为不透明,则该代理仍会被视为不透明代理。这时您也无法选择Meta ads或X Ads以外的其他具体渠道。
具体条件和条件组之间是否必须同时使用“and”和“or”的逻辑关系?
不是一定要同时使用这两个逻辑关系,具体取决于您的实际需求。某些情况下任一选项都可产生所需的结果,有时则必须两者一并使用。
举例来说,假设您在美国仅验证V10或以上版本的操作系统产生的激活,但在巴西验证V7或以上版本,这时需要设置以下规则:
{[Geo = US] and [OS version = 10]} OR {[Geo = Brazil] and [OS version = 7]}
验证规则会拦截点击吗?
不会。验证规则可以拦截激活、阻断某个激活流量来源的归因(即不让产生点击/展示的媒体渠道获得归因)或拦截应用内事件,但这些验证方式中都不包含实际点击的拦截,且执行验证规则不会影响点击KPI。
在原始数据中,本应被某个验证规则拦截的激活下显示的拦截原因不是该规则的名称,为什么?
出现这种情况说明相关激活是被Protect360引擎拦截的,而非验证规则。详情请见多规则并行说明部分。
现有规则是否会自动对新对接的代理流量生效?
这取决于您在流量来源部分的设置,详见下表。
如果相关规则未自动生效,请按以下方式编辑该规则:
- 将代理字段更改为代理和非代理流量或选择具体代理。
流量来源设置 |
代理字段的选项 |
如果该规则创建时您的应用尚未与任何代理对接,则对接新代理后该规则是否自动生效? |
如果该规则创建时您的应用已至少与一个代理对接,则对接新代理后该规则是否生效? |
---|---|---|---|
所有流量 |
不适用 |
是 |
是 |
仅非自然量 |
不适用 |
否 |
不适用 |
代理和非代理流量 |
不适用 |
是 |
|
非代理流量和/或 特定代理 |
不适用 |
否 |
如何使用“not in last”条件?
“not in last”(不在最后n个版本中)适用于对某一个系列的应用版本进行验证的规则,“Not in last (major) ”则适用于对多个系列的应用版本进行验证的规则。
示例:
- 您的应用有1.0和2.0的一系列版本。
- 以下为该应用的所有现行版本:
- 1.0.01
- 1.0.02
- 1.0.03
- 2.0.01
- 2.0.02
- 2.0.03
- 若将验证规则设定为“Not in last 2 versions”(不在最后2个版本中),则该规则会拦截:
- 2.0.02
- 2.0.03
- 若将验证规则设定为“Not in last (major) 2 versions”(不在主版本的最后2个次版本中),则该规则会拦截:
- 1.0.02
- 1.0.03
- 2.0.02
- 2.0.03
特点与局限性
特点 | 说明 |
---|---|
相关账户下的用户权限 | 相关账户下的用户必须具有必要权限才能查看、添加和编辑验证规则。 |
用户获取 | 验证规则适用于激活、重装激活和再归因(即已从设备中移除相关应用的用户),但不适用于再互动(即设备中仍装有相关应用的用户)。 |
自动停用规则 |
如果您创建的规则:
|
广告平台 |
广告平台仅在广告主为其开通权限后才能查看验证规则,了解规则详情。请注意:规则名称总是对广告平台可见(原始数据中也会呈现规则名称)。 详情请见广告平台的验证规则说明 |
代理 |
*代理仅在广告主为其开放相关权限后才能:
详情请见代理的验证规则说明 |
独立用户数 |
如果您配置了超过100个应用内事件,即使您使用了验证规则来排除应用内事件,仍会受到独立用户数限制的影响。也就是说,对于100个以后的事件,即使AF根据您的验证规则将这些事件判定为无效,这些事件也不会有独立用户数信息。 |
SKAN |
不支持 |