Verifica che i requisiti minimi siano soddisfatti: gli asset della campagna Demand Gen devono soddisfare standard di qualità molto elevati, poiché verranno pubblicati su piattaforme molto visive e incentrate sull'intrattenimento, come Discover e YouTube.
Di seguito sono riportati i passaggi per creare una campagna Demand Gen:
- Stabilisci un budget.
- Crea una campagna Demand Gen con strategie di offerta appropriate.
- Crea un gruppo di annunci senza un tipo.
- Crea i segmenti di pubblico.
- Creare asset e annunci Demand Gen.
Crea budget
Crea un budget. Tieni presente che una campagna Demand Gen non può utilizzare un budget condiviso. Ti consigliamo di avere un budget giornaliero sufficiente, pari ad almeno 15 volte l'offerta basata su CPA target prevista. Scopri di più.
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.V17.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::V17::Resources::CampaignBudget->new({ name => "Interplanetary budget #" . uniqid(), deliveryMethod => STANDARD, amountMicros => 500000 }); # Create a campaign budget operation. my $campaign_budget_operation = Google::Ads::GoogleAds::V17::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]});
Crea una campagna e una strategia di offerta
Dopo aver creato il budget, puoi procedere con la creazione di una campagna.
A partire dalla versione 17 dell'API Google Ads, le campagne Demand Gen hanno un valore AdvertisingChannelType
pari a DEMAND_GEN
. Nessun AdvertisingChannelSubType
deve essere impostato.
Imposta gli obiettivi di conversione per la campagna.
Le strategie di offerta supportate sono Massimizza i clic, CPA target, Massimizza le conversioni e ROAS target.
Crea gruppo di annunci
Crea un gruppo di annunci senza un tipo e collegalo alla campagna discovery.
Crea segmenti di pubblico
Crea e collega i segmenti di pubblico
utilizzando AdGroupCriterion
.
Creare asset e annunci
Per le campagne Demand Gen sono disponibili tre tipi di annunci:
Innanzitutto, crea gli asset per questi tipi di annunci. Consulta la guida alle specifiche degli asset delle campagne Demand Gen e alle best practice per un elenco degli asset disponibili per ogni tipo di annuncio Demand Gen. La guida contiene indicazioni su quali asset sono obbligatori e quanti di questi sono consigliati. Consigliamo inoltre di valutare le prestazioni degli asset per perfezionare le creatività: la sezione sui report spiega come recuperare le metriche di rendimento per le campagne Demand Gen.
DemandGenCarouselAdInfo
ha un asset specializzato aggiuntivo chiamato
AdDemandGenCarouselCardAsset
.
Dopo aver creato gli asset e gli annunci, aggiungili al gruppo di annunci.