Componenti facoltativi di Performance Max

Obiettivi di conversione

Quando crei una campagna Performance Max, viene creata automaticamente una serie di obiettivi di conversione corrispondenti agli CustomerConversionGoal nell'account. Puoi personalizzarle in modo specifico per ciascuna delle tue campagne Performance Max aggiornandole.

Per farlo, devi prima recuperare un elenco di tutti gli obiettivi di conversione del cliente.

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

Successivamente, puoi ripetere tutti gli obiettivi di conversione che hai ottenuto e creare un'operazione di aggiornamento per la nostra attuale campagna Performance Max al fine di personalizzare il targeting per ciascun obiettivo. Il codice riportato di seguito li imposta tutti come disponibili, ma ti consigliamo di personalizzare quella parte della logica in modo che corrisponda a ciò che vuoi ottenere dalla campagna.

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

Ti consigliamo di impostare gli obiettivi di conversione in una transazione distinta 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 prima campagna, devi impostare l'intero insieme di operazioni in modo che l'errore 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 alle 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 caso d'uso. L'esempio di codice riportato di seguito mostra come impostare un target basato sulla geolocalizzazione. Puoi fare riferimento alla documentazione di CampaignCriterion relativa al formato per 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 questa la modalità di strutturazione del 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

Leggi gli indicatori dei gruppi di asset nella documentazione dell'API prima di iniziare. Per configurarli, collega un gruppo di asset a un criterio AudienceInfo o SearchThemeInfo esistente. Se vuoi utilizzare invece 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"
      }
    }
  }
});