Crea una campagna Demand Gen

Verifica che i requisiti minimi siano soddisfatti: gli asset delle campagne Demand Gen devono soddisfare standard di qualità molto elevati, in quanto verranno pubblicati su piattaforme molto visive e incentrate sull'intrattenimento, come Discover e YouTube.

Ecco i passaggi per creare una campagna Demand Gen:

  1. Stabilisci un budget.
  2. Crea una campagna Demand Gen con le strategie di offerta appropriate.
  3. Crea un gruppo di annunci senza un tipo.
  4. Creare segmenti di pubblico.
  5. Crea 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 disporre di un budget giornaliero sufficiente, corrispondente 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.V16.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::V16::Resources::CampaignBudget->new({
    name           => "Interplanetary budget #" . uniqid(),
    deliveryMethod => STANDARD,
    amountMicros   => 500000
  });

# Create a campaign budget operation.
my $campaign_budget_operation =
  Google::Ads::GoogleAds::V16::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 la campagna e la strategia di offerta

Dopo aver creato il budget, puoi procedere con la creazione di una campagna.

Le campagne Demand Gen hanno un valore AdvertisingChannelType di DISCOVERY. Non deve essere impostato alcun AdvertisingChannelSubType.

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 tipo e collegalo alla campagna discovery.

Crea segmenti di pubblico

Crea e collega i segmenti di pubblico utilizzando AdGroupCriterion.

Creare asset e annunci

Sono disponibili tre tipi di annunci per le campagne Demand Gen:

Innanzitutto, crea gli asset per questi tipi di annunci. Consulta la guida alle specifiche e alle best practice per gli asset della campagna Demand Gen per conoscere l'elenco degli asset disponibili per ogni tipo di annuncio Demand Gen. La guida fornisce indicazioni su quali asset sono richiesti e quanti sono consigliati. Ti consigliamo inoltre di valutare il rendimento degli asset per perfezionare le creatività: nella sezione Report viene spiegato come recuperare le metriche sul rendimento per le campagne Demand Gen.

DiscoveryCarouselAdInfo ha un asset specializzato aggiuntivo chiamato AdDiscoveryCarouselCardAsset.

Dopo aver creato gli asset e gli annunci, aggiungili al gruppo di annunci.