Preparatevi a raccogliere la mascella: voglio presentarvi un metodo per tracciare i posizionamenti di Google che arrivano sul vostro sito ed ottenere, tramite Google Analytics, un andamento giornaliero!
Il tutto nel giro di pochi minuti e completamente gratis! Troppo bello per essere vero?
Ideatori originali
Nelle settimane scorse ho letto un articolo sul blog di Justin Cutroni, relativo alla possibilità di tracciare i posizionamenti delle keyword organiche all’interno di Google analytics. Questo meccanismo è stato ideato durante una conversazione con AJ KHON, il quale stava cercando un metodo per calcolare degli “indici di posizionamento” per cercare di aggregare più risultati sotto un unico indicatore.
Un indice di posizionamento è un’idea brillante: è la media dei posizionamenti di diverse parole chiave simili: mi da un’idea più consistente del lavoro Seo che è stato fatto su un progetto, invece di vomitare una sbrodolata di dati nella reportistica.
L’evoluzione geniale di Justin Cutroni
C’era già da un paio di anni un metodo in javascript per leggere la posizione delle parole chiave ed associarlo alle keyword dentro analytics, ma Cutroni da questa discussione, ha partorito un sistema migliore:
- Qualcuno clicca su un risultato del motore di ricerca
- L’utente atterra sul tuo sito
- Un codice javascript sul tuo sito memorizza la parola chiave e il posizionamento usando un evento di Google Analytics
- Usa Google analytics per calcolare la posizione media della keyword
- (opzionale) Crea un indice di parole chiave e analizzale usando l’esportazione eventi o una importazione da Google Analytics API.
Spiegazione tecnica: l’utente che atterra su un sito, partendo da Google, si porta dietro alcuni parametri tra cui la parola chiave (indicata dal parametro “q=”) e la posizione (indicata dal parametro “cd=”). Salvando questi due elementi come un “evento” di Google Analytics, è possibile ottenere un elenco di valori che illustrano, giorno dopo giorno, l’andamento della posizione media.
Vantaggi e svantaggi
Diciamo subito che questo sistema non consente di fare a meno di una sobria attività di rank checking “esterno” mediante sofware: è possibile tracciare solo le keyword che generano click da Google per entrare sul sito, mentre quelle che non lo generano rimangono fuori dai conteggi.
Ovviamente il click-through rate delle keyword in posizione 11 o più sarà molto basso, quindi l’input che può arrivare da questo sistema rischia di essere limitato.
Un grosso vantaggio è che la reportistica verso i clienti può avere nuova linfa vitale e produrre nuovi interessanti aggiornamenti, facilmente interpretabili.
E la zona geografica?
Come potete notare da questo screenshot di un caso reale che sto monitorando da qualche settimana, questo sistema consente anche di comprendere gli scostamenti medi legati alla zona geografica del visitatore. Questo è un dato che può sembrare banale, ma immaginate di fornire un risultato di questo tipo: “Abbassiamo il budget adwords sulle città dove siamo ben posizionati e spostiamolo su quelle dove siamo posizionati meno bene“… questo a dimostrazione che una strategia di marketing completa deve tenere in considerazione SEO e PPC.
E il not provided ?
Sebbene non sia possibile risalire completamente al traffico (not provided), questa analisi vi dovrebbe aiutare a comprendere a grandi linee come è ripartito il traffico not provided, partendo dal principio che tutte le ricerche legate ad un marchio, sono quasi sempre tra la prima e la seconda posizione.
Lo ribadisco: le keyword singole sono perdute per sempre, ma almeno potete ripartizionare il traffico (not provided) e dire “il 15% è slegato dal brand”.
(oppure ve ne potete definitivamente disinteressare e puntare ad attività più strategiche).
Il punto debole: L’universal Search
Google oramai mette di tutto nelle sue pagine dei risultati e questo lo sappiamo tutti: la cosa che infastidisce questo brillante meccanismo è proprio il conteggio di tutti questi risultati, perchè ogni singolo link organico in uscita, conta come una posizione, quindi se su Google cercate “apple“, otterrete i sitelink del sito di apple, le posizioni sulle mappe degli apple store e poi gli altri risultati organici.
Il conteggio finale del link a fondo pagina non è 10… è 18. E quindi se voi siete al fondo di questa pagina con il vostro sito, il sistema rileverà una posizione diciotto!
A complicare le cose, nella seconda pagina dei risultati, il conteggio riprende da 11 a 20! (nelle pagine seguenti il conteggio è regolare)
Insomma ci può essere una sovrapposizione tra i risultati della prima e della seconda pagina, le cose potrebbero essere migliori di quello che pensate!
Ne risulta che: un buon Seo deve sempre analizzare i dati con la testa e i propri occhi, quindi non fidatevi mai ciecamente degli strumenti di analisi.
Come si realizza?
Se state sbavando (come lo ero io quando ho letto l’articolo), usate un fazzoletino di carta per ripulirvi e seguite questi semplici passaggi.
- Opzionale ma vivamente consigliato: Create un account nuovo di analytics con un codice “UA” differente. Io questo ve lo consiglio per evitare problemi con i vostri dati preesistenti. Per come è concepito il sistema, non dovrebbe influenzare altri valori (come le pagine viste), ma ogni tanto analytics cambia le carte in tavola ed è meglio tenere separati questi dati che servono prevalentemente a chi (come noi) fa analisi di marketing.
- Inserite il seguente codice nelle vostre pagine:
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-sostituisci con il tuo codice o con quello appena creato']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'https://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
if (document.referrer.match(/google\.([a-zA-Z]{2,5})/gi) && document.referrer.match(/cd/gi)) {
var myString = document.referrer;
var r = myString.match(/cd=(.*?)&/);
var rank = parseInt(r[1]);
var kw = myString.match(/q=(.*?)&/);
if (kw[1].length > 0) {
var keyWord = decodeURI(kw[1]);
} else {
keyWord = "(not provided)";
}
var p = document.location.pathname;
_gaq.push(['_trackEvent', 'RankTracker', keyWord, p, rank, true]); }
</script>
Attenzione! Se decidete di usare questa modalità assieme al codice analytics che usate di normalmente, è possibile che dobbiate usare un doppio codice analytics, con tutto ciò che ne consegue. Se non siete sicuri, consultate il tutorial di Goanalytics per l’implementazione del doppio codice.
Come si realizza con Google Tag Manager!
Se la cosa vi sembra complessa… installate google tag manager! Ho fatto un webinar introduttivo per il Convegno GT a dicembre che vi ripropongo:
Con Google Tag Manager è tutto più facile:
- Create un nuovo profilo Analytics con un codice UA nuovo.
- Create un tag “html personalizzato”, che vi consente di scrivere dentro (quasi) qualsiasi cosa.
- Incollate nel tag il codice analytics che vi ho scritto sopra, senza modifiche tranne il vostro nuovo UA.
- Associatelo a tutte le pagine del sito
- Pubblicate le modifiche e siete immediatamente operativi!
Conclusioni e sviluppi futuri
Mi aspetto che qualche persona più abile di me in javascript e analytics riesca a definire un modo per suddividere ulteriormente i posizionamenti con l’universal search da quelli di posizionamento normale… me lo auspico, ma personalmente lo ritengo uno sforzo accademico.
Già a questo livello questo strumento, ci permette di capire fino a che punto le nostre capacità di SEO influenzano effettivamente i risultati!
Inoltre ci da una importante possibilità, quella di studiare l’impatto di determinati posizionamenti in relazione a certe attività intraprese: se ottengo un link esterno in una pagina, su quante parole chiave inciderà ?
Idealmente questo metodo di calcolo e tracciamento, diventerà lo status quo per chi monitora l’andamento degli e-commerce: invece che fare una analisi mensile su decine di migliaia di keywords potrebbe essere più redditizio per chi gestisce l’attività, vedere Il posizionamento medio dei prodotti che contengono la parola “smartphone” o “galaxy” o “tablet“.
Il tutto… gratis! (tranne il tempo speso ad implementare il codice ed analizzare i dati).
Che altro devo dire per convincervi ?
Interessante, perchè è un metodo che ti aiuta ad evitare di usare software esterni, con tutto quel che ne consegue.
Posso chiederti, non essendo esperto di js, come fa il codice a “capire” qual è la posizione in pagina occupata dal proprio risultato?
Certamente! Se guardi con un tool di analisi dell’html (per esempio la funzione “inspect” di chrome o firebug per firefox), ogni risultato di google ha una serie di parametri, tra cui quello chiamato “CD”. Quel parametro viene letto dal javascript elencato e inserito come “valore” di un evento analytics che contiene come “etichetta”, il valore presente nella query (parametro “Q=”). Quando la query è assente, lo script inserisce la voce “not provided”.
Non mi piace. Non ti scoccia se lo affino un pochino vero? 🙂
Ci mancherebbe!!! 🙂 da te mi aspetto grandi cose!
Domanda banale forse, utilizzando il codice da te indifcato e inserendolo nelle varie pagine avrò un report solo e specifico per il posizionamento o completo anche di tutte le classiche statistiche di analytics?
Grazie dell’ottimo articolo! Mattia
Per quello che vedo è completo di tutte le statistiche base, chiaramente rimangono esclusi:
– filtri
– obiettivi
– tracciamenti particolari
…se non vengono ricreati sul profilo copia.
Inoltre non hai lo storico precedentemente all’attivazione del profilo copia.
Spero che questo risponda alla tua domanda 🙂
Grazie della risposta. Ho creato un nuovo account di monitoraggio del mio sito, adesso vediamo con questo script come va e quante cosette interessanti vengono fuori!
Nel caso Marco Cilia produca un nuovo script lo posterete sempre in questo articolo?
Ciao Andrea,
volevo chiederti un info riguardo un piccolo bug che ho riscontrato:
Ho utilizzato Tags Manager per inserire il codice di Analytics, ho atteso le classiche ore perchè partisse il flusso di dati, ho riscontrato dopo diversi giorni che il profilo Google analytics riceve i dati di monitoraggio, il debug di Tags Manager rileva il codice correttamente, ma nelle impostazioni di Analytics risulta che il codice non è inserito nel sito O_O.
Ti/vi è capitato)
Grazie e complimenti.
Si certo, il codice viene caricato “remotamente” tramite l’iframe del codice di tag manager, quindi di base gli strumenti normali non lo rilevano 🙂
perfetto, grazie per il chiarimento e la rassicurazione 😉