[Aggiornata il 23/11/2018]

Fammi indovinare, stai già usando Hotjar e vorresti spingere l’integrazione con Google Analytics.
Come possiamo fare?

Ovviamente devi aver già configurato Hotjar con Google Tag Manager e avere a disposizione almeno una dimensione personalizzata.

Devi sapere che, come per molti tool di web analytics, Hotjar utilizza un cookie per capire se sei un utente nuovo o di ritorno. Dentro alle statistiche di Hotjar è presente un valore “univoco” per utente derivato proprio da quel cookie. Ecco un esempio:

hotjar track example

Quindi se riuscissimo ad utilizzare quel cookie e importalo su Google Analytics potremmo utilizzare la potenza di fuoco di GA.

La bella notizia è che è possibile farlo.

L’ottima notizia è che te la sto per spiegare passo passo.

STEP 1 – CREIAMO UNA VARIABILE JAVASCRIPT PERSONALIZZATA (UPDATE 23/11/2018)

Update: il modo di estrapolare la variabile è cambiato! Adesso ho inserito quello funzionante!

Estrapoliamo il valore completo del cookie attraverso la libreria JS di Hotjar, che “splittiamo”, recuperando la porzione di valore che ci interessa.

  • Variabili > Nuova > Configurazione variabile.
  • Tipo di variabile: Javascript personalizzato.
  • Inserisci questo codice Javascript:
function() {
  var hotjarUserId = hj.globals.get("userId").split("-");
  
  if(hotjarUserId[0] != undefined)
  {
    return hotjarUserId[0];
  }
  else
  {
    return 0;  
  }
}
  • Nome della Variabile: “Hotjar – User Id”.

script javascript tracciare user id hotjar analytics google tag manager

STEP 2 – CREA LA DIMENSIONE PERSONALIZZATA

Ora non ci resta che salvare questo dato su Google Analytics su una dimensione personalizzata:

  • Vai su Google Analytics.
  • Clicca su Amministrazione > Proprietà > Definizioni personalizzate > Dimensioni personalizzate.
  • Nuova dimensione personalizzata.
  • Nome: Hotjar User Id.
  • Ambito: Sessione.

creazione dimensione personalizzata tracciare user id hotjar analytics

Tieni a mente il valore numerico dell’indice (da 1 a 20). Nel mio caso è 1.

lista dimensione personalizzata tracciare user id hotjar analytics

STEP 3 – INSERIAMO LA DIMENSIONE NEL PAGEVIEW

Bene, ora abbiamo una dimensione su Google Analytics pronta a ricevere dati. Non ci resta che passargli il valore della seconda variabile creata, che contiene effettivamente il codice ID di Hotjar.

  • Apriamo il Tag di Analytics dedicato al PageView.
  • Altre impostazioni > Dimensioni personalizzate.
  • Clicca Aggiungi dimensione personalizzata.
  • Indice: qua inserisci il valore indice della dimensione personalizzata visto prima (nel mio caso 1).
  • Valore della dimensione: {{Hotjar – User Id}}

tag ga tracciare user id hotjar analytics google tag manager

STEP 4 – ATTIVATORE SU CARICAMENTO DELLA PAGINA

Per permettere alla funzione di estrapolare lo user ID di Hotjar, dobbiamo attendere il caricamento della pagina. Quindi dobbiamo creare un nuovo attivatore che si attivi al caricamento di tutte le pagine. Chiaro che se un utente scappa prima che ci sia questa fase non avrai l’Hit Pageview su Google Analytics.

Creiamo l’attivatore:

  • Attivatori > Nuovo > Configurazione attivatore.
  • Tipo di attivatore: Finestra caricata.
  • Attiva su: Tutti gli eventi sulla finestra caricata.
  • Rinomina come “All Pages – Load Ready”

attivatore dom tracciare user id hotjar analytics google tag manager

In questo modo ora l’Hit Pageview avrà una dimensione personalizzata che contiene il codice User ID di Hotjar.

Se le nuove implementazioni funzionano correttamente, adesso puoi tornare su Google Tag Manager e cliccare sul pulsante blu “Invia” per pubblicare ufficialmente le modifiche.

Ti è stata utile questa guida?

A presto e buon Tag!

Condividi anche tu Google Tag Manager!
  • Reply

    emanuele

    12 07 2018

    Ciao Matteo,
    grazie per la guida, mi sono perso però nel concetto dell’ultima parte. Qui sotto ti mostro come ho configurato:
    https://drive.google.com/file/d/1RoXITi-cL1I2Suzo2AwS6O4wC_pQqjXQ/view

    Non ho ben capito il suggerimento che hai dato a Michele
    “personalmente la gestisco con un evento di Google Analytics”
    Potresti aiutarmi a comprendere meglio?

    Grazie.

    • Matteo Zambon

      12 07 2018

      Ciao Emanuele
      come lo hai gestito così scatterà due volte il pageview che equivale che darei una frequenza di rimbalzo pari a 0 ogni volta. Quello che dicevo a Michele è che io creo un evento personalizzato dopo il pageload e lo uso per attivare un evento in GA (dove gli passo Hotjar e altre informazioni)

  • Reply

    Andrea

    21 05 2018

    Ciao Matteo,
    ho una domanda sul GDPR e Hotjar: quello di Hotjar può essere considerato un cookie tecnico? Se un utente dovesse chiudere il banner sull’informativa all’uso dei cookie senza flaggare alcun tipo di consenso, devo bloccare lo script di tracciamento di Hotjar?
    Grazie in anticipo 😉

    • Matteo Zambon

      21 05 2018

      Direi proprio di no Andrea, Hotjar non usa cookie tecnici per far funzionare il tuo sito. Li usi a fini di statistica e se usati con User ID direi a fini marketing.

    • Andrea

      22 05 2018

      Grazie mille per l’info, sei sempre stra-disponibile!!!

    • Matteo Zambon

      23 05 2018

      Grazie a te! 😀

  • Reply

    Michele

    03 05 2018

    Ciao Matteo,
    Ottima guida, ma ti faccio una domanda, o meglio ti chiedo un’opinione.

    Con questa guida siamo costretti a ritardare l’attivazione del tag delle PageView fino all’evento Window Loaded. Per aggirare il problema e non rischiare di “perdere PageView preziose” bisognerebbe salvare il valore hj.pageVisit.property.get(“userId”); in un “posto” accessibile anche al momento della PageView, come potrebbe essere un cookie proprietario.

    In questo modo valorizzeresti il cookie proprietario al primo evento Window Loaded di un certo utente, e dalla seconda PageView potresti iniziare a utilizzare il valore del cookie passandolo come custom dimension.

    Come la vedi?
    Grazie!

    • Matteo Zambon

      03 05 2018

      Ciao Michele, personalmente la gestisco con un evento di Google Analytics che uso anche per altre informazioni (esempio: vedere se usa AdBlock).

      Non farei doppia pageview, andrebbe ad azzerarti il bounce rate 🙂

      A presto e buon Tag!

    • Michele

      05 05 2018

      Ciao Matteo,
      Non intendevo duplicare il tag delle pageview, ma passare l’informazione dello userId di hotjar solo dalla seconda in poi (sfruttando un cookie per salvare l’id).

      Però l’idea di usare un evento forse è anche meglio.. essendo che in GA imposti lo userId come custom dimension a livello di sessione l’evento potrebbe andare bene! 🙂

      Grazie!

    • Matteo Zambon

      07 05 2018

      Di nulla Michele 😉

    • Andrea

      22 05 2018

      Grazie mille per l’info, sei sempre stra-disponibile!!!

  • Reply

    Luca

    15 02 2018

    Ciao Matteo, quando metto in preview mi da errore: La variabile sconosciuta “hotjarUserId” è stata rilevata in un’altra variabile. Modifica la variabile e rimuovi il riferimento alla variabile sconosciuta.
    Non capisco dove siat l’altra variabile, ho soltanto 4 variabili personalizzate e nessuna di quelle Hotjar.

    • Matteo Zambon

      15 02 2018

      Ciao Luca!
      Hai sicuramente sbagliato ad associarle. Stai attento alle maiuscole e minuscole. Consiglio: cancella e rifai tutto 😉

    • Luca

      16 02 2018

      Ciao Matteo, ho ricontrollato due volte e sembra tutto a posto nelle variabili. Ho semplicemente copiato ed incollato i tuoi JS nelle 2 variabili e mi da errore.
      Tra l’altro mi chiedevo perche’ servono due variabili? C’e’ un motivo? Non sarebbe piu’ semplice creare una singola variabile? Magari con questo JS:

      function() {
      var userId = hj.pageVisit.property.get(“userId”);

      var hotjarUserId = userId.split(“-“);

      if(hotjarUserId[0] != undefined)
      {
      return hotjarUserId[0];
      }
      else
      {
      return 0;
      }
      }

    • Matteo Zambon

      16 02 2018

      Ciao Luca, no non c’è un motivo specifico puoi farne anche una 🙂
      L’errore comunque mi sembra di capire che NON è il contenuto JS ma il nome che dai alla VARIABILE di GTM.
      Riesci a mandarmi lo screenshot eventualmente dell’errore?
      Fammi sapere!

    • Luca

      16 02 2018

      hai ragione, l’errore era il nome, non il contenuto!
      Comunque adesso in Preview > Window Loaded vedo sia la stringa completa ‘d059xxxx-2666-3345-ecc.ecc’ che quella che abbiamo estratto d059xxxx.
      Quindi mi sembra che vada bene, giusto?
      Se vado in Preview> Page View mi da le stringhe come “Undefined”. E’ per questo che nel tuo Step 5 suggerisci di aggiungere un altro attivatore? Quell’attivatore deve essere collegato al Tag GA Universal Analytics? Se si, voleov chiederti, quel Tag e’ gia’ collegato all’attivatore All Pages – Visualizzazioni di Pagina, ne aggiungo un altro?

    • Matteo Zambon

      16 02 2018

      Eh 🙂
      Il valore ce l’hai al caricamento della pagina. Quindi o crei un Tag GA con evento o sposti il pageview (che sconsiglio).

      A presto!

    • Luca

      16 02 2018

      Grazie mille Matteo, ho creato un tag GA con evento e collegato all’attivatore nel tuo Step 5 e con dimensione custom {{Hotjar – User Id}}
      Nel preview funziona senza problemi 🙂
      Grazie ancora del supporto. Sei l’unico ad aver scritto una guida decente sull’argomento. Dovresti tradurre tutto in Inglese secondo me.

    • Matteo Zambon

      19 02 2018

      Ciao Luca, grazie mille del feedback. Per la parte inglese credimi è in progetto (ma tempo e supporto per farlo è ancora troppo poco).

  • Reply

    Alex

    05 02 2018

    Hi Matteo.

    I have a question about step 5. You wrote that if a user runs away before Window Loaded, I won’t have the Hit Pageview on Google Analytics.

    Is it a real problem? And how can I solve it? If I create second Universal Analytics tag in GTM with the All Pages – Window Loaded Trigger, would that be correct?

    • Matteo Zambon

      05 02 2018

      Hi Alex, step 4 and 5 are just examples. I usually use a custom GA event to handle the passage of the Hotjar user id.

      So I suggest you keep the pageview of the GA tag in the pageview event and create a custom event in the window loaded.

      Buon Tag 😉

  • Reply

    Giuseppe

    20 11 2017

    Dovrei aver impostato tutto correttamente:
    Il tag relativo a Hotjar è impostato sulla visualizzazione di una determinata pagina, mentre il tag delle pageview analytics dove ho aggiunto la dimensione personalizzata si attiva su “Finestra Caricata”, puoi dare un’occhiata alle impostazioni dei tag dalle seguenti screenshot:
    https://drive.google.com/open?id=1ZfAPkkrVdtA_Z3s9pPHqYNgK612FyE0r

    Cosa ne pensi?

    • Matteo Zambon

      20 11 2017

      Ok Giuseppe, così come l’hai configurato sembra sia corretto. Se provi a cercare l’id di hotjar che non ti risulta nel giorno su GA (filtrandolo) lo trovi da qualche parte?

  • Reply

    Giuseppe

    20 11 2017

    Buongiorno Matteo,
    ho seguito passo passo la tua guida e in realtà sembra funzionare tutto correttamente. L’unico problema è che su analytics non mi ritrovo tutti gli ID registrati su Hotjar. Ad esempio, su analytics imposto un giorno specifico, poi da comportamento -> contenuti del sito -> tutte le pagine imposto come dimensione secondaria l’ID di Hotjar, eliminando gli ID duplicati mi ritrovo ad esempio solo 4 ID differenti. Su Hotjar nello stesso giorno invece, trovo una trentina di recordings. Secondo te come mai su analytics non vengono registrati tutti gli ID? Grazie mille.

    • Matteo Zambon

      20 11 2017

      Ciao Giuseppe 🙂
      Sei sicuro di aver gestito il passaggio della variabile nel tipo attivatore “finestra caricata”? Il motivo potrebbe essere semplicemente che la funzione non ha ancora l’id prelevato da Hotjar 🙂
      Fammi sapere!

  • Reply

    Franco

    28 09 2017

    Buongiorno, ho seguito la tua guida , ed anche dal debuger del tag manager sembra che la dimensione personalizzata venga inviata . ma quando inseire la dimensione personalizzate neòlle colonne delle viste di google ananlitics mi sempre restituita come undefined …. Come posso capire dove sbaglio ?

    • Matteo Zambon

      28 09 2017

      Ciao Franco, stai guardando dati storici? Nel debug apri il Tag di GA e guarda se il valore legato alla dimensione ha il valore oppure no. Se c’è dovresti vederlo anche su GA (fra 6/8 ore nei report).

Hai ancora qualche dubbio?
Chiedi pure qui sotto, sarò pronto a risponderti!

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.