Componenti facoltativi di Performance Max

Obiettivi di conversione

Quando crei una campagna Performance Max, viene creata automaticamente una serie di obiettivi di conversione corrispondenti ai CustomerConversionGoal nell'account. Puoi personalizzare questi valori in modo specifico per ogni campagna Performance Max aggiornandoli.

Per farlo, devi prima recuperare un elenco di tutti gli obiettivi di conversione dei clienti.

const searchResults = AdsApp.search(
  `SELECT
     customer_conversion_goal.category,
     customer_conversion_goal.origin
   FROM customer_conversion_goal`
);

Poi puoi eseguire l'iterazione di tutti gli obiettivi di conversione che hai recuperato e creare un'operazione di aggiornamento per la nostra attuale campagna Performance Max per personalizzare il targeting per ogni obiettivo. Il codice riportato di seguito li imposta tutti come disponibili per l'asta, ma ti consigliamo di personalizzare questa parte della logica in base ai risultati che vuoi ottenere dalla campagna.

Prima di eseguire questo codice, devi recuperare l'ID campagna per la tua campagna Performance Max.

Ti consigliamo di configurare gli obiettivi di conversione in una transazione separata dal resto della procedura di creazione della campagna. CampaignConversionGoalOperation richiede che partialFailure per la richiesta sia impostato su false. Se vuoi eseguire questo codice nella stessa transazione in cui crei la campagna per la prima volta, devi impostare l'intero insieme di operazioni in modo che il fallimento parziale sia disattivato. Questo codice di esempio mostra come eseguire questa operazione in una transazione separata.

operations = [];
while (searchResults.hasNext()) {
  const row = searchResults.next();
  const conversionGoal = row.customerConversionGoal;

  operations.push({
    "campaignConversionGoalOperation": {
      "update": {
        "resourceName": `customers/${customerId}/campaignConversionGoals/${campaignId}~${conversionGoal.category}~${conversionGoal.origin}`,
        // Insert your logic here to determine whether you want this particular
        // campaign conversion goal to be biddable or not.
        // This code will just default everything to being biddable, but that
        // is not necessarily best for your use case.
        "biddable": true
      },
      "updateMask": "biddable"
    }
  });
}

AdsApp.mutateAll(operations, {partialFailure: false});

Targeting della campagna

Per il targeting delle campagne in Performance Max, consulta la guida all'API per un elenco completo dei tipi di criteri consentiti.

Per creare una campagna Performance Max non sono necessari criteri aggiuntivi, ma possono essere utili per limitare il targeting in base al tuo caso d'uso. L'esempio di codice riportato di seguito mostra come configurare un target per località geografica. Puoi fare riferimento alla documentazione di CampaignCriterion per il formato di altri tipi di criteri.

Puoi creare questi criteri insieme alla campagna stessa nell'ambito della stessa chiamata a mutateAll e questo esempio di codice presuppone che sia così che stai strutturando il codice.

operations.push({
  "campaignCriterionOperation": {
    "create": {
      "campaign": campaignOperation.campaignOperation.create.resourceName,
      "negative": false,
      "location": {
        // 1023191 represents New York City
        "geoTargetConstant": "geoTargetConstants/1023191"
      }
    }
  }
});

Indicatori dei gruppi di asset

Prima di iniziare, consulta la sezione relativa agli indicatori dei gruppi di asset nella documentazione dell'API. Vengono configurati collegando un gruppo di asset a un criterio AudienceInfo o SearchThemeInfo esistente. Se invece vuoi utilizzare un segmento di pubblico, specifica il campo audience anziché il campo searchTheme con il nome della risorsa del segmento di pubblico.

operations.push({
  "assetGroupSignalOperation": {
    "create": {
      "assetGroup": assetGroupOperation.assetGroupOperation.create.resourceName,
      "searchTheme": {
        "text": "mars cruise"
      }
    }
  }
});