Создание торговой кампании

Первым шагом в реализации товарных объявлений является создание торговой кампании. Торговые кампании позволяют пользователям видеть рекламу, в которой показано изображение продукта, включая название, цену, название магазина и многое другое. При создании торговой кампании вам необходимо установить ее бюджет, стратегию назначения ставок и настройки покупок.

Прежде чем вы сможете создать торговую кампанию, вам необходимо связать свою учетную запись Google Ads с учетной записью Google Merchant Center . После того как вы связали учетные записи, вы можете использовать идентификатор учетной записи Google Merchant Center при указании настроек покупок.

Стандартные торговые кампании

Эта кампания необходима для создания товарных объявлений о товарах . Товарные объявления о товарах позволяют включать в рекламу изображение, заголовок, цену, а также название вашего магазина или компании без необходимости создавать уникальные объявления для каждого продаваемого вами продукта.

Вот шаги для настройки стандартной торговой кампании:

  1. Установите advertising_channel_type кампании значение SHOPPING .
  2. Создайте ShoppingSetting , задайте поля, а затем добавьте его в кампанию.
  3. Создайте пакетную стратегию назначения ставок или установите стратегию назначения ставок на уровне кампании.
  4. Создайте новый бюджет кампании или установите существующий общий бюджет.

Для стандартных торговых кампаний ShoppingSetting поддерживает следующие поля:

Необходимый

merchant_id
Идентификатор Merchant Center аккаунта, содержащего рекламируемые товары.
campaign_priority
Приоритет торговой кампании. Кампании с более высоким приоритетом имеют приоритет над кампаниями с более низким приоритетом. Допустимые значения: от 0 до 2 включительно.

Необязательный

feed_label

Строка, используемая для ярлыка фида, как определено в вашем Merchant Center. Это поле следует использовать в том случае, если вам нужно выбрать товары из определенного фида Merchant Center . Если не указано, то в кампании используются все доступные фиды в Merchant Center.

Если вы ранее использовали устаревший атрибут sales_country в формате двухбуквенного кода страны ( XX ), вместо него следует feed_label . Дополнительную информацию см. в статье о поддержке ярлыков фидов .

Обратите внимание, что указание кода страны в feed_label не приводит к автоматическому показу объявлений в этой стране; сначала необходимо настроить таргетинг на географическое местоположение .

enable_local

Возможность включить для этой кампании рекламу товаров, продаваемых в местных магазинах.

Стратегию назначения ставок можно настроить как:

Пакетная стратегия назначения ставок
Стратегия автоматического назначения ставок , которую можно использовать для разных кампаний, групп объявлений и ключевых слов. Создано с помощью BiddingStrategyService .
Стратегия назначения ставок кампании
Стратегия назначения ставок, установленная непосредственно в кампании. Сюда могут входить стратегии автоматического назначения ставок, совместимые с торговыми кампаниями.

Для стандартных торговых кампаний поддерживаются следующие стратегии назначения ставок:

Пакетная стратегия назначения ставок

Стратегия назначения ставок кампании

Настройки сети

Начиная с 28 февраля 2022 г. стандартные торговые кампании больше не поддерживают поле network_settings.target_content_network .

Установка для этого поля значения true в стандартной торговой кампании в запросе на изменение приводит к ошибке CANNOT_TARGET_CONTENT_NETWORK .

Подробнее см. в разделе «Изменения настроек сети для стандартных торговых кампаний Google Рекламы» .

В этом примере кода показано, как создать стандартную торговую кампанию.

Ява

private String addStandardShoppingCampaign(
    GoogleAdsClient googleAdsClient,
    long customerId,
    String budgetResourceName,
    long merchantCenterAccountId) {

  // Configures the shopping settings.
  ShoppingSetting shoppingSetting =
      ShoppingSetting.newBuilder()
          // Sets the priority of the campaign. Higher numbers take priority over lower numbers.
          // For Shopping product ad campaigns, allowed values are between 0 and 2, inclusive.
          .setCampaignPriority(0)
          .setMerchantId(merchantCenterAccountId)
          // Enables local inventory ads for this campaign.
          .setEnableLocal(true)
          .build();

  // Create the standard shopping campaign.
  Campaign campaign =
      Campaign.newBuilder()
          .setName("Interplanetary Cruise #" + getPrintableDateTime())
          // Configures settings related to shopping campaigns including advertising channel type
          // and shopping setting.
          .setAdvertisingChannelType(AdvertisingChannelType.SHOPPING)
          .setShoppingSetting(shoppingSetting)
          // Recommendation: Sets the campaign to PAUSED when creating it to prevent
          // the ads from immediately serving. Set to ENABLED once you've added
          // targeting and the ads are ready to serve.
          .setStatus(CampaignStatus.PAUSED)
          // Sets the bidding strategy to Manual CPC (with eCPC disabled). eCPC for standard
          // Shopping campaigns is deprecated. If eCPC is set to true, Google Ads ignores the
          // setting and behaves as if the setting was false. See this blog post for more
          // information:
          // https://ads-developers.googleblog.com/2023/09/google-ads-shopping-campaign-enhanced.html
          // Recommendation: Use one of the automated bidding strategies for Shopping campaigns
          // to help you optimize your advertising spend. More information can be found here:
          // https://support.google.com/google-ads/answer/6309029.
          .setManualCpc(ManualCpc.newBuilder().setEnhancedCpcEnabled(false).build())
          // Sets the budget.
          .setCampaignBudget(budgetResourceName)
          .build();

  // Creates a campaign operation.
  CampaignOperation operation = CampaignOperation.newBuilder().setCreate(campaign).build();

  // Issues a mutate request to add the campaign.
  try (CampaignServiceClient campaignServiceClient =
      googleAdsClient.getLatestVersion().createCampaignServiceClient()) {
    MutateCampaignsResponse response =
        campaignServiceClient.mutateCampaigns(
            Long.toString(customerId), Collections.singletonList(operation));
    MutateCampaignResult result = response.getResults(0);
    System.out.printf(
        "Added a standard shopping campaign with resource name: '%s'%n",
        result.getResourceName());
    return result.getResourceName();
  }
}

      

С#

private string AddStandardShoppingCampaign(GoogleAdsClient client, long customerId,
    string budgetResourceName, long merchantCenterAccountId)
{
    // Get the CampaignService.
    CampaignServiceClient campaignService =
        client.GetService(Services.V17.CampaignService);

    // Configures the shopping settings.
    ShoppingSetting shoppingSetting = new ShoppingSetting()
    {
        // Sets the priority of the campaign. Higher numbers take priority over lower
        // numbers. For Shopping Product Ad campaigns, allowed values are between 0 and 2,
        // inclusive.
        CampaignPriority = 0,

        MerchantId = merchantCenterAccountId,

        // Enables local inventory ads for this campaign.
        EnableLocal = true
    };

    // Create the standard shopping campaign.
    Campaign campaign = new Campaign()
    {
        Name = "Interplanetary Cruise #" + ExampleUtilities.GetRandomString(),

        // Configures settings related to shopping campaigns including advertising channel
        // type and shopping setting.
        AdvertisingChannelType = AdvertisingChannelType.Shopping,

        ShoppingSetting = shoppingSetting,

        // Recommendation: Set the campaign to PAUSED when creating it to prevent
        // the ads from immediately serving. Set to ENABLED once you've added
        // targeting and the ads are ready to serve
        Status = CampaignStatus.Paused,

        // Sets the bidding strategy to Manual CPC (with eCPC disabled). eCPC for standard
        // Shopping campaigns is deprecated. If eCPC is set to true, Google Ads ignores the
        // setting and behaves as if the setting was false. See this blog post for more
        // information:
        // https://ads-developers.googleblog.com/2023/09/google-ads-shopping-campaign-enhanced.html
        // Recommendation: Use one of the automated bidding strategies for Shopping
        // campaigns to help you optimize your advertising spend. More information can be
        // found here: https://support.google.com/google-ads/answer/6309029
        ManualCpc = new ManualCpc()
        {
            EnhancedCpcEnabled = false
        },

        // Sets the budget.
        CampaignBudget = budgetResourceName
    };

    // Creates a campaign operation.
    CampaignOperation operation = new CampaignOperation()
    {
        Create = campaign
    };

    // Issues a mutate request to add the campaign.
    MutateCampaignsResponse response =
        campaignService.MutateCampaigns(customerId.ToString(),
            new CampaignOperation[] { operation });
    MutateCampaignResult result = response.Results[0];
    Console.WriteLine("Added a standard shopping campaign with resource name: '{0}'.",
        result.ResourceName);
    return result.ResourceName;
}
      

PHP

private static function addStandardShoppingCampaign(
    GoogleAdsClient $googleAdsClient,
    int $customerId,
    string $budgetResourceName,
    int $merchantCenterAccountId
) {
    // Creates a standard shopping campaign.
    $campaign = new Campaign([
        'name' => 'Interplanetary Cruise Campaign #' . Helper::getPrintableDatetime(),
        // Configures settings related to shopping campaigns including advertising channel type
        // and shopping setting.
        'advertising_channel_type' => AdvertisingChannelType::SHOPPING,
        // Configures the shopping settings.
        'shopping_setting' => new ShoppingSetting([
            // Sets the priority of the campaign. Higher numbers take priority over lower
            // numbers. For Shopping product ad campaigns, allowed values are between 0 and 2,
            // inclusive.
            'campaign_priority' => 0,
            'merchant_id' => $merchantCenterAccountId,
            // Enables local inventory ads for this campaign
            'enable_local' => true
        ]),
        // Recommendation: Set the campaign to PAUSED when creating it to prevent
        // the ads from immediately serving. Set to ENABLED once you've added
        // targeting and the ads are ready to serve.
        'status' => CampaignStatus::PAUSED,
        // Sets the bidding strategy to Manual CPC (with eCPC disabled). eCPC for standard
        // Shopping campaigns is deprecated. If eCPC is set to true, Google Ads ignores the
        // setting and behaves as if the setting was false. See this blog post for more
        // information:
        // https://ads-developers.googleblog.com/2023/09/google-ads-shopping-campaign-enhanced.html
        // Recommendation: Use one of the automated bidding strategies for Shopping campaigns
        // to help you optimize your advertising spend. More information can be found here:
        // https://support.google.com/google-ads/answer/6309029.
        'manual_cpc' => new ManualCpc(['enhanced_cpc_enabled' => false]),
        // Sets the budget.
        'campaign_budget' => $budgetResourceName
    ]);

    // Creates a campaign operation.
    $campaignOperation = new CampaignOperation();
    $campaignOperation->setCreate($campaign);

    // Issues a mutate request to add campaigns.
    $campaignServiceClient = $googleAdsClient->getCampaignServiceClient();
    $response = $campaignServiceClient->mutateCampaigns(
        MutateCampaignsRequest::build($customerId, [$campaignOperation])
    );

    /** @var Campaign $addedCampaign */
    $addedCampaign = $response->getResults()[0];
    printf(
        "Added a standard shopping campaign with resource name '%s'.%s",
        $addedCampaign->getResourceName(),
        PHP_EOL
    );

    return $addedCampaign->getResourceName();
}
      

Питон

def add_standard_shopping_campaign(
    client, customer_id, budget_resource_name, merchant_center_account_id
):
    """Creates a new standard shopping campaign in the specified client account."""
    campaign_service = client.get_service("CampaignService")

    # Create standard shopping campaign.
    campaign_operation = client.get_type("CampaignOperation")
    campaign = campaign_operation.create
    campaign.name = f"Interplanetary Cruise Campaign {uuid.uuid4()}"

    # Configures settings related to shopping campaigns including advertising
    # channel type and shopping setting.
    campaign.advertising_channel_type = (
        client.enums.AdvertisingChannelTypeEnum.SHOPPING
    )
    campaign.shopping_setting.merchant_id = merchant_center_account_id

    # Sets the priority of the campaign. Higher numbers take priority over lower
    # numbers. For standard shopping campaigns, allowed values are between 0 and
    # 2, inclusive.
    campaign.shopping_setting.campaign_priority = 0

    # Enables local inventory ads for this campaign.
    campaign.shopping_setting.enable_local = True

    # Recommendation: Set the campaign to PAUSED when creating it to prevent the
    # ads from immediately serving. Set to ENABLED once you've added targeting
    # and the ads are ready to serve.
    campaign.status = client.enums.CampaignStatusEnum.PAUSED

    # Sets the bidding strategy to Manual CPC (with eCPC disabled). eCPC for
    # standard Shopping campaigns is deprecated. If eCPC is set to true, Google
    # Ads ignores the setting and behaves as if the setting was false. See this
    # blog post for more information:
    # https://ads-developers.googleblog.com/2023/09/google-ads-shopping-campaign-enhanced.html
    # Recommendation: Use one of the automated bidding strategies for Shopping
    # campaigns to help you optimize your advertising spend. More information
    # can be found here: https://support.google.com/google-ads/answer/6309029
    campaign.manual_cpc.enhanced_cpc_enabled = False

    # Sets the budget.
    campaign.campaign_budget = budget_resource_name

    # Add the campaign.
    campaign_response = campaign_service.mutate_campaigns(
        customer_id=customer_id, operations=[campaign_operation]
    )

    campaign_resource_name = campaign_response.results[0].resource_name

    print(
        "Added a standard shopping campaign with resource name "
        f"'{campaign_resource_name}'."
    )

    return campaign_resource_name
      

Руби

def add_standard_shopping_campaign(
    client, customer_id, budget_name, merchant_center_id)

  operation = client.operation.create_resource.campaign do |campaign|
    campaign.name = "Interplanetary Cruise Campaign ##{(Time.new.to_f * 1000).to_i}"

    # Shopping campaign specific settings
    campaign.advertising_channel_type = :SHOPPING

    campaign.shopping_setting = client.resource.shopping_setting do |shopping_setting|
      shopping_setting.merchant_id = merchant_center_id
      shopping_setting.campaign_priority = 0
      shopping_setting.enable_local = true
    end

    campaign.status = :PAUSED

    # Sets the bidding strategy to Manual CPC (with eCPC disabled). eCPC for standard
    # Shopping campaigns is deprecated. If eCPC is set to true, Google Ads ignores the
    # setting and behaves as if the setting was false. See this blog post for more
    # information:
    # https://ads-developers.googleblog.com/2023/09/google-ads-shopping-campaign-enhanced.html
    campaign.manual_cpc = client.resource.manual_cpc do |manual_cpc|
      manual_cpc.enhanced_cpc_enabled = false
    end

    campaign.campaign_budget = budget_name
  end

  service = client.service.campaign
  response = service.mutate_campaigns(
    customer_id: customer_id,
    operations: [operation],
  )

  campaign_name = response.results.first.resource_name

  puts "Added a standard shopping campaign with resource name #{campaign_name}."

  campaign_name
end
      

Перл

sub add_standard_shopping_campaign {
  my ($api_client, $customer_id, $budget_resource_name,
    $merchant_center_account_id)
    = @_;

  # Create a standard shopping campaign.
  my $campaign = Google::Ads::GoogleAds::V17::Resources::Campaign->new({
      name => "Interplanetary Cruise Campaign #" . uniqid(),
      # Configure settings related to shopping campaigns including advertising
      # channel type and shopping setting.
      advertisingChannelType => SHOPPING,
      shoppingSetting        =>
        Google::Ads::GoogleAds::V17::Resources::ShoppingSetting->new({
          merchantId => $merchant_center_account_id,
          # Set the priority of the campaign. Higher numbers take priority over
          # lower numbers. For standard shopping campaigns, allowed values are
          # between 0 and 2, inclusive.
          campaignPriority => 0,
          # Enable local inventory ads for this campaign.
          enableLocal => "true"
        }
        ),
      # Recommendation: Set the campaign to PAUSED when creating it to prevent
      # the ads from immediately serving. Set to ENABLED once you've added
      # targeting and the ads are ready to serve.
      status => Google::Ads::GoogleAds::V17::Enums::CampaignStatusEnum::PAUSED,
      # Set the bidding strategy to Manual CPC (with eCPC disabled). eCPC for
      # standard Shopping campaigns is deprecated. If eCPC is set to true,
      # Google Ads ignores the setting and behaves as if the setting was false.
      # See this blog post for more information:
      # https://ads-developers.googleblog.com/2023/09/google-ads-shopping-campaign-enhanced.html
      # Recommendation: Use one of the automated bidding strategies for shopping
      # campaigns to help you optimize your advertising spend. More information
      # can be found here: https://support.google.com/google-ads/answer/6309029.
      manualCpc => Google::Ads::GoogleAds::V17::Common::ManualCpc->new(
        {enhancedCpcEnabled => "false"}
      ),
      # Set the budget.
      campaignBudget => $budget_resource_name
    });

  # Create a campaign operation.
  my $campaign_operation =
    Google::Ads::GoogleAds::V17::Services::CampaignService::CampaignOperation->
    new({create => $campaign});

  # Add the campaign.
  my $campaign_resource_name = $api_client->CampaignService()->mutate({
      customerId => $customer_id,
      operations => [$campaign_operation]})->{results}[0]{resourceName};

  printf "Added a standard shopping campaign with resource name: '%s'.\n",
    $campaign_resource_name;

  return $campaign_resource_name;
}
      

Умные торговые кампании