Aug 12 2011

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

IMPORTANTE modifica al calcolo delle visite in GA!

autore: Marco Cilia categoria: generale tag: ,

ATTENZIONE! A partire da ieri Google Analytics introduce una modifica al calcolo delle sessioni di visita. Questo avrà sicuramente un impatto – maggiore o minore a seconda della vostra tipologia di traffico/utenti – di cui dovrete tenere conto: vi consiglio di mettervi una annotazione come promemoria, in modo da rendere più semplice l’eventuale debug. Vediamo cosa cambia esattamente:

Da sempre una nuova sessione in GA viene generata se si soddisfa una delle seguenti tre condizioni:

Con il nuovo metodo di calcolo invece le condizioni diventano:

  • trascorrono più di 30 minuti dall’ultima pagina vista (oppure trascorre il tempo che avete specificato nella funzione _setSessionCookieTimeout)
  • scocca la mezzanotte
  • Quando la fonte di traffico cambia

ATTENZIONE: non fate l’errore, leggendo il blog ufficiale, di pensare che siccome hanno scritto la lista dei parametri interessati la cosa si applichi solo alle campagne o agli annunci AdWords: ho fatto alcune prove e vi posso confermare che la nuova sessione viene creata SEMPRE, se la fonte cambia. Quindi, tanto per fare alcuni esempi pratici:

  • L’utente arriva sul vostro sito direttamente, esce e ci ritorna subito dopo da un referrer: due visite (prima se non chiudeva il browser era una sola)
  • L’utente arriva sul vostro tramite una ricerca su google, esce e ci rientra con un’altra ricerca, keyword diversa: due visite (prima era una visita, e la seconda keyword aveva 0 visite)
  • L’utente arriva sul vostro sito tramite un annuncio AdWords, esce e ci ritorna tramite un altro annuncio AdWords, un referrer, una campagna, una ricerca su un motore di ricerca: due visite
  • L’utente arriva sul vostro sito in qualsiasi modo, chiude il browser, lo riapre entro trenta minuti e arriva direttamente: una sola visita (prima se chiudeva il browser erano sempre e comunque due visite distinte)

Questo modo nuovo di conteggiare le visite potrebbe provocare variazioni nei vostri livelli di traffico, e avere impatto sulla media di pagine per visita e sulla percentuale di nuovi vs returning, ad esempio. Di certo gioverà all’analisi tramite Funnel Multichannel, e tanto per fugare subito un dubbio lecito, avrà effetto solo sulle visite effettuate da ieri, i dati vecchi non saranno toccati (motivo per cui suggerisco nuovamente di impostare una annotazione).


Jun 16 2009

Super cookie con tutte le sorgenti di una conversione

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

supercookieGiovanni mi segnala per email un articolo molto molto interessante per chi ha il cruccio del last cookie win / first cookie win. Ricordo infatti a tutti che Google Analytics è un sistema “last cookie win”, in cui la conversione viene attribuita all’ultima sorgente che ha portato la visita, con alcune regole specifiche per il traffico diretto. Altri sistemi invece preferiscono la logica del “first cookie win” (e su GA possiamo impostarla sulle campagne taggate tramite il parametro no_override), ma quale che sia la logica applicata il difetto che tutti riconoscono è quello di non consentire di tenere traccia di tutte le diverse sorgenti che hanno contribuito a formare nel cliente la decisione di convertire.

So che alcuni sistemi stanno provando (non l’ho mai provato, e correggetemi se sbaglio, ma mi pare che sitovivo abbia una soluzione di questo tipo) a sviluppare logiche miste di attribuzione di una conversione a più sorgenti, ma da oggi grazie al lavoro di un Google Analytics Authorized Consultant possiamo avere qualcosa di similare – ancorché abbastanza di base – per tracciare tutte le sorgenti che hanno concorso ad una conversione: loro lo chiamano “super cookie“.

Questo super cookie si occupa di raccogliere il referrer di ogni visita, di salvarlo in un nuovo cookie chiamato _utmcw e di chiamare la funzione _setVar() impostando il valore di questo cookie come parametro della funzione stessa. I vari referrer non vengono sovrascritti ma messi in coda e separati da un carattere |.
Attraverso un rapporto personalizzato, composto almeno dal parametro “totale completamenti all’obiettivo” e della dimensione “valore definito dall’utente”, avremo modo di verificare tutte le sorgenti che hanno generato conversioni, nella forma (e nell’ordine esatto) ad esempio di:

direct|google(organic)(keyword1)|yahoo(organic)(keyword2)|direct|referral(www.sitoesterno.it)

che ad esempio si riferisce ad una conversione avvenuta alla quinta visita, la prima delle quali diretta (digitazione dell’url o bookmark, ad esempio), la seconda da google con ricerca keyword1, la terza da yahoo con ricerca keyword2, la quarta diretta e la quinta tramite un link dal sito sitoesterno.it. Tramite il super cookie si possono ad esempio conoscere esattamente TUTTE le parole chiave e le frasi che sono state cercate dall’utente prima di convertire

Il punto forte di questo script è che ricostruisce da solo la sorgente, evitando il problema della discrepanza di scrittura del cookie quando avvengono due referral nella stessa sessione di cui vi ho già parlato.

Il punto debole, come ho fatto notare nel post degli autori, è che non è previsto (ma non saprei nemmeno come implementare) un meccanismo di pulizia del super cookie, che continua ad essere aggiornato anche dopo la conversione. Per un visitatore regolare che non pulisce mai i cookie c’è il rischio che esso si gonfi senza sosta. Un punto intermedio è che il supercookie traccia e scrive solo visite provenienti dalle sorgenti “standard”, quindi traffico diretto, referral, ricerche organiche e CPC. Per tracciare anche le campagne, ad esempio le campagne email taggate, il sorgente javascript dello script andrebbe modificato, e sono sicuro che essendo GAAC loro possono sicuramente farvi avere un preventivo per questa operazione 🙂

L’utilizzo dello script è abbastanza semplice. si tratta di scaricare il file dal post linkato, aprire il file cw-algorithm.js e modificare la riga 7
var __ignore = "www.ignore.co.uk";
inserendo l’indirizzo del sito che ospita lo script. Dopodiché caricare i due file sul server web e modificare il codice di tracciamento di Analytics come segue:


<script type="text/javascript"> 
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script> 
 
<script type="text/javascript" src="/cw-setup.js"></script> 
 
<script type="text/javascript"> 
var cookieTracker = _gat._getTracker("UA-XXXXXX-X");
cookieTracker._trackPageview();
</script> 
 
<script type="text/javascript" src="/cw-algorythm.js"></script> 
 
<script type="text/javascript"> 
cookieTracker._setVar(ConversionWorks);
</script> 
 
<script type="text/javascript"> 
var pageTracker = _gat._getTracker('UA-XXXXXX-X');
pageTracker._trackPageview();
</script> 

sostituendo ai vari UA-XXXXXX-X il vostro numero di UA. Notare che la parte di codice riferita a cookieTracker non è un errore, e serve a non sporcare i vostri cookie di default con i valori del super cookie.

In definitiva mi sembra un’aggiunta utile a chi non è soddisfatto del modo in cui vengono attribuite le conversioni alle sorgenti, e una fonte di informazioni utili a prescindere per tutti gli altri. Se il vostro “Valore definito dall’utente” (e/o la vostra funzione _setVar() ) è vuoto, questo può sicuramente essere un sistema valido per usarlo.

Post originale su conversion works e pacchetto da scaricare

image credit: conversionworks.co.uk


Feb 13 2009

funzioni: _setSessionTimeout()

autore: Marco Cilia categoria: funzioni tag: , ,

Come detto nel post precedente, la funzione che si usa in Google analytics per controllare la durata di una sessione di visita, ovvero il tempo massimo che può intercorrere tra la vista di due pagine prima che la visita venga considerata (forzatamente) conclusa, è _setSessionTimeout(stringa).

La funzione accetta come parametro una stringa – sebbene in realtà si tratti di numeri – e precisamente vuole il numero di secondi trascorsi i quali la sessione verrà considerata conclusa. Ad esempio aggiungendo prima della chiamata a trackpageview() la riga

pageTracker._setSessionTimeout(“900”);

si imposteranno sessioni di 15 minuti (60*15 = 900).
Questa funzione va maneggiata con cura, non tanto perché distruttiva nei confronti dei dati inviati, ma poiché è in grado di variare pesantemente i risultati delle analisi. Impostare sessioni molto brevi porta fisiologicamente ad aumentare il numero di visite (e di visitatori di ritorno), mentre allungarle sortisce l’effetto inverso. Usatela se ne avete realmente bisogno perché conoscete bene il tipo di utenza del vostro sito e perché avete esigenze particolari.


Jun 25 2008

keyword con valori a zero

autore: Marco Cilia categoria: report tag: , ,

Finalmente qualcuno mi scrive con una domanda:

Perché trovo tra l’elenco delle parole chiave “visite” di zero pagine, quindi zero tutto il resto? Come vanno interpretate?

Non è un errore, tanto per fugare subito il primo dubbio lecito.

É una situazione che si presenta ogni volta che un visitatore effettua una ricerca su un motore con una chiave (poniamo “chiave1”), effettua qualche attività o un bounce e poi ritorna con un’altra ricerca e un’altra chiave entro 30 minuti, quindi nell’ambito della stessa visita (e posto che non abbiate modificato il valore di questo tempo limite). Tecnicamente il visitatore ha effettuato una sola visita, ma è arrivato con due keyword diverse. Potrebbe ad esempio convertire con la chiave2, ma se GA registrasse solo la prima perderemmo una importante informazione: per questo motivo ci vengono mostrate tutte le keyword effettivamente usate, e vengono settati a zero tutti gli altri valori. Diversamente avremmo dati sballati per visite, visitatori eccetera.

(tnx to Anil Batra)