In 30 secondi
- Google Analytics sa da dove arriva chi compila un modulo, il CRM sa se poi è diventato cliente: da soli non si parlano.
- Il ponte è un codice comune che finisce sia nell'evento di GA4 sia nella scheda del CRM.
- A Google non si mandano mai nome, telefono o email in chiaro: lo vietano le sue regole.
- Il risultato è un report per canale: quanti moduli, quanti clienti, quanto fatturato.
Indice dell'articolo
Collegare Google Analytics e CRM vuol dire poter rispondere a una domanda semplice: dei contatti arrivati dal sito, quali sono diventati clienti, e da quale canale venivano? Google Analytics 4 sa da dove arriva chi compila un modulo (Google, una campagna, Instagram), ma non sa cosa succede dopo. Il CRM sa chi ha comprato, ma non sa da dove era arrivato. Il collegamento si fa con un codice comune che finisce in tutti e due.
Se oggi in GA4 vedi “20 moduli inviati” e nel CRM “5 clienti nuovi” e non sai dire quali siano gli stessi, qui trovi come li collego io: i passaggi, le due strade possibili (una più semplice, una che funziona anche sui dati vecchi), come si leggono i numeri e cosa non mandare mai a Google.
Perché Google Analytics e CRM non si parlano da soli
Sono due sistemi che guardano la stessa persona da due lati.
- GA4 registra la visita: pagina d’ingresso, sorgente, campagna, dispositivo. Quando qualcuno invia un modulo, il sito manda l’evento
generate_lead, che Google consiglia proprio per misurare i lead generati da un modulo (elenco degli eventi consigliati di GA4). - Il CRM registra la persona: nome, telefono, appuntamenti, preventivi, fatture.
Tra i due manca un campo in comune. GA4 non conosce il nome di chi ha compilato, e non deve conoscerlo: le norme di Google Analytics vietano di inviare dati che Google possa riconoscere come informazioni personali, cioè nome, email, telefono e simili (best practice di Google sulle PII). Il CRM di solito salva al massimo la sorgente dichiarata (“come ci hai conosciuto?”), che le persone compilano a caso.
Così finisce che il modello di attribuzione si decide guardando solo GA4, cioè contando i moduli e non i clienti. Una campagna che porta molti moduli di gente che non compra sembra la migliore.
Come collegare Google Analytics al CRM, passo per passo
GA4 + CRM
- Codice comuneun ID per ogni modulo inviato
- Evento GA4generate_lead con l'ID come parametro
- Scheda CRMlo stesso ID salvato sul contatto
- Abbinamentoogni giorno, in automatico
- Report per canalemoduli, clienti, fatturato
- Decidi il codice comune. È il campo che permette di dire “questo evento di GA4 e questa scheda del CRM sono la stessa richiesta”. Le strade sono due, le vedi sotto.
- Manda l’evento
generate_leada GA4 con il codice come parametro. Si fa da Google Tag Manager o dal codice del sito, solo dopo che il modulo è stato inviato davvero, e solo se la persona ha dato il consenso alle statistiche. - Registra il parametro come dimensione personalizzata. In GA4 vai su Amministrazione → Definizioni personalizzate → Crea dimensione personalizzata, ambito Evento, e scrivi il nome del parametro. Senza questo passaggio il dato arriva ma non lo vedi nei report; dopo la creazione servono 24-48 ore prima che compaia (guida di Google sulle dimensioni personalizzate).
- Salva lo stesso codice nel CRM. Il modulo che crea il contatto nel CRM deve scrivere anche il codice, in un campo dedicato.
- Abbina in automatico. Uno script che gira ogni notte scarica da GA4 gli eventi del giorno con codice, sorgente e campagna, e li collega alle schede del CRM. Puoi usare l’API di GA4 o l’esportazione in BigQuery.
- Guarda il report per canale. Per ogni sorgente: moduli inviati, moduli che hanno una scheda nel CRM, clienti, fatturato. È il numero che ti serve per decidere dove spendere.
Con un ID del lead (la strada che consiglio)
Il sito genera un codice casuale quando la persona invia il modulo, per esempio L-8F3K2, e lo manda in due posti: nell’evento di GA4 e nel CRM insieme ai dati del contatto. Il codice da solo non dice niente di nessuno, quindi a Google non arriva nessun dato personale.
È la strada più pulita se parti da zero. Il limite è che funziona solo dal giorno in cui la attivi: i moduli arrivati prima non hanno il codice.
Con un’impronta cifrata di telefono ed email
È la strada usata nel caso che racconto più sotto. Il sito non manda il telefono, ma la sua impronta: una stringa calcolata con SHA-256 a partire dal numero più una parola segreta (il “sale”) che conosce solo il tuo server. Il CRM calcola la stessa impronta sui telefoni dei clienti e le due liste si confrontano.
Il vantaggio è che puoi abbinare anche contatti che nel CRM c’erano già, senza un codice salvato. Due avvertenze:
- per il GDPR un dato cifrato così resta un dato personale pseudonimizzato, non anonimo: chi ha il sale può risalire alla persona (art. 4 del GDPR, definizione di pseudonimizzazione). Va trattato con il consenso e citato nell’informativa;
- senza sale l’impronta di un numero di telefono si ricalcola in pochi secondi. Il sale deve stare solo sul server, mai nel codice della pagina.
Se hai dubbi su questa seconda strada, usa la prima. Io la uso solo quando serve ricollegare il passato.
Dove si leggono i dati in GA4
Per un controllo a mano: Esplora → Formato libero. Come dimensioni metti il parametro con il codice, Sorgente/mezzo della sessione e Pagina di destinazione; come metrica Conteggio eventi; come filtro Nome evento uguale a generate_lead. Esporti la tabella e la confronti con il CRM. Funziona per una prova, poi conviene automatizzare.
Occhio alla conservazione dei dati: nelle proprietà GA4 standard i dati a livello di utente si possono tenere 2 mesi o 14 mesi, a scelta nelle impostazioni (guida di Google sulla conservazione dei dati). Se vuoi riconciliare a distanza di tempo, controlla che sia su 14 mesi.
Il caso reale: uno studio dentistico
In uno studio dentistico il sito nuovo mandava già a GA4 l’evento generate_lead con l’impronta cifrata del telefono, del nome e dell’email, solo con il consenso alle statistiche. Mancava la seconda metà: nessuno confrontava quei dati con il gestionale dello studio, che fa da CRM. Nei report di GA4 si vedevano gli eventi, ma nessuno sapeva dire chi fossero né se fossero diventati pazienti.
Prima di costruire qualcosa ho guardato cosa arrivava davvero in GA4. Nessun ID utente: solo parametri dell’evento. Dall’11 ottobre c’erano 9 moduli inviati, con 9 telefoni diversi, più 18 eventi di campi compilati in moduli poi abbandonati. La conservazione dei dati era già a 14 mesi, quindi si poteva riconciliare anche all’indietro.
Poi ho costruito il collegamento. Nel gestionale ho aggiunto una tabella che riceve le impronte da GA4, accessibile solo dal server e mai dalla chiave pubblica del sito, e una funzione che ricalcola la stessa impronta sui telefoni e sulle email dei pazienti. Prima di accenderlo ho controllato su un numero finto che il calcolo del sito e quello del database dessero lo stesso risultato: se cambia anche solo uno spazio o il prefisso, non si abbina niente.
Al primo giro, sugli ultimi 30 giorni, tutti e 9 i moduli inviati sono stati ritrovati nel gestionale. Da lì lo script parte ogni mattina alle 7:30, e la mail del rapporto delle 8:00 non contiene più le impronte grezze: ha una riga per canale con i moduli inviati e quelli abbinati a un paziente. Solo numeri, nessun nome.
Tabella di sintesi
| Metodo | Dato che arriva a GA4 | Pro | Contro | Quando usarlo |
|---|---|---|---|---|
| ID del lead | Un codice casuale | Nessun dato personale a Google, semplice | Vale solo da quando lo attivi | Se parti da zero |
| Impronta cifrata con sale | Hash di telefono o email | Ricollega anche i contatti già nel CRM | Resta un dato personale per il GDPR | Se devi abbinare il passato |
| Sorgente nel CRM | Niente | Nessuna configurazione su GA4 | Dipende da cosa scrive la persona | Come controllo, mai da solo |
| Export a mano da Esplora | Uno dei primi due | Si fa in un’ora | Non regge oltre la prova | Per capire se vale la pena |
Trucchi che sanno in pochi
- Normalizza prima di cifrare. Telefono con il prefisso +39 e senza spazi, email in minuscolo: il sito e il CRM devono fare esattamente le stesse pulizie, altrimenti le impronte non coincidono.
- Misura anche i moduli abbandonati. Un evento sui campi compilati, prima dell'invio, ti dice dove le persone si fermano.
- Nel report metti solo totali. La mail o la dashboard che leggono in tanti non ha bisogno dei nomi: il dettaglio resta nel CRM.
- Metti la conservazione dei dati a 14 mesi il primo giorno. Non si recupera quello che GA4 ha già cancellato.
Quando i due sistemi sono collegati, il passo successivo è scegliere quali numeri guardare ogni settimana: ne parlo in KPI CRM B2B: i dati che contano e in come costruire una dashboard CRM. Per decidere come dividere il merito tra i canali quando un cliente ne tocca più di uno, c’è la guida al modello di attribuzione nel CRM.
Errori da evitare
- Mandare a GA4 email o telefono in chiaro, anche dentro l’URL della pagina di ringraziamento (
grazie?email=...). È contro le norme di Google, ed è facile farlo senza accorgersene. - Cifrare senza sale. L’impronta di un numero di telefono senza sale si ricostruisce in fretta.
- Contare i moduli come clienti. Un modulo è una richiesta. Il canale migliore è quello che porta clienti, e lo sai solo dal CRM.
- Fidarsi del campo “come ci hai conosciuto”. Serve come conferma, non come dato principale.
- Collegare tutto su un CRM sporco. Se lo stesso cliente ha tre schede, l’abbinamento ne trova una a caso: prima sistema la qualità dei dati del CRM.
Domande frequenti
Si può collegare Google Analytics 4 al CRM?
Sì. Non c’è un collegamento diretto, ma basta un codice comune: lo mandi a GA4 come parametro dell’evento del modulo e lo salvi nel CRM sulla scheda del contatto. Poi uno script abbina le due liste.
Google Analytics è un CRM?
No. Google Analytics misura le visite e le azioni sul sito in forma aggregata, il CRM gestisce le persone e la relazione commerciale. Servono tutti e due, collegati.
Posso mandare l’email del cliente a Google Analytics?
No. Le norme di Google Analytics vietano di inviare dati che permettono di identificare una persona, come nome, email e telefono. Usa un codice casuale o, se proprio serve, un’impronta cifrata con sale.
Cos’è l’evento generate_lead di GA4?
È l’evento che Google consiglia per misurare un lead generato, per esempio un modulo inviato. Puoi aggiungergli parametri, come il valore stimato o un codice che serve a ritrovare il contatto nel CRM.
Quanto tempo serve per collegare GA4 e CRM?
Per la prova a mano con Esplora basta un’ora. Per il collegamento automatico, con lo script che abbina ogni giorno, nel caso dello studio è andato veloce perché il sito mandava già i dati giusti: il grosso del lavoro è stato verificare che sito e gestionale calcolassero la stessa impronta.
Funziona anche con le campagne Google Ads?
Sì: in GA4 la sorgente e la campagna arrivano con l’evento, quindi il report per canale le mostra separate. Se le campagne non hanno i parametri giusti, finiscono sotto una voce generica e non le distingui.
Se vuoi capire quanti dei contatti del tuo sito diventano clienti, e da dove arrivano, c’è la Diagnosi CRM che faccio con Astra K. Se preferisci partire da solo, qui sotto trovi il blueprint che uso per misurare la lead generation canale per canale.
Vuoi applicarlo alla tua azienda? Nella Diagnosi CRM seguiamo una tua trattativa vera dal primo contatto al contratto e ti mostro dove si perdono clienti.
Scopri la Diagnosi CRM