
Warning: preg_match(): Compilation failed: invalid range in character class at offset 4 in /home/customer/www/fabiopiccigallo.com/public_html/wp-content/plugins/smart-image-loader/simple_html_dom.php on line 1385
Warning: preg_match_all(): Compilation failed: invalid range in character class at offset 4 in /home/customer/www/fabiopiccigallo.com/public_html/wp-content/plugins/smart-image-loader/simple_html_dom.php on line 690
Warning: Invalid argument supplied for foreach() in /home/customer/www/fabiopiccigallo.com/public_html/wp-content/plugins/smart-image-loader/simple_html_dom.php on line 697
Warning: preg_match_all(): Compilation failed: invalid range in character class at offset 4 in /home/customer/www/fabiopiccigallo.com/public_html/wp-content/plugins/smart-image-loader/simple_html_dom.php on line 690
Warning: Invalid argument supplied for foreach() in /home/customer/www/fabiopiccigallo.com/public_html/wp-content/plugins/smart-image-loader/simple_html_dom.php on line 697
Warning: preg_match(): Compilation failed: invalid range in character class at offset 4 in /home/customer/www/fabiopiccigallo.com/public_html/wp-content/plugins/smart-image-loader/simple_html_dom.php on line 1385
Warning: preg_match_all(): Compilation failed: invalid range in character class at offset 4 in /home/customer/www/fabiopiccigallo.com/public_html/wp-content/plugins/smart-image-loader/simple_html_dom.php on line 690
Warning: Invalid argument supplied for foreach() in /home/customer/www/fabiopiccigallo.com/public_html/wp-content/plugins/smart-image-loader/simple_html_dom.php on line 697
Warning: preg_match_all(): Compilation failed: invalid range in character class at offset 4 in /home/customer/www/fabiopiccigallo.com/public_html/wp-content/plugins/smart-image-loader/simple_html_dom.php on line 690
Warning: Invalid argument supplied for foreach() in /home/customer/www/fabiopiccigallo.com/public_html/wp-content/plugins/smart-image-loader/simple_html_dom.php on line 697
Ogni web analyst che si rispetti ha come preoccupazione principale quella di tracciare i moduli - o form che dir si voglia - che costellano il proprio sito web, e ogni altra persona al mondo non se ne preoccupa, convinto che in ogni caso il tracciamento del modulo avviene de facto nel momento in cui il modulo viene inviato e i dati arrivano sul database, sul CRM o sulla casella di posta del destinatario.
Perché quella di tracciare la compilazione e l'invio di un form mediante Google Analytics (o qualsiasi altro strumento di web analytics) è una scelta intelligente?
Semplicemente, perché, come al solito, non conviene mai accontentarsi del primo dato disponibile, ma è utile invece andare a fondo e cercare di comprendere perché è avvenuto ciò che è avvenuto, e soprattutto quali profili utente sono caratterizzati dal generare più eventi di altri.
In questa puntata impareremo quindi a tracciare l'invio di un form in Google Tag Manager, e a convertire gli eventi tracciati in questo modo in obiettivi di conversione, pronti ad essere analizzati negli opportuni report di Google Analytics.
Gli attivatori di modulo
Come abbiamo visto nella quarta puntata di questo corso, dedicata agli attivatori, Google Tag Manager ci mette a disposizione una particolare categoria di Trigger, quella dei Moduli (o Form, se stai utilizzando la versione inglese).
Questi trigger si attivano in corrispondenza di un evento particolare: quello generato dai tag <form/> presenti nel nostro codice HTML in corrispondenza della propagazione di un evento di tipo submit(). Questo evento occorre normalmente quando l'utente clicca sul pulsante del form che serve per inviare i contenuti del modulo - ossia, quando il click avviene su un pulsante di tipo submit.
Tuttavia, occorre prestare attenzione: non sono rari, infatti, i casi in cui un modulo invia i dati mediante una chiamata a una funzione Ajax che intercetta e bypassa l'evento submit(). In questo caso, il tracciamento del modulo sarà sempre possibile, ma ricorrendo alla generazione di un auto-evento.
Diamo però per scontato che tu utilizzi un modulo standard, magari generato da Contact Form 7 per WordPress, e andiamo avanti.
Attiviamo il Trigger di Evento Modulo
Per iniziare, come al solito andiamo sulla maschera di scelta di un nuovo trigger, e scegliamo quello di tipo Modulo. Ci apparirà una schermata di questo tipo:

La configurazione dell'attivatore di tipo modulo nella versione 2.0 di Google Tag Manager è semplicissima: dopo aver dato un nome al nostro trigger, dovremo sostanzialmente scegliere se attivare due opzioni. La prima, Attendi i tag, fa sì che l'attivatore "congeli" temporaneamente l'attività del browser per il tempo necessario ad eseguire i tag richiesti dal nostro trigger. Conviene attivarlo se il trigger attiva tag molto complessi, e se l'invio del form porta automaticamente al caricamento di un'altra pagina (ad esempio una thank-you page).
In caso contrario, conviene non attivarlo.
L'attivazione di questa opzione rende disponibile un campo che consente di fissare un tempo massimo di attesa per l'esecuzione dei tag sulla pagina. In genere questo tempo è pre-impostato a 2000 millisecondi. Un tempo più che congruo, direi: ti consiglio quindi di non aumentarlo ulteriormente.
La seconda opzione è per noi più interessante: consente infatti di scremare tutti i tentativi di invio di un modulo non andati a buon fine (magari a seguito della mancata validazione di un campo, ad esempio quando il nostro utente scrive una email non valida o non compila un campo obbligatorio).
Converrà, ovviamente, mantenere attiva questa opzione, per eliminare dei falsi positivi. Tuttavia, il marketer fantasioso capirà da solo le potenzialità della generazione di un evento anche quando il submit() non è andato a buon fine, allo scopo di generare un funnel e verificare l'efficacia della sua comunicazione relativa al form.
Scelte le configurazioni di funzionamento, si dovrà come al solito determinare a quali condizioni rendere disponibile il trigger per l'attivazione. È evidente che, qualora ad esempio, il form compaia su una sola pagina, la condizione di base sarà che il path sia quello della pagina interessata. Se tuttavia ha distribuito lo stesso form su più pagine (ad esempio mediante l'uso di un widget nel menu laterale), allora ti converrà sicuramente utilizzare le solite espressioni regolari per rendere disponibile il trigger ovunque.
Andiamo avanti, e vediamo invece quali sono i meccanismi che attivano il trigger e consentono l'attivazione dei nostri tag.

Le variabili di evento disponibili in Google Tag Manager relative ai form sono quelle riquadrate in rosso: è chiaro quindi che preferiremo l'utilizzo di una di queste variabili per innescare il trigger.
Quale?
Di certo, se si hanno più form, magari simili, in pagine diverse o nella stessa pagina converrà utilizzare la variabile Form ID, che ci garantisce di lavorare in modo univoco. Come al solito, converrà utilizzare il nostro tasto F12 della tastiera per analizzare il codice del form che intendiamo intercettare, allo scopo di ricercare l'elemento voluto. Tuttavia, vi sono alcuni plugin, come ad esempio il già citato e diffusissimo Contact Form 7, che non generano un ID a livello di form, limitandosi a un codice come il seguente.

Che fare in questo caso?
In questo caso, potremmo utilizzare la variabile Form URL. Questa stringa contiene infatti il valore dell'attributo action del nostro form. In questo caso specifico potremo dunque utilizzare l'identificativo univoco messo a disposizione da Contact Form 7 nella parte finale della stringa Action come strumento di identificazione:

A questo punto, abbiamo completato il nostro trigger: salviamolo, e passiamo come al solito ad implementare il relativo tag.
Attiviamo il tag
Credo che a questo punto tu sappia come si attiva un nuovo tag di Analytics che abbia come trigger quello che abbiamo appena creato, vero?
Andiamo allora avanti velocemente, per ricordare che come al solito sarà possibile creare non solo tag che trasmettono informazioni di tipo pageview, ma anche informazioni di tipo evento.
Per farlo, basterà indicare nel tag che vogliamo inizializzare un tag di tipo evento, e compilarne i relativi campi, che ritroveremo naturalmente in Analytics:

Pubblichiamo, e da questo momento in poi ad ogni utilizzo con successo del nostro form corrisponderà l'invio di un evento sul nostro account Analytics.
Dall'evento all'obiettivo.
Ti avevo promesso all'inizio dell'articolo che ti avrei portato dalle impostazioni di base dell'attivatore relativo al nostro modulo, fino alla definizione di un obiettivo misurabile in Analytics.
Andiamo dunque a impostare questo obiettivo.
Per farlo, dobbiamo ovviamente entrare nel nostro account Analytics. Andiamo nella schermata di Amministrazione, e clicchiamo su Obiettivi nella colonna a destra, clicchiamo su Personalizzato per creare un nuovo obiettivo personalizzato, quindi specifichiamo che si tratterà di un obiettivo di tipo evento.

A questo punto, non dovremo fare altro che indicare ad Analytics che vogliamo impostare un obiettivo a partire dall'evento che abbiamo impostato in Google Tag Manger. Quindi:

Come vedi, ho fatto in modo che Analytics recepisca come valore per la conversione quello che ho impostato in Google Tag Manager: in questo modo, non sarà più necessario impostare in Analytics un valore per questa specifica conversione.
Salviamo il tutto, ovviamente, e da questo momento in poi Analytics inizierà a registrare come conversioni gli eventi generati da GTM in corrispondenza con l'invio del nostro form.
Continua...
Nelle prossime puntate parleremo ancora di auto-eventi e di tracciamento di click. Lo faremo, però, in modo differente, andando alla scoperta di un operatore fondamentale per poter lavorare efficacemente con Google Tag Manager: il "matches CSS selector".
Prima, però, parleremo di un argomento preliminare, che è fondamentale nella gestione avanzata dei trigger: la sintassi RegEx.
Io te lo dico, ora stampo tutto e rilego 🙂
Fai pure, Giulia: sia mai che lo faccia anche io… 😉