Display and Video 360 (DV360) 自定义出价终极指南

自 2019 年以来,我一直在使用 DV360 Custom Bidding 产品。当时,它只是一个测试版,但最近几天,该产品有了巨大的发展。当我开始阅读自定义竞价的概念时,看到这个产品对程序化社区的改变是多么有趣。构建自定义算法的能力是一个巨大的机会,可以在您的活动目标和业务目标之间建立更好的联系!

这将是一个广泛的职位,所以要振作起来!根据您对 DV360 自定义出价产品的专业知识水平,您可以决定要在哪个部分花费最多的时间。那里有一些技术文档,但我没有看到任何广泛或实用的内容。因此,我决定将一些东西(希望有用)放在一起。

概括

  1. 什么是自定义出价?
  2. 自定义出价如何运作?
  3. 主要的聚合函数和脚本结构是什么?
  4. 实际用例和脚本模板(有真实例子)
    1. 加权转化(Floodlight)
    2. 加权转化(Google Analytics 360 目标)
    3. 自定义 Floodlight 变量
    4. 销售 Floodlight 收入
  5. 如何创建算法并为 DV360 内的营销活动分配脚本?
  6. 设置 DV360 实验以测试自定义出价算法的最佳方法是什么?
  7. 如何正确衡量和报告自定义出价算法的成功?
  8. 与 Lachezar (Lacho) 合作

What is a custom bid?

自定义出价是 DV360 中基于结果的购买功能,允许广告商编写自定义脚本,根据特定标准定义一次展示的价值。您可能熟悉 DV360 中的标准出价策略(例如“最大化点击次数”、“最大化转化次数”等)。它们是由 Google 创建的预设算法,经过编程,可以对更有可能为您带来点击、转化或可见展示的展示出价更高。

dv360 中的出价策略

 

但是,使用自定义出价,您可以超越单个操作并创建多层出价。例如,您可以为渠道中的每个转化分配不同的权重,或者根据自定义变量或谷歌分析目标中收到的值进行不同的出价。换句话说,您可以微调和强化您的出价策略到最小的细节!因此,实现尽可能高的 ROAS 并更接近您的实际业务目标。

自定义出价如何运作?

自定义出价背后的神奇之处在于,您将自己对业务的洞察与 Google 的机器学习算法相结合,该算法使用 40 多种信号来评估展示。当然,有三个关键步骤概括了整个过程(不用担心我们稍后会分解每个步骤):

  1. 首先,确保您的广告系列目标与您的业务目标保持一致。例如,如果您想针对网站上的特定操作进行优化(例如,您提供的服务中最昂贵的一层),但没有足够的数量并且不得不选择漏斗上部代理指标,自定义出价可以解决这个问题。因此,在决定 KPI 时,不要因为转换量或单个接触点而限制自己。想想你的生意。
  2. 在 DV360 中创建一个算法并为其分配一个脚本。该脚本将包含您的所有规则和条件,这些规则和条件基本上会告诉 DV360 一次展示对您的价值。
  3. 一旦算法被激活,DV360 就会开始根据您的脚本对展示进行评分。学习阶段可能会持续几天,当算法准备就绪时,您可以将其作为出价策略分配给您的广告系列。请记住,自定义出价算法需要 30 天的数据窗口。

The entire custom bidding process in dv360

主要的聚合函数和脚本结构是什么?

在深入研究实际示例之前,您会注意到有一些函数经常重复。大多数自定义投标脚本的基础是三个核心功能(除非您正在执行自定义变量):

  • sum_aggregate – 根据您有多少标准,此函数会将分数相加,如果它们都返回 true。
  • max_aggregate – 在这种情况下,该函数将仅对具有最高分数或分配权重的标准返回 true。
  • first_match_aggregate – 这是一个不太常见的函数,但返回数组中第一个返回 true 的条件的分配值。

脚本的一般结构也如下所示:

return aggregate_function([  ([criteria_a, criteria_b], score),   #you have to select what criteria is true and assign a score to it.   ([criteria_a], score)   #you repeat the same for your second criteria and assign it a different score. This will allow you to provide context for your algorithm on the range of difference between criteria 1 and 2.  ])

实际用例和脚本模板(有真实例子)

在接下来的几个小节中,我们将探讨您可以在自定义出价中使用的不同类型的算法。我已尽力将可用的技术文档翻译成带有真实示例的更实用的指南。

加权转化(Floodlight)

自定义出价功能的强大用例之一称为“加权转化”,它允许广告商针对不同的转化活动进行优化。此外,您可以在点击后和查看后之间拆分转换,并为每个转换分配不同的权重。让我们付诸实践。

假设您是一家 CPG 公司,在您的网站上提供产品样品。为了让用户获得样品,您需要填写一个包含三个步骤的表单,“开始”、“完成”和“批准”(如果这是一个新用户,之前没有尝试过)。此外,您的研究团队与您分享了一个见解,即所有来自点击后转化的用户都立即购买了您的产品。而来自查看后转换的用户收到了样品,但很少购买实际产品。

第一步是将转化分为“点击”和“非点击”(查看后)。您可以通过潜在地更加强调“点击”转换来替换weight_1weight_2

return max_aggregate([      ([click, total_conversion_count(Floodlight_ID_1, model_id)>0], weight_1),     ([not click, total_conversion_count(Floodlight_ID_1, model_id)>0], weight_2),  ])

在此基础上,使用max_aggragate函数很重要,因此该算法只能对得分最高的转换进行评分。为什么?如果您有任何类型的类似漏斗的应用程序,“已批准”用户也是“开始”和“完成”,因此您要为 Google 做出区分。这就是自定义出价如此强大的原因!

return max_aggregate([      ([click, total_conversion_count(Floodlight_ID_1, model_id)>0], 4),     ([not click, total_conversion_count(Floodlight_ID_1, model_id)>0], 2),      ([click, total_conversion_count(Floodlight_ID_2, model_id)>0], 12),     ([not click, total_conversion_count(Floodlight_ID_2, model_id)>0], 6),      ([click, total_conversion_count(Floodlight_ID_3, model_id)>0], 36),     ([not click, total_conversion_count(Floodlight_ID_3, model_id)>0], 18) ])

作为旁注,您可以暂时model_id设置为 0。稍后我们将探讨原因。

加权转化(Google Analytics 360 目标)

在 DV360 中针对 Google Analytics 目标进行优化长期以来一直是备受期待的功能,现在已成为现实。即使认为该功能在 2020 年推出,我也不认为它获得了应有的受欢迎程度。对我来说,这是一件大事🙂

先决条件:要使其发挥作用,您需要将您的 Google Analytics 360 帐户与有效的 Display and Video 360 广告客户相关联。这篇文章准确地展示了这是如何完成的。

对于那些想要轻松开始的人,您只需要编写一行代码即可针对某个目标进行优化。这可以是每个会话的页面持续时间、目的地、事件操作和页面/屏幕。您需要的唯一信息是特定的视图和目标 ID。

return has_ga_goal(GA View ID, GA Goal ID)

如果has_ga_goal(GA View ID, GA Goal ID)返回 true,则返回 1。如果为 false,则返回 0。就这么简单,工作方式与单个 Floodlight 优化相同。

现在,让我们假设您是一家汽车经销商,登陆您网站的用户可以完成以下关键操作之一:

  • 在分行定位器中提交地址
  • 使用“制造和价格”工具来挑选和定制车辆。
  • 预约试驾

所有这些行动都标有目标,但也表明客户旅程的不同阶段。例如,如果用户想“预订试驾”,那么他/她可能非常接近购买汽车。另一方面,如果同一用户完成了“Build & Price”工具,则他/她仍处于研究阶段。毋庸置疑,这些行动在客户旅程中具有不同的权重。您可以在此处根据以下脚本优化目标组合并分配不同的权重。

return sum aggregate([          ([has_ga_goal(GA View ID, GA Goal ID)], ga_goals_count(GA View ID, GA Goal ID)),          ([has_ga_goal(GA View ID, GA Goal ID)], ga_goals_count(GA View ID, GA Goal ID)*5)          ([has_ga_goal(GA View ID, GA Goal ID)], ga_goals_count(GA View ID, GA Goal ID)*10)  ])

最后但并非最不重要的是,“自定义变量”的表亲,即目标值。本质上,下面的脚本针对 ROAS 进行了优化。例如,您有一个电子商务网站,并希望针对花费超过 1000 美元的客户进行优化,因为这可能表明他们是高价值客户。在这种情况下,脚本将针对这些用户进行优化,并返回 0(忽略)例如仅花费 50 美元的用户。

if ga_goals_count(GA View ID, GA Goal ID)>1000:   return ga_goals_total_value(GA View ID, GA Goal ID)  else:   return 0

自定义 Floodlight 变量

DV360/CM360 中的自定义变量允许广告商在用户转换时提取附加信息。大多数情况下,自定义变量用于旅行公司和航空公司的确认页面。这允许他们传递与预订相关的所有有价值的数据(例如座位类型、价格、目的地等)。

但是,对于下面的脚本,让我们想象一个不同的场景。您是一家销售业务包的 SaaS 公司。您有“基本”、“中”、“精英”和“免费”版本。在这种情况下,您希望更加重视来自“精英”套餐的印象,因为这是您最昂贵的。例如,如果您将 1 分配给“基本”,将 10 分配给“中”,那么您实际上是在说,中对我来说比“基本”更有价值 10 倍。

您也可以将“0”分配给“免费”,因为您不想为那些只购买免费套餐的客户评分。因此,这为 Google 提供了一个巨大的背景,可以根据您拥有的业务包寻找最有可能转化的用户,而不是对他们进行相同的评估;这就是“最大化转化”会发生的情况,例如,每个用户都将是一次转化,并且不存在业务包描述。

_businesspackage = conversion_custom_variable (Floodlight_ID, model_id, u_variable_index) if _businesspackage == "" or _businesspackage == None:   return 0 elif _income == "Basic":   return 1 elif _income == "Medium":   return 10 elif _income == "Elite":   return 50 elif _income == "Free":   return 0 else:   return 0

在设置方面,您需要通过为其命名来声明变量。在我们的例子中_businesspackage,然后使用函数conversion_custom_variable告诉谷歌这是一个自定义变量。从那里,您需要以下内容:

  • Floodlight_ID – 泛光灯来自 CM
  • model_id——这是你的归因模型,如果你设置了一些自定义的东西。如果没有,那么你可以保留默认的“0”
  • u_variable_index – 这将是 CM 中的自定义变量 ID

销售 Floodlight 收入

与 Google Analytics 目标值一样,销售 Floodlight 收入基于“Floodlight 销售代码”,可以帮助您针对交易价值进行优化。我不会花太多时间在上面,但示例脚本将如下所示:

return (total_conversion_value(​CM_activity_id​, ​model_id​))

如何在 DV360 中创建算法并使用自定义出价激活广告系列?

在我之前的文章“如何在 Display and Video 360 (DV360) 中创建自定义出价脚本”中,我详细介绍了技术脚本的构建过程,因此您可以看一下。演练涉及脚本验证器、模型训练和自定义投标限制。在本节中,我想重点介绍在活动中激活自定义出价算法。以下是重点:

  • 脚本准备就绪并经过训练后,您可以导航到要运行它的 DV360 广告商。自定义出价可用于广告订单或订单项级别。如果您是第一次运行自定义出价,我们将探讨如何设置公平测试以准确评估效果。
  • 当您选择算法时,您可以选择:
    • “同时优先花费我的全部预算(推荐)”,这基本上确保您按照分配的脚本花费每日预算和出价。
    • “同时优先达到目标价值成本”,类似于目标每次转化费用。一旦您看到所需的展示自定义值并运行一些算法,您就可以使用此选项。
  • 启动自定义出价算法后,请避免进行任何更改,因为这可能会对学习阶段产生负面影响。

下面是 DV360 中算法选择的快速截图。

一个巨大的标注!第一周的表现很可能很差,因为那是算法学习的时间。您应该会在第 2 周和第 3 周看到显着改善。

设置 DV360 实验以测试自定义出价算法的最佳方法是什么?

如果您是第一次运行自定义出价,或者您正在尝试比较不同类型的算法,则必须创建DV360 实验。受控实验允许您将 cookie(暴露用户与控制用户)分成互斥的组,从而防止测试污染。这是它的工作原理:

在 DV360 控制台中展开“资源”菜单(确保首先选择广告商)后,您将能够看到“实验和提升”。继续创建一个新实验并选择“Cross Exchange”,这是显示选项。如果您使用合作伙伴视频运行自定义出价,则必须选择“YouTube 和合作伙伴”。

Experiments and improvements in dv360

设置的第一部分相当简单,但有一些技巧。您必须选择是要比较“订单项与订单项”还是“广告订单与广告订单”。通常,您选择哪个选项并不重要,但最重要的方面是一次仅测试一个变量。因此,您需要使控制组和公开组之间的预算、创意、持续时间和目标完全相同。

当涉及到研究目标时,您必须选择“总自定义印象值”。自定义出价算法针对您的展示自定义价值/
成本定义的 ROAS 进行优化。如果在实验过程中,您的曝光的展示自定义价值/成本超过了您的对照组的,则自定义出价已成功胜过您的对照组出价策略。

dv360 experiment settings

最后,无论您选择 IO 还是 LI,请确保将实验的两个分支命名为可识别的东西——控制和暴露是标准的。另一个非常重要的方面是让观众在每只手臂之间按比例分配。如果您正在测试 2 种以上的算法,那么您可以考虑拆分 33/33/33。

Setting for grouping audiences in dv360 experiment

如何正确衡量和报告自定义出价算法的成功?

自定义出价的衡量与您通常对常规广告系列所做的衡量略有不同。您可以通过导航到Insights -> Reports -> Offline Reporting -> New Offline Report -> Report template (Custom Bidding) 找到报告模板

Custom bids highlighted in red boxes in the dv360 report interface

选择自定义出价报告模板后,您将拥有几个全新的指标。以下是我认为最重要的:

  • 具有自定义值的展示次数
    • 这些是由您的脚本评分的印象;这也包括得分为“0”的印象。如果此数字太低,则表明您的脚本可能没有足够的可用历史数据。
  • 具有正自定义价值的展示次数
    • 该指标包括得分 >0 的所有展示次数。这是脚本规则中活动的最清晰表示。
  • 总展示自定义价值
    • 这是所有展示自定义值的总和
  • 展示自定义价值/成本
    • 这是公式(总展示自定义价值)/(估计总费用)。这是决定您的自定义出价算法将取得多大成功的关键指标。值越高越好。

最后的想法

媒体购买空间正在不断发展,因此,自动出价等技术将得到更广泛的应用。事实上,DV360 和谷歌营销平台 (GMP) 是该领域的先驱。但是,预计其他广告服务和需求方平台 (DPS),例如 TradeDesk、StackAdapt、TubeMogul 和 App Nexus 将迎头赶上。总而言之,媒体购买,特别是展示广告空间正在进入一个有趣的阶段。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值