利用标签,您可以将账号中的元素整理成对您而言有意义的分组,轻松快速地过滤和报告您最感兴趣的数据。 Google Ads 脚本支持 账号 、广告系列、 广告组 、广告 和 关键字 级别的标签。
使用场景
在 Google Ads 账号中,标签可用于将任意数据与 Google Ads 实体相关联。在经理账号中,标签可用于对类似的子级账号进行分组。标签有助于实现多种使用场景:
- 处理账号列表
- 如果您是代理机构,可以为所有水管工账号应用
plumber_accounts标签,然后脚本可以将与水管工相关的关键字(例如“紧急淋浴维修”)推送到这些账号中的所有广告系列。
- 如果您是代理机构,可以为所有水管工账号应用
- 处理实体列表
- 如果您有一组关键字,并且希望仅在周末启用这些关键字,则可以为这些关键字应用
weekend_keywords标签。 然后,脚本可以在周五晚上启用所有带有weekend_keywords的关键字,并在周一早上暂停这些关键字。
- 如果您有一组关键字,并且希望仅在周末启用这些关键字,则可以为这些关键字应用
- 跨多次运行处理实体
- 如果您有大量实体无法在 30 分钟内处理完毕,则可以在脚本中创建
processed标签,并将其应用于已处理的实体。 将脚本安排为每小时运行一次,然后仅处理未应用processed标签的实体。
- 如果您有大量实体无法在 30 分钟内处理完毕,则可以在脚本中创建
- 两步更改
- 您可以为关键字添加
increase_bid_by_10%标签,而不是让脚本对大量 关键字执行出价更改。然后,您可以登录 Google Ads 界面,过滤出与该 标签匹配的关键字,对其进行审核,如果对结果满意,则使用 批量修改功能更改其出价。
- 您可以为关键字添加
- 灵活出价
- 脚本可以利用标签来维护出价更改历史记录。例如,当脚本将关键字出价提高 20% 时,可以为账号添加
increased_20%标签。次日,当脚本运行到该标签时,如果发现之前已提高过出价,则只会将出价提高 10%。
- 脚本可以利用标签来维护出价更改历史记录。例如,当脚本将关键字出价提高 20% 时,可以为账号添加
- 质量得分跟踪
- 脚本可以为重要关键字添加质量得分标签,然后定期检查并报告质量得分不再与标签匹配的关键字。
账号级别的标签
Google Ads 脚本可让您在经理账号中创建标签,以及将标签应用于该经理账号下的 Google Ads 账号:
const labelName = 'High spending accounts';
AdsManagerApp.createAccountLabel(labelName);
您可以使用
applyLabel
方法将标签应用于所选账号:
const accountIds = ['123-456-7890', '345-6789-2100'];
const labelName = 'High spending accounts';
const accounts = AdsManagerApp.accounts().withIds(accountIds).get();
for (const account of accounts) {
account.applyLabel(labelName);
}
同样,您可以使用
removeLabel
方法从账号中移除标签:
const accountIds = ['123-456-7890', '345-6789-2100'];
const labelName = 'High spending accounts';
const accounts = AdsManagerApp.accounts().withIds(accountIds).get();
for (const account of accounts) {
account.removeLabel(labelName);
}
账号标签最常见的用途是处理共享同一账号标签的一组账号:
const labelName = 'High spending accounts';
const accounts = AdsManagerApp.accounts()
.withCondition(`LabelNames CONTAINS "${labelName}"`)
.get();
如需详细了解如何在一次脚本执行中处理多个账号,请参阅我们的 经理账号脚本指南 。
账号内的标签
您可以为账号的广告系列、广告组、 广告和关键字创建和应用标签。下面介绍了如何为广告系列应用标签:
const campaign = AdsApp.campaigns()
.withCondition('campaign.name = "My first campaign"').get().next();
campaign.applyLabel('High performing campaign');
同样,您可以使用 removeLabel 方法移除标签:
const campaign = AdsApp.campaigns()
.withCondition('campaign.name = "My first campaign"').get().next();
campaign.removeLabel('High performing campaign');
标签最常用于处理一组由标签分组的类似实体。以下代码段展示了如何暂停共享同一标签的一组广告系列:
const label = AdsApp.labels()
.withCondition('label.name = "Christmas promotions"')
.get().next();
var campaignIterator = label.campaigns().get();
for (const campaign of campaignIterator) {
campaign.pause();
}
报告
在为 Google Ads 账号运行效果报告时,您可以使用标签资源名称来过滤实体。资源名称是 Google Ads API 中的一个概念,有时在使用 GAQL 运行报告时会用到。标签资源名称始终采用以下格式:
customers/[customer id]/labels/[label id]
您可以使用标签的资源名称使用其
getResourceName
方法。
以下代码段展示了如何为所有带有“圣诞节促销”标签的广告系列运行广告系列报告 :
const label = AdsApp.labels()
.withCondition("label.name = 'Christmas promotions'")
.get().next();
const query = `SELECT campaign.name, metrics.clicks, metrics.impressions, metrics.cost ` +
`FROM campaign WHERE campaign.labels CONTAINS ANY ` +
`["${label.getResourceName()}"] AND segments.date DURING THIS_MONTH`;
const result = AdsApp.search(query);
请注意,您只能使用 CONTAINS_ALL、CONTAINS_ANY 和 CONTAINS_NONE 运算符按标签资源名称进行过滤。