• User Attivo

    GA4 + GAuniversal + ADS: configurazione

    Scusate innanzitutto se posto in Analytics ma non sapevo dove metterla....

    Quello che devo fare è installare il codice per il monitoraggio su Universa, #GA4 e Google ADS

    Ora...

    Ho un GA4 e un Universal agganciati ad ADS..

    Quindi faccio la chiamata a GoogleTagManager utilizzando lo script di base di GA4

    <script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXX"></script>
    

    Poi chiamo lo script come da indicazioni

    <!-- Global site tag (gtag.js) - Google Analytics -->
    <script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXX"></script>
    <script>
    	window.dataLayer = window.dataLayer || [];
    	function gtag(){dataLayer.push(arguments);}
    	gtag('js', new Date());
    
    	gtag('config', 'UA-YYYYYYY-1');
    </script>
    

    A questo punto avendo anche Universal attivo in parallelo inserisco il gtag

    <!-- Global site tag (gtag.js) - Google Analytics -->
    <script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXX"></script>
    <script>
    	window.dataLayer = window.dataLayer || [];
    	function gtag(){dataLayer.push(arguments);}
    	gtag('js', new Date());
    
    	gtag('config', 'UA-YYYYYYY-1');
    	gtag('config', 'G-XXXXXXXX');
    </script>
    

    Qui il primo dubbio... inserisco anche il tag GoogleADS ?

    <!-- Global site tag (gtag.js) - Google Analytics -->
    <script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXX"></script>
    <script>
    	window.dataLayer = window.dataLayer || [];
    	function gtag(){dataLayer.push(arguments);}
    	gtag('js', new Date());
    
    	gtag('config', 'UA-YYYYYYY-1');
    	gtag('config', 'G-XXXXXXXX');
    	gtag('config', 'AW-ZZZZZZZZ');
    </script>
    

    Nel mio codice poi ho implementato una serie di chiamate (che funzionavano da Dio in Universal) inserendo una chiamata JS per l'obiettivo
    Il primo script viene chiamato in base al click sull'obiettivo..... e chiama la funzione che da il segnale a BigG

    <script>
    $(document).on('click', '.obiettivo', function() {
    		gtag('config', 'UA-YYYYYYY-1', {'page_path': '/miapagina/'});
    		gtag_report_conversion_phone();
    	}
    )
    </script>
    

    a questo punto ho la funzione che richiama l'obiettivo (ADS).

    
    
    <script>
    function gtag_report_conversion_email(url) {
    	var callback = function () {
    		if (typeof(url) != 'undefined') {
    		window.location = url;
    		}
    	};
    	gtag('event', 'conversion', {
    		'send_to': 'AW-ZZZZZZZZ/codiceobiettivoads',
    		'value': 99999.0,
    		'currency': 'EUR'
      });
      console.log("a");
      return false;
    }
    </script>
    

    Con questo codice rilevo tranquillamente e correttamente gli obiettivi in GA4 e Universal...
    Ho però un errore in Google ADS che afferma di non vedere il Tag Configurato. In realtà il team Google ADS mi dice che vedono un obiettivo duplicato.

    Domanda... visto che uno degli obiettivi è fissato sulla chiamata ed ho anche un inizializzazione per le conversioni su numero telefonico... è questo il problema?

    <script>
      gtag('config', 'AW-ZZZZZZZZ/codiceobiettivoads', {
        'phone_conversion_number': '02 xxx xxx xxx'
      });
    </script>
    

    Datemi un input perché ne sto uscendo pazzo 😉

    Grazie


    kal 1 Risposta
  • Contributor

    @mirkomassarutto io in casi come questo vado di default di Google Tag Manager.

    In questo scenario a codice ti crei UN attivatore basato su dataLayer.push e con quell'attivatore singolo spari tutti i tag che ti pare da dentro GTM.

    È comodo perché è pratico, facile da debuggare e scalabile (se ad esempio allo stesso evento ci vuoi mettere un pixel Linkedin o Facebook).

    Nel tuo caso mi sa che rischi di mischiare le chiamate, la libreria è la stessa e mi pare difficile da debuggare.


    mirkomassarutto 1 Risposta
  • User Attivo

    @kal immaginavo.... devo convincere chi mi sta imponendo di non utilizzare tagmanager.. 😞


  • Contributor

    Provo comunque a darti uno spunto: vedo che in Analytics stai loggando una pagina virtuale in corrispondenza dell'evento.

    Non è più logico loggare direttamente l'evento?

    In questo modo chiami una funzione sola e nella funzione ci fai il send_to a tutte e tre in un colpo solo.

    Addirittura la documentazione ti permette di fare dei gruppi:

    https://developers.google.com/tag-platform/gtagjs/routing#groups

    (ovvero: setti il gruppo quando definisci il config e poi mandi direttamente al gruppo invece che ai singoli strumenti)