全部文章

大规模广告验证:地理真实性问题

2025年美国程序化广告因无效流量损失达370亿美元。验证该笔支出需要在每个投放市场进行本地观测,而不能仅依赖美国数据中心。

Fraudlogix将2025年美国程序化无效流量比例设定为20.64%。在1800亿美元的支出中,约有370亿美元流向了机器人、伪造广告库存或专为广告建立的网站。DoubleVerify、IAS和Peer39等验证供应商对部分曝光量进行抽样,并对剩余部分进行评分。品牌方会相信这个评分,直到内部审计发现偏差。

偏差在此产生。如果您从美国数据中心IP检查巴西的营销活动,您看到的与圣保罗移动用户看到的并不一样。您看到的是后备创意素材、不同的竞价获胜者,或者什么都没有。没有本地视角的验证,就像抛硬币来决定您的数据是否符合实际。

各个市场的欺诈率也不尽相同。Fraudlogix的国家/地区明细显示韩国为23.47%,墨西哥为22.81%,巴西为22.33%。如果您的媒体计划跨越十几个国家,您就需要十几个观察点才能进行客观评分。

方法

程序化广告验证分为三个问题,都需要基于真实地理位置的渲染:

  1. 展示位置审计。 广告是否出现在您的DSP报告的URL上,在首屏内,并与安全内容相邻?
  2. 创意素材检查。 预期的创意素材是否渲染成功,还是恶意发布商替换了与品牌不符的内容?
  3. 落地页验证。 点击实际上会跳转到哪里?落地页URL可能会因国家、设备甚至ISP的不同而异。

这些都无法从单一观察点起效。Header bidding在观看者的浏览器中运行实时拍卖,赢家取决于IP、cookie和设备配置文件。在同一秒内从法兰克福和圣保罗抓取相同的发布商URL,您会得到两个不同的HTML文档。这不是网站中的bug。这是广告技术栈按设计运行的结果。

一些验证设置试图通过将User-Agent固定为pt-BR并设置Accept-Language header来伪造本地视图。Ad exchange对此毫不在意。竞价者根据报告的IP所属地理位置进行路由,而不是根据客户端声称的header。如果IP解析为弗吉尼亚州的数据中心,即使您的header极力宣称是巴西,您获得的仍是美国广告库存。网络路径没有捷径可走。

营销活动目标定向越精确,这种情况就越明显。由邮政编码和移动运营商定义的重定向池,在法兰克福数据中心出口显示为未填充,而在德国电信移动用户IP上显示为实时曝光。这两个结果对于它们各自看到的内容都是正确的。但只有一个结果能告诉您买家实际看到了什么。

因此,基础架构必须同时完成三件事。从目标国家/地区的真实ISP退出。在广告位需要时渲染JavaScript。并且避免如此频繁地从同一个IP访问同一个发布商,以免看起来像个爬虫而不是受众。

使用FourA API的一个实用模式:

import requests

# Fetch the placement page from a Brazilian exit
r = requests.post(
    "https://api.foura.ai/api/proxy",
    headers={"Authorization": "Bearer pk_live_..."},
    json={
        "exitCountries": ["BR"],
        "maxTries": 5,
        "request": {
            "url": "https://publisher.example.com/article/1234",
            "validate": {
                "status": {"accept": [200]},
                "data":   {"fail":   ["captcha", "Just a moment"]}
            }
        }
    }
).json()

# r["data"] holds the HTML; the response also echoes the country that
# served the request, so you can log the market you observed from.
html = r.get("data")

对于广告位在 JavaScript 执行后才解析的发布商,请将 URL 交给 /api/auto,让其选择渲染路径。Auto 会学习哪些国家或地区实际为该主机提供内容,并通过它们路由未来的调用,因此随着已学习 session 池的增长,针对上千个 URL 的品牌安全扫描会变得更快且成本更低。我们的房地产文章针对不同的垂直行业探讨了相同的多地域模式。

结果

一个说明性的品牌方设置:分布在 12 个国家的 800 个受监控的投放 URL,每天检查两次。也就是每天 19,200 次检查,每次一个 API 调用,每个主机的 session 都会被缓存,因此大多数后续调用会跳过浏览器渲染。团队最终看到的结果:

  • 每个市场每天进行审计,而不是每月抽样。 验证供应商的个位数采样率得到了对你花费最多的 URL 的全面扫描的补充。
  • 在数小时内发现差异。 创意替换或投放变更会在活动烧掉另一天的预算之前被标记出来。
  • 比在自有云中的 headless 集群更便宜。 在每个区域运行浏览器农场的成本,加上住宅 proxy 合同的成本,都不复存在。每次检查你只需调用一个 endpoint 即可返回渲染后的页面。
  • 每次检查的审计追踪。 每个 response 都包含渲染后的 HTML,提供服务的国家以及你可以记录的不透明 proxy ID。当出现差异时,你有确切的证据可以交给品牌团队,代理商或发布商。

实际支出取决于 URL 的数量,频率以及有多少需要完整的浏览器渲染。但模式是相同的:为交付的内容付费,而不是为周围的脚手架付费。

核心要点

验证是一个衡量问题。它不会通过过度信任单一视角而变得更准确。它通过增加视角而变得更准确。十二个市场意味着十二个出口。任何少于此的数量都只是带有报告的猜测。