Come configurare lo script di tracciamento precauzionale per Google Ads
Argomenti trattati in questo articolo:
- Come configurare lo script di tracciamento precauzionale per Google Ads
- Step 1: Accedi al tuo account Google Ads
- Step 2: Clicca su Tools and Settings > Bulk Actions > Scripts (vedi immagine sotto)
- Step 3: Rimuovi il codice predefinito e aggiungi questo script
- Step 4: Rinomina lo script e imposta la frequenza su Hourly
- Domande frequenti
Come configurare lo script di tracciamento precauzionale per Google Ads
Lo script è un esempio semplice di come configurare il codice di tracciamento precauzionale per Google Ads.
Lo script funge da protezione di riserva nel caso in cui il template UTM non riesca a catturare i dati di attribuzione.
Traccia tutti i clic su un determinato link e li invia a Google Analytics. L'unica cosa da modificare nello script è l'URL della pagina di tracciamento, che deve corrispondere a quello utilizzato dal tuo sito web.
Step 1: Accedi al tuo account Google Ads
Step 2: Clicca su Tools and Settings > Bulk Actions > Scripts (vedi immagine sotto)

Nota bene:
Se non riesci a trovare l'opzione, assicurati di passare alla visualizzazione avanzata per vedere Tools and Settings.
Step 3: Rimuovi il codice predefinito e aggiungi questo script:
function main() {
var TrackingTemplate = "{lpurl}?utm_source=adwords&utm_medium={AdName}&utm_campaign={CampaignName}&utm_content={AdGroupName}&utm_keyword={keyword}&utm_matchtype={matchtype}&campaign_id={campaignid}&ad_group_id={adgroupid}&ad_id={creative}";
var _CAMPAIGN_CONTAINS = "";
var _ADGROUP_CONTAINS = "";
var STATUS = "ENABLED";
if (TrackingTemplate.search(/{AdGroupName}|{CampaignName}|{AdName}/g) == -1) {
Logger.log("Enter at least one of the {CampaignName} or {AdGroupName} or {AdName} parameter in the tracking template");
return
}
if (TrackingTemplate.search("{AdGroupName}") > 0) {
var adgroupIterator = {
hasNext: function() {
return false
}
}
if (_ADGROUP_CONTAINS == "" && _CAMPAIGN_CONTAINS == "") {
adgroupIterator = AdsApp.adGroups().withCondition("Status = " + STATUS).get();
} else if (_ADGROUP_CONTAINS == "" && _CAMPAIGN_CONTAINS !== "") {
adgroupIterator = AdsApp.adGroups().withCondition("CampaignName contains '" + _CAMPAIGN_CONTAINS + "'").withCondition("Status = " + STATUS).get();
} else if (_ADGROUP_CONTAINS !== "" && _CAMPAIGN_CONTAINS !== "") {
adgroupIterator = AdsApp.adGroups().withCondition("CampaignName contains '" + _CAMPAIGN_CONTAINS + "'").withCondition("Name contains '" + _ADGROUP_CONTAINS + "'").withCondition("Status = " + STATUS).get();
} else if (_ADGROUP_CONTAINS !== "" && _CAMPAIGN_CONTAINS == "") {
adgroupIterator = AdsApp.adGroups().withCondition("Name contains '" + _ADGROUP_CONTAINS + "'").withCondition("Status = " + STATUS).get();
}
if (!adgroupIterator.hasNext()) {
Logger.log("No Campaigns/Adgroups matched with this condition");
return
}
while (adgroupIterator.hasNext()) {
var adgroup = adgroupIterator.next();
var adgrouptemplate = TrackingTemplate.replace(/{AdGroupName}/g, adgroup.getName().replace(/\s/g, '%20'))
if (TrackingTemplate.search("{CampaignName}") > 0) {
adgrouptemplate = adgrouptemplate.replace(/{CampaignName}/g, adgroup.getCampaign().getName().replace(/\s/g, '%20'))
}
if (TrackingTemplate.search("{AdName}") > 0) {
var adsIterator = adgroup.ads().get();
while (adsIterator.hasNext()) {
var ad = adsIterator.next();
var adType = ad.getType();
var headline = "";
if (ad.getHeadline()) {
headline = ad.getHeadline();
} else if(ad.isType().expandedTextAd()) {
headline = ad.asType().expandedTextAd().getHeadlinePart1();
} else if(ad.isType().gmailImageAd()) {
headline = ad.asType().gmailImageAd().getName();
} else if(ad.isType().gmailMultiProductAd()) {
headline = ad.asType().gmailMultiProductAd().getHeadline();
} else if(ad.isType().gmailSinglePromotionAd()) {
headline = ad.asType().gmailSinglePromotionAd().getHeadline();
} else if(ad.isType().html5Ad()) {
headline = ad.asType().html5Ad().getName();
} else if(ad.isType().imageAd()) {
headline = ad.asType().imageAd().getName();
} else if(ad.isType().responsiveDisplayAd()) {
headline = ad.asType().responsiveDisplayAd().getShortHeadline();
} else if(ad.isType().responsiveSearchAd()) {
var headlines = ad.asType().responsiveSearchAd().getHeadlines();
if (headlines && headlines[0].text) {
headline = headlines[0].text;
}
}
Logger.log("Headline text : " + headline);
if (headline) {
adgrouptemplate = adgrouptemplate.replace(/{AdName}/g, headline.replace(/\s/g, '%20'))
} else {
adgrouptemplate = adgrouptemplate.replace(/{AdName}/g, ad.getId())
}
}
}
adgroup.urls().setTrackingTemplate(adgrouptemplate);
Logger.log(adgroup.getCampaign().getName() + " => " + adgroup.getName() + " => " + adgrouptemplate)
}
}
}
Step 4: Dopo aver chiuso, rinomina lo script e cambia la frequency dall'elenco alla visualizzazione Hourly.

Domande frequenti
Se ho un altro script, influirà su di esso?
Sì, gli script possono sovrascriversi a vicenda poiché agiscono sui parametri UTM.
Perché devo autorizzarlo?
L'autorizzazione è necessaria perché lo script viene implementato sull'account Google Ads. È indispensabile controllare l'anteprima prima di eseguirlo: dovrebbe mostrare la maggior parte delle campagne come riuscite con la landing page trovata.
Questo articolo è stato utile?