在人们称一个页面已经变现之前,通常都会先往页面上添加一些东西:标题上方的通栏广告,屏幕底部的粘性广告单元。这种说法假定收入来自面积,没有多余面积的页面也就没有多余的收入。业界自己的标准也有同样的假定:它们按广告所占页面的比例来衡量广告,而对任何其他广告资源只字未提。

已发布的标准按页面高度的比例限制广告

有两条已发布的规则阐明了这种面积假定。更佳广告联盟列出了低于其《更佳广告标准》的广告体验。在移动端,列表中包括“广告密度高于 30%”,在桌面端则包括“广告密度高于 50%”。1其定义是一道算术题:将页面主要内容部分中所有广告的高度相加,再除以该部分的总高度。2Google 的发布商政策用文字设定了类似的限制:在“广告或其他付费推广材料多于发布商内容的屏幕上”,不允许展示 Google 投放的广告。3

接近这两个限制之一、又想从广告单元中获得更多收入的发布商,有两个选择。第一是在广告单元下方添加内容,以降低比例。第二是重新设计,移动或缩小现有内容以腾出空间。两种选择都无法消除广告单元必须占据高度这一要求。

页面上已有的词语,是这些规则从未衡量过的广告资源

在一个由文字构成的页面上,发布商尚未出售的并不是文字周围的空白区域。而是词语本身:文章已经在讨论的产品名称、工具名称、地名和服务。它们是通常意义上的广告资源:广告主可以购买它们,而且它们已经处于最终位置。

这就是文内气泡所出售的东西。嵌入脚本是一个脚本 adbubbles.js,一旦它被加入网站,文章中已有的词语就会显示一条浅色点状下划线。悬停或点按会从该词语打开一个气泡。气泡包含一个“Ad”(广告)标签、一个最多 40 个字符的标题、一段最多 90 个字符的正文、广告主的显示域名、一个链接,以及一个“Ads by AdBubbles”标记。词语留在原处,气泡会在鼠标移开、按下 Escape 键或点按其外部区域时关闭。

以这种方式读取文字是浏览器的常规工作:MDN Web Docs 将 TreeWalker 对象描述为“表示文档子树的节点以及其中的一个位置”的对象。4逐个遍历这些节点的脚本读取词语,而不会给布局增加任何东西。嵌入脚本只扫描发布商配置的范围。

发布商决定嵌入脚本读取哪里、显示多少

有三项设置归发布商所有。第一项是范围,即嵌入脚本可以扫描的页面部分,例如 article 元素。第二项是一个页面上的最多气泡数。第三项是要排除的广告主类别列表,作为 AdBubbles 在所有地方禁止的类别之外的补充:赌博、成人、武器、加密货币、保健补充剂和政治。在范围内,嵌入脚本会跳过标题、链接、代码、预格式化文本、表单控件、导航、页眉、页脚,以及任何标记为 data-noads 的内容。

嵌入脚本只为每个已购买词语的第一次出现添加下划线,每个词语最多打开一个气泡。两个气泡绝不会出现在同一段落中,一个页面上的气泡也绝不会超过上限。发布商控制面板报告带有气泡的页面浏览量、打开次数、点击次数和收入,其中一次打开是指一个气泡保持可见满一秒。

账户和嵌入脚本都是免费的。已验证网站的发布商可以申请对网站进行抓取,并在做出任何其他决定之前阅读目前可出售词语的列表。发布商页面介绍了具体步骤,文档说明了在哪里设置范围和每页上限。

新的展示广告单元在赚钱之前就改变了模板

展示广告单元在加载之前就改变了页面。Google 关于 Cumulative Layout Shift(衡量内容移动的 Core Web Vital 指标)的指导,将广告、嵌入内容和 iframe 列为导致内容在页面上向下移动的原因。推荐的解决办法是在初始布局中预留空间,在 CSS 中设置最小高度或宽高比。5预留空间就是对模板的编辑。IAB Tech Lab 的新广告组合将标准广告单元描述为“基于宽高比和尺寸范围,而不是固定的像素尺寸”。6因此,这个框必须适应一个范围。

广告单元通常还会带来一个脚本。HTTP Archive 的 2024 年 Web Almanac 发现,92% 的页面至少加载一个第三方资源。其中近三分之一提供广告、分析或同意管理服务。7因此,一个展示广告单元往往会带来一个对另一个域名的请求、一个在请求返回之前就确定尺寸的框,以及一条样式表规则。这就是分三小步完成的重新设计,而该广告单元的收入仍然要计入高度限制。

气泡的样式表和网站的样式表互不影响

重新设计通常从样式表开始,一种可能破坏网站 CSS 的广告格式会迫使人们在那里进行修改。气泡在 Shadow DOM 中渲染。MDN Web Docs 用一句话描述了其效果:“页面 CSS 不会影响 shadow DOM 中的节点。”反过来,在 shadow 树内定义的样式也仅作用于该树。8网站的样式表不受任何影响。

有相关性而不显眼,是研究所支持的组合

在 2011 年《营销科学》上报告的一项实地实验中,Goldfarb 和 Tucker 发现,让广告与网站内容相匹配和让广告更显眼,各自都能单独提高购买意向。两者结合则无效:两者兼备的广告在提高购买意向方面的表现,不如只做到其中一点的广告。作者将这一结果与隐私担忧联系起来;在注重隐私的消费者中以及在隐私敏感的类别中,这种效应最为强烈。9气泡从构造上就与内容相匹配,因为词语就是内容,而且在读者悬停或点按之前,气泡不占据任何空间。

AdBubbles 将页面上的一个词语与在当月购买了该网站上这个词语的唯一一位广告主配对。我们不选择谁看到气泡,不在页面或网站之间跟踪读者,也不承诺任何效果。AdBubbles 不设置 Cookie,不存储标识符,也不收集读者的任何个人数据。嵌入脚本每次页面加载发送一个浏览信标,气泡打开时发送一个打开信标,点击链接时发送一个点击信标;除此之外,没有任何信息离开页面。发布商保留广告主为在其页面上投放的广告活动所支付金额的 70%。

网站上可出售的词语可以手工统计

统计这种广告资源不需要任何软件。假设一个网站最繁忙的三篇文章各有 1,500 词,其中共提到了十一种产品、四种软件工具、六个地点和三种专业服务。这二十四个名词就是广告主可以购买的词语,而且每一个都已经位于气泡将会打开的地方。发布商可以带着一个问题阅读最繁忙的页面:这些词语中,哪些指的是企业所销售的东西。页面的高度,以及页面上已有的广告单元,都不计入这一统计。