Verifique se os requisitos mínimos foram atendidos: os recursos da campanha Geração de demanda precisam atender a padrões de qualidade muito altos, já que serão veiculados em plataformas muito visuais e de entretenimento, como o Discover e o YouTube.
Estas são as etapas para criar uma campanha Geração de demanda:
- Crie um orçamento.
- Crie uma campanha Geração de demanda com estratégias de lances adequadas.
- Crie um grupo de anúncios sem um tipo.
- Crie públicos-alvo.
- Crie recursos e anúncios de Geração de demanda.
Criar orçamento
Crie um orçamento. Uma campanha de geração de demanda não pode usar um orçamento compartilhado. Recomendamos que você tenha um orçamento diário suficiente para cobrir pelo menos 15 vezes o lance de CPA desejado. Saiba mais.
Java
private static String addCampaignBudget(GoogleAdsClient googleAdsClient, long customerId) { CampaignBudget budget = CampaignBudget.newBuilder() .setName("Interplanetary Cruise Budget #" + getPrintableDateTime()) .setDeliveryMethod(BudgetDeliveryMethod.STANDARD) .setAmountMicros(500_000) .build(); CampaignBudgetOperation op = CampaignBudgetOperation.newBuilder().setCreate(budget).build(); try (CampaignBudgetServiceClient campaignBudgetServiceClient = googleAdsClient.getLatestVersion().createCampaignBudgetServiceClient()) { MutateCampaignBudgetsResponse response = campaignBudgetServiceClient.mutateCampaignBudgets( Long.toString(customerId), ImmutableList.of(op)); String budgetResourceName = response.getResults(0).getResourceName(); System.out.printf("Added budget: %s%n", budgetResourceName); return budgetResourceName; } }
C#
private static string CreateBudget(GoogleAdsClient client, long customerId) { // Get the BudgetService. CampaignBudgetServiceClient budgetService = client.GetService( Services.V18.CampaignBudgetService); // Create the campaign budget. CampaignBudget budget = new CampaignBudget() { Name = "Interplanetary Cruise Budget #" + ExampleUtilities.GetRandomString(), DeliveryMethod = BudgetDeliveryMethod.Standard, AmountMicros = 500000 }; // Create the operation. CampaignBudgetOperation budgetOperation = new CampaignBudgetOperation() { Create = budget }; // Create the campaign budget. MutateCampaignBudgetsResponse response = budgetService.MutateCampaignBudgets( customerId.ToString(), new CampaignBudgetOperation[] { budgetOperation }); return response.Results[0].ResourceName; }
PHP
private static function addCampaignBudget(GoogleAdsClient $googleAdsClient, int $customerId) { // Creates a campaign budget. $budget = new CampaignBudget([ 'name' => 'Interplanetary Cruise Budget #' . Helper::getPrintableDatetime(), 'delivery_method' => BudgetDeliveryMethod::STANDARD, 'amount_micros' => 500000 ]); // Creates a campaign budget operation. $campaignBudgetOperation = new CampaignBudgetOperation(); $campaignBudgetOperation->setCreate($budget); // Issues a mutate request. $campaignBudgetServiceClient = $googleAdsClient->getCampaignBudgetServiceClient(); $response = $campaignBudgetServiceClient->mutateCampaignBudgets( MutateCampaignBudgetsRequest::build($customerId, [$campaignBudgetOperation]) ); /** @var CampaignBudget $addedBudget */ $addedBudget = $response->getResults()[0]; printf("Added budget named '%s'%s", $addedBudget->getResourceName(), PHP_EOL); return $addedBudget->getResourceName(); }
Python
# Create a budget, which can be shared by multiple campaigns. campaign_budget_operation = client.get_type("CampaignBudgetOperation") campaign_budget = campaign_budget_operation.create campaign_budget.name = f"Interplanetary Budget {uuid.uuid4()}" campaign_budget.delivery_method = ( client.enums.BudgetDeliveryMethodEnum.STANDARD ) campaign_budget.amount_micros = 500000 # Add budget. try: campaign_budget_response = ( campaign_budget_service.mutate_campaign_budgets( customer_id=customer_id, operations=[campaign_budget_operation] ) ) except GoogleAdsException as ex: handle_googleads_exception(ex)
Ruby
# Create a budget, which can be shared by multiple campaigns. campaign_budget = client.resource.campaign_budget do |cb| cb.name = "Interplanetary Budget #{(Time.new.to_f * 1000).to_i}" cb.delivery_method = :STANDARD cb.amount_micros = 500000 end operation = client.operation.create_resource.campaign_budget(campaign_budget) # Add budget. return_budget = client.service.campaign_budget.mutate_campaign_budgets( customer_id: customer_id, operations: [operation], )
Perl
# Create a campaign budget, which can be shared by multiple campaigns. my $campaign_budget = Google::Ads::GoogleAds::V18::Resources::CampaignBudget->new({ name => "Interplanetary budget #" . uniqid(), deliveryMethod => STANDARD, amountMicros => 500000 }); # Create a campaign budget operation. my $campaign_budget_operation = Google::Ads::GoogleAds::V18::Services::CampaignBudgetService::CampaignBudgetOperation ->new({create => $campaign_budget}); # Add the campaign budget. my $campaign_budgets_response = $api_client->CampaignBudgetService()->mutate({ customerId => $customer_id, operations => [$campaign_budget_operation]});
Criar uma campanha e uma estratégia de lances
Depois de criar o orçamento, você pode prosseguir para criar uma campanha.
A partir da v17 da API Google Ads, as campanhas Geração de demanda têm um
AdvertisingChannelType
de DEMAND_GEN
. Nenhum AdvertisingChannelSubType
precisa ser definido.
Configure metas de conversão para sua campanha.
As estratégias de lances compatíveis são "Maximizar cliques", "CPA desejado", "Maximizar conversões" e "ROAS desejado".
Criar grupo de anúncios
Crie um grupo de anúncios sem um tipo e anexe-o à campanha Discovery.
Criar públicos-alvo
Crie e anexe públicos-alvo usando AdGroupCriterion
.
Criar recursos e anúncios
Há três tipos de anúncios disponíveis para campanhas Geração de demanda:
Primeiro, crie recursos para esses tipos de anúncios. Confira o guia de práticas recomendadas e especificações de recursos das campanhas Geração de demanda para conferir a lista de recursos disponíveis para cada tipo de anúncio da Geração de demanda. O guia tem orientações sobre quais recursos são necessários e quantos são recomendados. Também recomendamos avaliar a performance dos recursos para ajustar os criativos. A seção Relatórios explica como recuperar as métricas de performance das campanhas Geração de demanda.
O DemandGenCarouselAdInfo
tem um recurso especializado adicional chamado
AdDemandGenCarouselCardAsset
.
Depois que os recursos e anúncios forem criados, adicione os anúncios ao grupo.