素材资源组信号

AssetGroupSignal 是一种信号,您可以将其提供给 Google,以便在素材资源组一级优化广告投放。效果最大化广告系列会参考这些信号,寻找意向相似或更强烈的新展示机会,以在搜索网络、展示广告网络、视频平台等位置促成转化。效果最大化广告系列会结合您的素材资源组信号以及 Google 对消费者意向和偏好的实时理解,发掘您可能未曾预料到的新细分客户群。

您可以向 Google 提供两种类型的提示:audiencesearch_themeAssetGroup 可以包含多个素材资源组信号,但必须通过创建 AssetGroupSignal 并填充 oneof AssetGroupSignal.signal 字段来单独添加每个信号。

受众群体

Audience 是一组可重复使用的有针对性的细分受众群、受众特征定位条件和排除对象。借助 AssetGroupSignal,您可以指定哪些 Audience 最有可能为您的 AssetGroup 带来转化。详细了解受众群体信号。

AssetGroupSignal 只能添加到 AssetGroup 或从中移除。对相关 Audience 的任何修改都应使用 AudienceService 执行。

Java

AssetGroupSignal audienceSignal =
    AssetGroupSignal.newBuilder()
        .setAssetGroup(assetGroupResourceName)
        .setAudience(
            AudienceInfo.newBuilder()
                .setAudience(ResourceNames.audience(customerId, audienceId)))
        .build();

mutateOperations.add(
    MutateOperation.newBuilder()
        .setAssetGroupSignalOperation(
            AssetGroupSignalOperation.newBuilder().setCreate(audienceSignal))
        .build());
      

C#

operations.Add(
    new MutateOperation()
    {
        AssetGroupSignalOperation = new AssetGroupSignalOperation()
        {
            Create = new AssetGroupSignal()
            {
                AssetGroup = assetGroupResourceName,
                Audience = new AudienceInfo()
                {
                    Audience = ResourceNames.Audience(customerId, audienceId.Value)
                }
            }
        }
    }
);
      

PHP

private static function createAssetGroupSignalOperations(
    int $customerId,
    string $assetGroupResourceName,
    ?int $audienceId
): array {
    $operations = [];
    if (is_null($audienceId)) {
        return $operations;
    }

    $operations[] = new MutateOperation([
        'asset_group_signal_operation' => new AssetGroupSignalOperation([
            // To learn more about Audience Signals, see
            // https://developers.google.com/google-ads/api/docs/performance-max/asset-groups#audience_signals.
            'create' => new AssetGroupSignal([
                'asset_group' => $assetGroupResourceName,
                'audience' => new AudienceInfo([
                    'audience' => ResourceNames::forAudience($customerId, $audienceId)
                ])
            ])
        ])
    ]);

    return $operations;
}
      

Python

mutate_operation = client.get_type("MutateOperation")
operation = mutate_operation.asset_group_signal_operation.create
operation.asset_group = asset_group_resource_name
operation.audience.audience = googleads_service.audience_path(
    customer_id, audience_id
)
operations.append(mutate_operation)
      

Ruby

# Create a list of MutateOperations that create AssetGroupSignals.
def create_asset_group_signal_operations(client, customer_id, audience_id)
  operations = []
  return operations if audience_id.nil?

  operations << client.operation.mutate do |m|
    m.asset_group_signal_operation = client.operation.create_resource.
        asset_group_signal do |ags|
      ags.asset_group = client.path.asset_group(
        customer_id,
        ASSET_GROUP_TEMPORARY_ID,
      )
      ags.audience = client.resource.audience_info do |ai|
        ai.audience = client.path.audience(customer_id, audience_id)
      end
    end
  end

  operations
end
      

Perl

sub create_asset_group_signal_operations {
  my ($customer_id, $audience_id) = @_;

  my $operations = [];
  return $operations if not defined $audience_id;

  push @$operations,
    Google::Ads::GoogleAds::V18::Services::GoogleAdsService::MutateOperation->
    new({
      assetGroupSignalOperation =>
        Google::Ads::GoogleAds::V18::Services::AssetGroupSignalService::AssetGroupSignalOperation
        ->new({
          # To learn more about Audience Signals, see:
          # https://developers.google.com/google-ads/api/docs/performance-max/asset-groups#audience_signals
          create =>
            Google::Ads::GoogleAds::V18::Resources::AssetGroupSignal->new({
              assetGroup =>
                Google::Ads::GoogleAds::V18::Utils::ResourceNames::asset_group(
                $customer_id, ASSET_GROUP_TEMPORARY_ID
                ),
              audience =>
                Google::Ads::GoogleAds::V18::Common::AudienceInfo->new({
                  audience =>
                    Google::Ads::GoogleAds::V18::Utils::ResourceNames::audience(
                    $customer_id, $audience_id
                    )})})})});
  return $operations;
}
      

您可以使用 ASSET_GROUPscope 创建受众群体,以指定将受众群体用于单个素材资源组。只有当 Audience.scope 设置为 ASSET_GROUP 时,才必须使用素材资源组的资源名称填充 Audience.asset_group 字段。如果范围为 ASSET_GROUP 的受众群体升级为范围为 CUSTOMER 的受众群体,系统会自动清除 Audience.asset_group

有关受众群体信号优化的建议

Google Ads API 提供两种建议类型,可帮助您优化受众群体信号:

  1. REFRESH_CUSTOMER_MATCH_LIST 建议更新一段时间以来未刷新的客户名单。如果您将作为素材资源组信号使用的受众群体包含客户名单,此功能非常有用。

  2. IMPROVE_GOOGLE_TAG_COVERAGE 建议您在更多网站位置部署 Google 代码,以便改进转化跟踪。这有助于提高转化报告的准确性,进而为您的素材资源组提供更准确的受众群体信号。

如需了解详情,请参阅优化得分和建议指南

搜索主题

通过效果最大化广告系列中的 search_theme,您可以为 Google AI 提供有价值的信息,了解客户正在搜索什么内容,以及哪些主题可为自己的业务带来转化。这种新条件类型只能在效果最大化广告系列中使用,通过将 SearchThemeInfo 条件填充到 AssetGroupSignal.search_theme 字段中来创建 AssetGroupSignal

Java

AssetGroupSignal searchThemeSignal =
    AssetGroupSignal.newBuilder()
        .setAssetGroup(assetGroupResourceName)
        .setSearchTheme(SearchThemeInfo.newBuilder().setText("travel").build())
        .build();

mutateOperations.add(
    MutateOperation.newBuilder()
        .setAssetGroupSignalOperation(
            AssetGroupSignalOperation.newBuilder().setCreate(searchThemeSignal))
        .build());
      

C#

This example is not yet available in C#; you can take a look at the other languages.
    

PHP

This example is not yet available in PHP; you can take a look at the other languages.
    

Python

mutate_operation = client.get_type("MutateOperation")
operation = mutate_operation.asset_group_signal_operation.create
operation.asset_group = asset_group_resource_name
operation.search_theme.text = "travel"
operations.append(mutate_operation)
      

Ruby

This example is not yet available in Ruby; you can take a look at the other languages.
    

Perl

This example is not yet available in Perl; you can take a look at the other languages.