Grazie al nuovo search referral utilizzato da Google.com, ed ai preziosi parametri che questo si porta dietro è possibile identificare non solo con quale keyword i visitatori hanno raggiunto il vostro sito, ma anche il vostro ranking (keyword position) al momento del click: ovvero in che posizione si trova il vostro sito sulle pagine del motore per queste parole chiave. Prima di adesso alcuni strumenti di Web Analytics offrivano lo stesso servizio, reinterrogando però Google per vedere in che posizione eravate.
Come già accennato nell’articolo precedente uno dei parametri più interessanti contenuti nel nuovo search referral è il cd, il quale dovrebbe indicare esattamente (secondo il vociferare sul web e delle mie affidabili rilevazioni) il ranking del vostro sito per la keyword indicata dal parametro q.
Probabilmente fra non molto tempo Google Analytics (e tutti gli altri tool del settore) riporteranno nella tradizionale reportistica le keywords position, ma nell’attesa ho creato un semplice script in javascript per usufruire già da adesso di questo servizio, vediamolo assieme:
- Per prima cosa avremo bisogno di una funzione che sia in grado di riportare i parametri contenuti in querystring dal search referral:
- function queryString(parameter) {
- var loc = document.referrer.substring(1, document.referrer.length);
- var param_value = false;
- var params = loc.split(”&”);
- for (i=0; i<params.length;i++) {
- param_name = params[i].substring(0,params[i].indexOf(’='));
- if (param_name == parameter) {
- param_value = params[i].substring(params[i].indexOf(’=')+1)
- }
- }
- if (param_value) {
- return param_value;
- }
- else {
- return false; //Here determine return if no parameter is found
- }
- }
- Ed infine prendere questi parametri ed utilizzarli per definire un evento da inviare a Google Analytics. Utilizziamo inoltre un if per evitare che venga creato un evento per ogni referrer diverso da Google.com (e quindi senza i parametri in querystring che a noi interessano):
- var ref = document.referrer.substring(0,25);
- if (ref == “http://www.google.com/url”){
- var rank = queryString(’cd’);
- var key = queryString(’q');
- pageTracker._trackEvent(”Ranking”,”Keywords Ranking”,key, Math.round(rank));
- }
Alla fine il risultato totale (che integra in normale codice di Google Analytics) sarà questo, pronto per essere preso e testato sul vostro sito (bisogna solo modificare i campi in grassetto):
- <script type=”text/javascript”>
- try {
- var pageTracker = _gat._getTracker(”UA-XXXXXXX-X“);
- pageTracker._trackPageview();
- } catch(err) {}
- function queryString(parameter) {
- var loc = document.referrer.substring(1, document.referrer.length);
- var param_value = false;
- var params = loc.split(”&”);
- for (i=0; i<params.length;i++) {
- param_name = params[i].substring(0,params[i].indexOf(’='));
- if (param_name == parameter) {
- param_value = params[i].substring(params[i].indexOf(’=')+1)
- }
- }
- if (param_value) {
- return param_value;
- }
- else {
- return false; //Here determine return if no parameter is found
- }
- }
- var ref = document.referrer.substring(0,25);
- if (ref == “http://www.google.com/url”){
- var rank = queryString(’cd’);
- var key = queryString(’q');
- pageTracker._trackEvent(”Ranking”,”Keywords Ranking”,key, Math.round(rank));
- }
- </script>
In questo modo per ogni visita proveniente da Google.com (se viene utilizzato il nuovo search referral) verrà registrato un evento che indica il ranking del vostro sito per la keyword cercata dall’utente che vi ha raggiunto. Tramite questi “eventi” potrete anche notare il valore medio dei vostri posizionamenti per la stessa parola chiave (nel caso in cui non occupiate stabilmente una posizione).


