amBrain
AdTechOct 15, 2026阅读需 11 分钟

创办广告网络:广告服务器是租用、授权使用还是自建,以及谁能来开发

广告网络自建、授权使用还是租用谁来做广告技术开发
图片加载失败

新的广告网络可以租用、授权使用或自建广告服务器,也就是挑选广告并为广告计数的软件。按你预计第 24 个月的流量,把这三条路放在一起比较。

广告网络的软件从广告服务器开始。广告服务器是这样一个程序:为每个广告位挑选要展示的广告,并统计每一次广告展示和点击。你可以租用一个,可以自己运行授权或开源的广告服务器软件,也可以请一家做广告技术的工程公司,开发一个归你公司所有的广告服务器。本文提到的租用型广告服务器,按广告请求(有广告位待填充的页面或应用发出的调用)或按展示(已经展示出来的广告)计费。按你预计第 24 个月的流量为每条路线测算价格,并请提出为你开发的公司展示一个由它们开发、正在线上运行的广告服务器。

简短的答案是:流量还小的时候,租用广告服务器,或者运行开源的广告服务器。如果按你预计第 24 个月的流量,租用的花费会超过自建并运行一个广告服务器的成本,就自建。套餐限制妨碍了销售,或者需要某项供应商不肯开发的功能,也是自建的理由。无论租用什么,合同都应当让你在离开时带走你的广告活动、广告文件、发布商和广告主记录,以及每一次展示和点击的记录。

广告网络在第一天需要它的软件做到什么?

那篇讲 DSP、广告交易平台和广告网络的文章,介绍了广告网络起步时面对的两边:把广告位交给它的发布商,以及为广告位付钱的广告主。在软件这一边,有五项工作必须从第一个广告活动起就正常运转。

  • 选择广告。对每一个广告请求,广告服务器都要执行该广告活动的定向(国家、网站、设备)、频次上限和预算平滑。频次上限是同一个人在一天或一周内最多能看到这条广告的次数,预算平滑则把预算分摊到广告活动的各个日期上
  • 计数。每一次展示和点击都只记录一次,每一份报表都出自这些记录
  • 发布商账户与付款。每个发布商都能按网站和广告位看到自己的收入,并按同一套计数获得付款
  • 广告主账户与计费。广告活动、广告文件(业内称为创意)、预算,以及与报表一致的发票
  • 流量质量检测。过滤器要赶在任何人为机器人产生的访问和点击拿到付款或被收费之前,把它们排除在计数之外

程序化售卖是指买方的软件自动购买广告位,通常是在页面加载期间进行的一场竞价中完成。这一步可以等到你直接卖给广告主之后、仍有广告位没卖出去的时候再做。届时,这项对接通过 SSP 完成;SSP 是把发布商的广告位同时提供给许多买方的平台。在租用的广告服务器上,这项对接可能是一个付费附加功能。

拿到广告服务器有哪三种方式?

  • 租用时,供应商运行软件和服务器,并保管你的记录。你按月支付套餐费用,套餐按广告请求数或展示数划分档位,另加附加功能的费用
  • 如果用授权软件,无论是付费的还是开源的,你都要在自己选定的服务器上运行广告服务器软件。记录存放在你的数据库里,更新和维持运行都是你的事
  • 自建意味着由一家工程公司编写广告服务器以及围绕它的广告网络软件。如果合同把代码转让给你,代码就归你公司所有,运行和修改它的费用也由你公司承担

各家供应商衡量用量的方式不同。AdButler 的价格页面(2026 年 10 月 15 日查阅)按广告请求数划分套餐,起价为“100 万次广告请求,每月 179 美元”。Epom 的广告服务器价格页面(同一天查阅)按展示数计算,起价为“每月 250 美元”,对应“每月 850 万次展示类广告 + 移动网页广告展示”。

Revive Adserver 托管版的价格页面说“对广告服务器的每一次调用都算一次请求”,又说“这些‘空白’确实计入月度费用的计算”,所以一次没有返回广告的调用仍然要计费。它的“Super”套餐是 1000 万次广告请求每月 100 美元,相比之下,AdButler 的 Standard 套餐是 682 美元,两者包含的功能各不相同。

Revive Adserver 同时也是一个可以自行安装的开源广告服务器。它的首页(2026 年 10 月 15 日查阅)写着“免费下载,免费使用。”并列出了投放规则,“包括频次控制、URL 定向、地理定向”。GitHub 上的代码以 GNU 通用公共许可证(GNU General Public License)发布,适用“该许可证第 2 版,或(由你选择)任何更高的版本。”你要付的是服务器和运行它们的人员的费用。

租用什么时候就不再划算了?

租用广告服务器的账单随流量增长。写下你预计上线后第 12 个月和第 24 个月的月广告请求数。按每家供应商公布的套餐,加上你需要的附加功能,给这两个时间点分别算价,再把每个月度账单乘以 12。

拿这些年度数字和自建的成本作对比。把第一个版本的价格分摊到你将使用它的年份里,再加上托管、广告文件的分发,以及运行和修改广告服务器的人员费用。请每家工程公司针对同样的两个时间点,以书面形式给出这些费用的报价。授权或开源的广告服务器也按同样的方法算价:授权费(如果有的话)、服务器,以及运行它的人员。

在 AdButler 上,Standard 套餐起价为“1000 万次广告请求,每月 682 美元”,Advanced 套餐起价为“5000 万次广告请求,每月 2988 美元”。API 访问,也就是其他软件用来把你的数据取出来的接口,在 Standard 套餐上每月 550 美元,“Advanced 和 Enterprise 套餐免费”。日志级数据,AdButler 将其描述为“关于每一次广告请求的细粒度数据”,根据该附加功能的价目表,在 10 亿次展示以下的套餐上,每月 1,100 美元,另加每千次 0.015 美元。页面没有说明这里的千次算的是广告请求还是展示,所以下面的例子设定每个请求都展示一条广告。

假设有一个虚构的广告网络,预计第 12 个月每月有 800 万次广告请求,第 24 个月每月有 4000 万次,每个请求都展示一条广告。它最初的广告活动需要按国家定向,而这在 AdButler 上属于 Complete Targeting 附加功能,每月 1,100 美元,另加每千次 0.005 美元,因为 275 美元的 Basic Targeting 附加功能不含地理定向。第 12 个月,它要为 Standard 付 682 美元,为 API 付 550 美元,为日志级数据付 1,220 美元,为定向付 1,140 美元,合计每月 3,592 美元。

到第 24 个月,它在 40 个网站上各运营三个广告位。AdButler 把每个这样的广告位称为 zone(区域),而 120 个 zone 超过了 Standard 套餐允许的 100 个。换到 Advanced 套餐后,账单变成:含 API 的 2,988 美元,日志级数据 1,700 美元,定向 1,300 美元,合计每月 5,988 美元,每年约 72,000 美元。从 AdButler 的分发网络传送广告文件所用的带宽,在这些数字之外按用量另行计费。

如果这个广告网络还通过 SSP 售卖,AdButler 的程序化附加功能在 Standard 套餐和比它低一档的 Essentials 套餐上,每月 110 美元,另加每千次出价 0.001 美元。

套餐限制可能比流量更早逼你换更大的套餐。AdButler 的 Standard 套餐允许 50 个广告主和 100 个 zone,Advanced 允许 100 个广告主和 1,000 个 zone;Enterprise 的价格一栏写的是“联系我们”。每个套餐的价格都针对一定的广告请求量标着“起价”,所以同一个套餐可以买更大的流量,但它的 zone 上限不变。

其他信号包括:只能通过付费附加功能才能取出的数据,或者供应商不肯开发的功能,比如你的发布商要求的某条付款规则。离开的成本也要算进去:每个发布商都得替换自己页面上的广告服务器代码,也就是那些被称为广告代码(ad tags)的代码片段。

租用合同应当允许我们带走什么?

如果你现在租用、以后可能自建,就在第一份合同里争取这些条款。

  • 广告活动、广告文件、每个广告位的定义,以及附带付款和计费历史的发布商与广告主记录,全部采用有文档说明的格式
  • 每一次展示和点击的记录,投递到你公司掌控的存储中
  • 在通知期结束之前,可以通过导出或 API 访问数据,导出不另收费

上线时就开启每一次展示和点击的记录,因为它可能不涵盖你开启之前的那几个月。Kevel 关于数据投递(data shipping)的文档(2026 年 10 月 15 日查阅)说,这项功能“把点击、转化和展示数据直接投递到 Amazon AWS S3 存储桶”,也就是 Amazon 云上的一块存储空间。它还补充道:“我们不提供历史数据的回填。”

在 AdButler 的套餐对比表上,每个套餐都有“导出为 CSV”,其说明写的是“把报表转换为 CSV 格式”,所以它涵盖的是报表,而不是每一次展示的记录。通过 API 自动导出,在 Standard 和 Essentials 套餐上需要另外付费。

如果自建,先做什么,哪些继续外购?

开发从选择广告和计数做起,也就是上面五项工作中的前两项,因为每一笔付款和每一张发票都建立在这些计数之上。发布商和广告主的界面可以随后在同一套记录上搭建。专业供应商出售的东西继续外购,比如流量质量检测、广告文件的分发网络和支付服务。程序化售卖可以继续交给现有的 SSP。

分阶段迁移。先把一部分广告位切到新的广告服务器上,每天把它的展示、点击和金额与一个独立的计数对比,比如广告主自己的数字。一直对比下去,直到两者的差距落在你事先设定的范围之内。那篇讲广告报表对不上出价方日志的文章,解释了在改用新系统的数字计费之前,如何比较两套计数。

如果广告网络以程序化方式转售广告位,会有什么变化?

以程序化方式转售,会涉及 IAB Tech Lab 定义的两个公开文件,IAB Tech Lab 是数字广告领域的非营利标准组织。第一个文件是 ads.txt,这是每个发布商放在自己网站根目录下的文本文件。根据 IAB Tech Lab 关于 ads.txt 的页面(2026 年 10 月 15 日查阅),发布商用它“公开声明他们授权哪些公司出售其数字广告库存。”这里的库存,指的就是他们的广告位。

当你的广告网络通过 SSP 转售某个发布商的广告位时,它在这家 SSP 持有一个账户。这时,该发布商的 ads.txt 里需要有一行,写明 SSP 的域名(字段 #1)、你的账户 ID(字段 #2)以及 RESELLER 一词。2022 年 8 月发布的 ads.txt 规范 1.1 版说,RESELLER 表示该发布商“已授权另一实体控制字段 #2 所示的账户,并通过字段 #1 中的系统转售其广告位。”要在你的软件里规划一项检查,确认每个发布商的文件都带有应有的那几行。

第二个文件 sellers.json 由卖方平台发布:IAB Tech Lab 关于 sellers.json 的页面说,“SSP 和广告交易平台会发布各自的 sellers.json 文件,供买方查阅”。按照 sellers.json 规范,你的广告网络在该 SSP 文件中的条目应当是 INTERMEDIARY,这一类型适用于这样的账户:其库存“不归所列实体所有,或者广告系统不直接向其付款”。如果同一个账户还出售你自有网站上的广告位,类型就是 BOTH。

如果日后买方接入的是你自己的广告交易平台,也就是运行竞价、在竞价中出售广告位的平台,那么每个发布商都需要在自己的 ads.txt 文件里把它列出来。sellers.json 规范的日期是 2019 年 7 月,至今仍是 1.0 版,其中写明,ads.txt 文件中列出的每一个广告系统“都应当发布一个 Sellers.json 文件”。

提出为我们开发广告网络的公司,该怎么核查?

那篇讲 DSP、广告交易平台和广告网络的文章,列出了适用于任何广告技术供应商的通用核查。针对广告网络,再加上下面四项。

  • 这家公司展示一个由它开发的广告服务器、出价方(在竞价中为广告位出价的软件)或报表管道(把展示和点击记录变成报表的软件)。这套系统目前承接着真实流量,它的报表可以在线上运行的系统界面里当场打开查看
  • 请这家公司说明它把哪个事件记为一次展示,以及点击如何与这次展示关联。它还应当展示:上一次它的报表和某个广告主自己的计数出现差异时,两边是怎样核对一致的
  • 频次上限,比如每天展示三次,在同一个人的请求同时到达多台服务器时也必须守住。这家公司应当解释,它的设计如何保证只有一个计数
  • 在合同里写明,最终代码归谁所有,哪些部分留在这家公司手里

amBrain 在其中处于什么位置?

amBrain 构建广告服务器:定向、频次控制和报表。它的服务清单上还有两句:“amBrain 为发布商构建供应方平台(SSP)。”以及“amBrain 为广告技术构建事件分析管道:展示和点击事件的采集、处理与报表。”

amBrain 自 2019 年起开发软件。在 AdTech 领域,它从事 DSP 开发、实时竞价平台和广告交易平台工程方面的工作;RTBBidder 是 amBrain 为一家客户开发的需求方平台。需求方平台(DSP)是替广告主购买广告位的软件。

amBrain 有三种合作方式:整体交付、专属团队,或工程师嵌入你的团队。关于所有权,它的说法是:“客户拥有产品与代码的全部所有权,我们的可复用组件除外。”签约之前,请 amBrain 逐项列出这些组件的名称。

本文不是案例研究:它没有描述任何客户的广告网络,也没有声称 amBrain 开发过广告网络。提到 RTBBidder,只是因为它是 amBrain 开发的一个 DSP;本文也没有说 amBrain 会如何回答上面四项核查,所以要向 amBrain 提出与其他任何公司相同的问题。文中提到 AdButler、Epom、Kevel 和 Revive Adserver,只是把它们作为例子;amBrain 并不声称用过或集成过其中任何一个,也不声称从其中任何一个迁出过,或与之有过合作。本文没有给出 amBrain 的价格或工期,例子中的流量、网站数量和频次数字都是虚构的。

手头有类似的设计?

带上您当前的架构和让您担心的故障场景,我们用半小时一起梳理。