A primeira etapa para implementar anúncios do Shopping é criar uma campanha desse tipo. Com as campanhas do Shopping, os usuários veem anúncios com uma imagem do produto, incluindo título, preço, nome da loja e muito mais. Ao criar uma campanha do Shopping, você precisa definir o orçamento, a estratégia de lances e as configurações do Shopping.
Antes de criar uma campanha do Shopping, vincule sua conta do Google Ads à conta do Google Merchant Center. Depois de vincular as contas, você pode usar o ID da conta do Google Merchant Center ao especificar as configurações do Shopping.
Padrão do Shopping
Essa é a campanha necessária para criar anúncios do Shopping de produtos. Com os anúncios do produto no Shopping, você pode incluir uma imagem, título, preço e nome da sua loja ou empresa na publicidade, sem a necessidade de criar anúncios exclusivos para cada produto.
Estas são as etapas para configurar uma campanha padrão do Shopping:
- Defina o
advertising_channel_type
da campanha comoSHOPPING
. - Crie um
ShoppingSetting
, defina os campos e adicione-o à campanha. - Crie uma estratégia de lances de portfólio ou defina uma estratégia de lances no nível da campanha.
- Crie um orçamento de campanha ou defina um orçamento compartilhado.
Para campanhas padrão do Shopping, o ShoppingSetting
é compatível com os seguintes campos:
Obrigatório
merchant_id
- O ID do Merchant Center da conta que contém os produtos a serem anunciados.
campaign_priority
- A prioridade da campanha do Shopping. As campanhas com prioridades numericamente mais altas têm precedência sobre aquelas com prioridades mais baixas. Os valores permitidos estão entre 0 e 2, inclusive.
Opcional
feed_label
Uma string usada para o rótulo do feed, conforme definido no Merchant Center. Esse campo deve ser usado quando você precisa selecionar produtos de um feed do Merchant Center específico. Se não for especificado, a campanha vai usar todos os feeds disponíveis no Merchant Center.
Se você usou o
sales_country
descontinuado no formato de código de país de duas letras (XX
), usefeed_label
. Para mais informações, consulte o artigo de suporte sobre o rótulo do feed.Enviar um código de país em um
feed_label
não ativa automaticamente a veiculação de anúncios nesse país. Primeiro, você precisa configurar a segmentação geográfica.enable_local
A opção de ativar anúncios para produtos vendidos em lojas físicas nessa campanha.
Uma estratégia de lances pode ser configurada como:
- Estratégia de lances de portfólio
- Uma estratégia de lances automática que pode ser compartilhada
em campanhas, grupos de anúncios e palavras-chave. Criado usando o
BiddingStrategyService
. - Estratégia de lances da campanha
- Uma estratégia de lances definida diretamente na campanha. Isso pode incluir estratégias de lances automáticas compatíveis com campanhas do Shopping.
Para campanhas padrão do Shopping, as seguintes estratégias de lances são compatíveis:
Estratégia de lances de portfólio
Estratégia de lances da campanha
Configurações de rede
A partir da semana de 28 de fevereiro de 2022, as campanhas padrão do Shopping não vão mais oferecer suporte ao campo network_settings.target_content_network
.
Definir esse campo como true
em uma campanha padrão do Shopping em uma solicitação de mutação gera um erro CANNOT_TARGET_CONTENT_NETWORK
.
Para mais detalhes, consulte Mudanças nas configurações de rede para campanhas padrão do Shopping do Google Ads.
Este exemplo de código demonstra como criar uma campanha padrão do Shopping.
Java
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 // 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.getDefaultInstance()) // Sets the budget. .setCampaignBudget(budgetResourceName) // Declares whether this campaign serves political ads targeting the EU. .setContainsEuPoliticalAdvertising(DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING) .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(); } }
C#
private string AddStandardShoppingCampaign(GoogleAdsClient client, long customerId, string budgetResourceName, long merchantCenterAccountId) { // Get the CampaignService. CampaignServiceClient campaignService = client.GetService(Services.V21.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. // 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(), // Sets the budget. CampaignBudget = budgetResourceName, // Declare whether or not this campaign contains political ads targeting the EU. ContainsEuPoliticalAdvertising = EuPoliticalAdvertisingStatus.DoesNotContainEuPoliticalAdvertising, }; // 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. // 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(), // Sets the budget. 'campaign_budget' => $budgetResourceName, // Declare whether or not this campaign serves political ads targeting the EU. 'contains_eu_political_advertising' => EuPoliticalAdvertisingStatus::DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING ]); // 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(); }
Python
def add_standard_shopping_campaign( client: GoogleAdsClient, customer_id: str, budget_resource_name: str, merchant_center_account_id: int, ) -> str: """Creates a new standard shopping campaign in the specified client account.""" campaign_service: CampaignServiceClient = client.get_service( "CampaignService" ) # Create standard shopping campaign. campaign_operation: CampaignOperation = client.get_type("CampaignOperation") campaign: 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. # 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 = client.get_type("ManualCpc") # Sets the budget. campaign.campaign_budget = budget_resource_name # Declare whether or not this campaign serves political ads targeting the # EU. Valid values are: # CONTAINS_EU_POLITICAL_ADVERTISING # DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING campaign.contains_eu_political_advertising = ( client.enums.EuPoliticalAdvertisingStatusEnum.DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING ) # Add the campaign. campaign_response = campaign_service.mutate_campaigns( customer_id=customer_id, operations=[campaign_operation] ) campaign_resource_name: str = campaign_response.results[0].resource_name print( "Added a standard shopping campaign with resource name " f"'{campaign_resource_name}'." ) return campaign_resource_name
Ruby
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. campaign.manual_cpc = client.resource.manual_cpc campaign.campaign_budget = budget_name # Declare whether or not this campaign serves political ads targeting the EU. # Valid values are CONTAINS_EU_POLITICAL_ADVERTISING and # DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING. c.contains_eu_political_advertising = :DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING 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
Perl
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::V21::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::V21::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::V21::Enums::CampaignStatusEnum::PAUSED, # Set the bidding strategy to Manual CPC. # 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::V21::Common::ManualCpc->new(), # Set the budget. campaignBudget => $budget_resource_name, # Declare whether or not this campaign serves political ads targeting the EU. # Valid values are CONTAINS_EU_POLITICAL_ADVERTISING and # DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING. containsEuPoliticalAdvertising => DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING }); # Create a campaign operation. my $campaign_operation = Google::Ads::GoogleAds::V21::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; }