Nov 23 2011

HelpSemaforoQuesto semaforo indica il livello difficoltà del post
semaforo giallo - articolo avanzato

Tracciare Google Immagini, una volta per tutte

autore: Marco Cilia categoria: javascript tag: , , ,

Il tema di come tracciare Google Images esiste da quando esiste Analytics, è un tema ricorrente e le soluzioni proposte variano nel tempo a seconda dello spirito, dell’autore e dei cambiamenti di Google stesso. Al momento il dominio images.google è stato incluso nella lista predefinita dei motori di ricerca a partire da Agosto, quindi le ricerche fatte da lì sono già tracciate insieme alla keyword e finiscono nel report SORGENTI DI TRAFFICO -> SORGENTI -> RICERCA -> RISULTATI ORGANICI (per distinguerli dagli altri potete usare la dimensione secondaria o fare un segmento avanzato con SORGENTE contiene images.google).

Restano invece escluse le visite fatte sul motore “classico” dopo aver selezionato “immagini” dalla colonna di sinistra (quelle cioè con parametro tbm=isch che generano poi un referrer di tipo www.google.it/imgres).
La soluzione più facile e definitiva, posto che non ci interessi analizzare le due cose separatamente, è quella di intercettare quel particolare referrer e di usare la funzione di sovrascrittura del referrer per ricondurlo ad una forma già nota a Google Analytics, in questo modo (fonte help forum, con modifiche perché images.google.com è adesso un motore già riconosciuto):


var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXXXX-X']);

var ref = document.referrer; 
if ((ref.search(/google.*imgres/) != -1)) { 
  var regex = new RegExp("\.google\.([^\/]+)(.*)"); 
  var match = regex.exec(ref); 
  _gaq.push(['_setReferrerOverride', 'http://images.google.' + match[1] + unescape(match[2])]); 
}

_gaq.push(['_trackPageview']);

questo in pratica riscrive completamente il dominio www.google.it e lo trasforma in images.google.it nel caso in cui sia una ricerca fatta sul motore generale.

Così com’è lo script non fa distinzione tra le varie declinazioni dei motori nazionali, quindi images.google.it, images.google.com e tutti gli altri finiscono dentro un unico record che si chiama images.google. Se si ha il desiderio o la necessità di distinguere i top level domain sarà necessario aggiungere dopo _setReferrerOverride un’altra riga:


_gaq.push(['_addOrganic', 'images.google' + match[1], 'q', true]);

Il true in fondo è obbligatorio e, ve lo ricordo, consente di aggiungere il nuovo motore in cima alla lista di quelli conosciuti invece che in fondo, in modo che abbia la priorità su quelli predefiniti.


Jan 31 2011

HelpSemaforoQuesto semaforo indica il livello difficoltà del post
semaforo verde - articolo per tutti

Cosa è “search” nella lista dei motori di ricerca?

autore: Marco Cilia categoria: report tag:

Molti di voi avranno tra le fonti di traffico, ed in particolar modo tra i motori di ricerca, qualche visita proveniente da SEARCH. Quelle visite sono portate al vostro sito proprio dal metamotore di www.search.com, e devo dire che in alcuni casi sono stupito da quante persone lo usino. Probabilmente perché digitando “search” nella barra degli indirizzi google lo restituisce in posizione elevata, ovviamente, e da lì partono con la ricerca vera e propria.

Comunque sia, c’è un cavillo: poiché il riconoscimento e l’attribuzione delle visite viene fatta sulla base di due parametri – come vi avevo spiegato tempo fa – e cioè la presenza nel dominio della “parola” che identifica il motore e la corrispondenza del parametro che contiene la ricerca, se ne può dedurre che qualsiasi motore di ricerca che abbia SEARCH nell’url e usi il parametro q verrà conteggiato in quelle visite. Quindi l’ipotetico motore di ricerca personale del vostro network di siti, che magari è attestato su search.nomenetwork.it e usa q come parametro, verrà inglobato nelle visite di search.
Per ovviare a questo problema la guida di Google Analytics dice di usare _addIgnoredRef() per rimuovere il referrer di quelle visite e farle comparire come visite dirette, ma non mi sembra una soluzione ottimale. Trovo invece più corretto aggiungere il vostro dominio come motore di ricerca ed utilizzare il parametro aggiuntivo prepend di _addOrganic(), in modo da inserire il vostro motore in cima alla lista dei search engines riconosciuti, in questo modo:

_gaq.push(['_addOrganic', 'search.nomenetwork.it', 'q', 1]);


Nov 04 2009

Una modifica a _addOrganic()

autore: Marco Cilia categoria: funzioni tag: , ,

Della funzione _addOrganic() abbiamo già parlato in passato: essa serve ad aggiungere un motore di ricerca alla lista predefinita che Google Analytics riconosce autonomamente, lista che viene modificata nel tempo e che rispetto al post di luglio 2008 è diventata:

images.google:q
google:q
yahoo:p
msn:q
bing:q
aol:query
aol:encquery
lycos:query
ask:q
altavista:q
netscape:query
cnn:query
looksmart:qt
about:terms
mamma:query
alltheweb:q
gigablast:q
voila:rdata
virgilio:qs
live:q
baidu:wd
alice:qs
yandex:text
najdi:q
aol:q
club-internet:query
mama:query
seznam:q
search:q
wp:szukaj
onet:qt
netsprint:q
google.interia:q
szukacz:q
yam:k
pchome:q
kvasir:q
sesam:q
ozu:q
terra:query
nostrum:query
mynet:q
ekolay:q
search.ilse:search_for
rambler:words

fino ad oggi i vostri motori di ricerca venivano aggiunti in coda a questa lista, ma poiché il match viene effettuato in ordine e interrotto alla prima occorrenza (perché una visita con keyword non può certo essere attribuita a due motori differenti!) c’era la remota possibilità che un motore predefinito intercettasse la visita e la keyword prima del motore da voi specificato. Per questo motivo a partire dal mese scorso è stato aggiunto un parametro opzionale alla funzione che serve a dire a GA di consultare prima la lista dei motori personalizzata, e dopo quella predefinita.
Il nuovo parametro è opzionale, è un booleano (quindi 1 o 0, vero o falso) e se non specificato è automaticamente impostato su falso, in modo da replicare la situazione già esistente.

Riprendendo l’esempio che feci nel post originale, la nuova sintassi per aggiungere il motore di Libero e metterlo in cima alla lista (quindi prima di images.google) è


pageTracker._addOrganic("libero","query",1);

Sono piccoli miglioramenti che ai più possono risultare inutili, ma che sicuramente risolvono grossi problemi a qualcuno nel mondo…


Dec 10 2008

Il 2009 di Google Analytics

autore: Marco Cilia categoria: generale tag: , ,

Joe di Morevisibility.com inizia il classico giochino di fine anno con le previsioni per i dodici mesi che stanno per arrivare, ovviamente riguardanti il sistema di web analytics made in Google. Ecco cosa prevede:

  • urchin.js sarà eliminato e tutti saranno costretti a migrare a ga.js. Questa è facile: tralasciando il fatto che i vantaggi di ga.js stanno diventando schiaccianti (monitoraggio eventi, tanto per dirne una), quando ci fu la riscrittura a oggetti del sorgente di Analytics tutti i Google Analytics Authorized Consultant precisarono che il supporto al vecchio codice sarebbe andato avanti ancora per 12-18 mesi. Essendo stato introdotto il 13 dicembre 2007, in entrambi i casi si finirebbe nel 2009.
  • Google Website Optimizer sarà integrato dentro a GA. E’ una delle tante cose ce prima o poi Google farà per arrivare a quello che abbiamo deciso di chiamare Google Business Platform. Ritengo che una prima integrazione sia fattibile durante il 2009, almeno a livello di interfaccia di accesso, come adesso si può accedere ad Analytics da dentro al pannello AdWords
  • Saranno aggiunte nuove sezioni di report, come “blog”, “social media” o “mobile”. A causa di questo fatto Google dovrebbe raggruppare alcuni siti che adesso appaiono come referrer e creare un nuovo mezzo al pari di referrer, motori di ricerca e campagne. Aggiungo che se succederà, dovranno essere assolutamente introdotte funzioni per il controllo di questo nuovo mezzo, al pari di _addOrganic e _clearOrganic, perché il valore dei social media varia molto da paese a paese.
  • Sarà aggiunta una sezione di path analysis. Oppure saranno pesantemente ristrutturati i report esistenti, che al momento sono utili ma non consentono analisi troppo approfondite, e che sono sostanzialmente identici a quando GA fu presentato per la prima volta.
  • La sezione di report subirà una pesante ristrutturazione. Ad esempio si possono solo schedulare gli invii degli export su base giornaliera, settimanale, mensile o trimestrale e non si può fare molto più che modificare oggetto e corpo dell’email.

Aggiungo che secondo me il 2009 è l’anno buono per l’integrazione di Feedburner dentro a Google Analytics, ipotesi che non solo si rafforza in virtù del punto tre predetto da Joe (i feed sono molto diffusi nei blog e nei social network), ma che trova un indizio nel fatto che da pochi giorni Google ha iniziato a migrare forzatamente i vecchi feed sul dominio feedburner.com sul nuovo dominio di proprietà feedproxy.google.com. I feed su questo nuovo dominio possono poi, tra l’altro, usufruire di Adsense per i feed, e i rapporti Adsense si stanno piano piano attivando anche su GA. E il cerchio si chiude.

Quali sono invece le vostre previsioni per il 2009 di Google Analytics?


Jun 07 2008

funzioni: _addOrganic()

autore: Marco Cilia categoria: funzioni tag: ,

La funzione del giorno è _addOrganic(dominio, parametrodiricerca) e ci consente di dire a Google Analytics di trattare un determinato dominio come fosse un motore di ricerca invece di un referrer, e quale deve essere il parametro nel quale trovare le keyword cercate dall’utente. GA ha una lista predefinita di motori di ricerca e relativi parametri che vengono identificati automaticamente durante l’esecuzione del GATC, che al momento della scrittura di questo articolo sono:

(“google”,”q”)
(“yahoo”,”p”)
(“msn”,”q”)
(“aol”,”query”)
(“aol”,”encquery”)
(“lycos”,”query”)
(“ask”,”q”)
(“altavista”,”q”)
(“netscape”,”query”)
(“cnn”,”query”)
(“looksmart”,”qt”)
(“about”,”terms”)
(“mamma”,”query”)
(“alltheweb”,”q”)
(“gigablast”,”q”)
(“voila”,”rdata”)
(“virgilio”,”qs”)
(“live”,”q”)
(“baidu”,”wd”)
(“alice”,”qs”)
(“yandex”,”text”)
(“najdi”,”q”)
(“aol”,”q”)
(“club-internet”,”query”)
(“mama”,”query”)
(“seznam”,”q”)
(“search”,”q”)
(“wp”,”szukaj”)
(“onet”,”qt”)
(“netsprint”,”q”)
(“google.interia”,”q”)
(“szukacz”,”q”)
(“yam”,”k”)
(“pchome”,”q”)
(“kvasir”,”searchExpr”)
(“sesam”,”q”)
(“ozu”,”q”)
(“terra”,”query”)
(“nostrum”,”query”)
(“mynet”,”q”)
(“ekolay”,”q”)
(“search.ilse”,”search_for”)

I parametri che la funzione accetta in ingresso sono due stringhe, la prima è il nome del motore di ricerca che ritroveremo poi nei report, il secondo è il parametro nel quale il motore passa in GET le keyword ricercate. Ad esempio nell’URL
http://www.google.it/search?q=google+analytics&sourceid=navclient-ff&ie=UTF-8

le keyword stanno nel parametro q, nell’URL
http://arianna.libero.it/search/abin/integrata.cgi?regione=9&query=google%20analytics
le keyword si trovano nel parametro query, per cui per aggiungere Libero tra i motori di ricerca la funzione da usare è
pageTracker._addOrganic("libero","query");

poiché però il nome del motore fa il match con qualsiasi parte del dominio, andrebbe bene anche la funzione chiamata così
pageTracker._addOrganic("arianna","query");