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"
}
}
}
});