Jul 31 2013

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

Nuovo report: flusso comportamento

autore: Marco Cilia categoria: report tag: , ,

Non ho visto in giro molti post su questo nuovo report, che si trova nel gruppo dei CONTENUTI: si tratta del report FLUSSO COMPORTAMENTO. Forse perché molti hanno pensato che fosse solo uno spostamento e cambio nome del vecchio FLUSSO VISITATORI, che invece è vivo e vegeto, per adesso, ed è ancora nella sezione dei visitatori.

In pratica il flusso comportamento è una fusione di due report esistenti e introduce una modalità aggiuntiva.
Quando viene aperto esso si trova esattamente in configurazione “Pagine”, e quindi riporta le stesse informazioni del report FLUSSO VISITATORI: come le visite di distribuiscono tra le pagine e quali percorsi vengono più “battuti”.

Agendo sul secondo menu della barra grigia si può passare alla visualizzazione “eventi”, e il report si trasforma nel FLUSSO EVENTI, e riporta le stesse informazioni di quel report: come si susseguono gli eventi all’interno delle visite.

La terza modalità è invece la più interessante, ed è una modalità mista con pagine ed eventi. Essendo il numero di combinazioni estremamente elevato, esso è disponibile solo selezionando una pagina. Dopo aver impostato quindi la visualizzazione “pagine ed eventi” sarà anche necessario impostare la pagina desiderata tra quelle disponibili. A questo punto la visualizzazione mostra le visite che sono transitate per quella pagina, dimensionate secondo la dimensione scelta ed eventualmente segmentate in base al segmento selezionato, ma inoltre mostra anche il susseguirsi di eventi, se ve ne sono stati, a partire da quella pagina. Come sempre le pagine sono mostrate in verde e gli eventi in azzurro.

flusso-comportamento

E’ un report che torna utile per comprendere, meglio di prima, quale sequenza di azioni venga eseguita a partire da una pagina, specialmente in un sito con tracking complessi che comprendono molti eventi. Penso ad un grande classico, ovvero il tracking tramite eventi dei click sui link in uscita: con questo report non c’è bisogno di segmenti avanzati, basta selezionare una pagina e vedremo chi abbandona, chi continua e dove e chi abbandona cliccando link esterni dove va :)


Apr 09 2012

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

Tracciamento degli errori client-side

autore: Marco Cilia categoria: codice di monitoraggio tag: , ,

Di metodi per tracciare gli errori dei siti ne abbiamo visti parecchi, in questi anni: 404, 500, con pagine virtuali o con eventi, praticamente tutte le combinazioni possibili sono state sviscerate. Ma c’è un tipo di errore diverso che non avevo mai visto tracciato, ed è l’errore client-side, o l’errore visualizzato dal browser. Se ad esempio il vostro sito è una webapp, o un sito che fa un uso molto spinto di AJAX e javascript, i problemi più comuni non saranno errori di pagine non trovate o di chiamate sbagliate al database, bensì errori di interpretazione ed esecuzione di funzioni lato client.

Per questo motivo in un post del blog di ThetaBoard c’è un elenco di tool dedicati adatti a tracciare queste situazioni, ma allo stesso tempo è anche presente una soluzione semplice e alla portata di tutti: siccome Google Analytics è installato un po’ ovunque, e siccome è gratis, con una semplice modifica del codice si può avere – quasi – lo stesso risultato. La modifica è l’aggiunta, dopo il codice di monitoraggio standard, delle righe


// ADD THIS AT THE BOTTOM OF YOUR GOOGLE ANALYTICS TRACKING CODE //
window.onerror = function(message, file, line) { 
   var sFormattedMessage = '[' + file + ' (' + line + ')] ' + message; 
   _gaq.push(['_trackEvent', 'Exceptions', 'Application', sFormattedMessage, null, true]);
}

Il sistema utilizzato è quello degli eventi, per cui il report relativo da guardare sarà quello delle etichette degli eventi. Ancora meglio però sarà suddividere gli errori per pagina, per cui si aprirà il report CONTENUTI -> EVENTI -> PAGINE e si utilizzerà la dimensione secondaria ETICHETTA EVENTO, ottenendo esattamente quel che si vede nell’immagine del post che vi ho linkato

errori client side con eventi

Come si dice giustamente nel paragrafo finale, il sistema non è perfetto, e non è un sistema dedicato, ma ha dalla sua almeno due buoni vantaggi: non dovrete installare un nuovo sistema e caricare il server anche di quell’incombenza, e soprattutto potrete capire che relazione esiste tra questi errori e le vostre metriche di business, come il conversion rate o le transazioni. Il che non mi sembra affatto poco! :)


Sep 30 2009

GA per SEO: traccia tutto in una mossa, con gli eventi

autore: Marco Cilia categoria: codice di monitoraggio tag: , ,

A margine del post di aggiornamento sul metodo per tracciare il posizionamento sono venuto a conoscenza di un altro strumento per Google Analytics che i SEO penso troveranno utile. Si tratta di un unico file javascript che tramite gli eventi – quindi senza inflazionare il numero di pagine viste – si occuperà di:

  • tracciare il numero di referral dai diversi motori: Google, Yahoo, AOL, Live, MSN
  • distinguere gli arrivi dai diversi siti Google, compresi i verticali come Google News, Reader, eccetera
  • trovare il posizionamento medio per ogni estensione nazionale di Google
  • tirare fuori le keyword e altre informazioni utili dagli arrivi via Google Immagini

Importante da tenere a mente: Anche questo sistema, per quel che concerne il posizionamento, agisce solo ed esclusivamente sui referrer generati dai datacenter google che hanno già subito l’aggiornamento, cioè quelli i cui indirizzi delle pagine di risultato hanno il cancelletto #

Per usarlo è sufficiente scaricare il file seopositionplus.js dal sito di abtesting, copiarlo sul proprio server ed aggiungere la riga


<script src="seopositionplus.js" type="text/javascript" language="javascript"></script>

subito dopo il codice di tracciamento di Analytics, eventualmente modificando l’indirizzo del file secondo necessità.
La schermata dentro agli eventi si presenterà all’incirca così:
schermata eventi

e la parte relativa al posizionamento è dentro a “SEO Google Position”. Dentro a “SEO Google TLD” ad esempio c’è la parte relativa agli arrivi tramite le estensioni nazionali del motore di ricerca.
Come giustamente fanno notare nei commenti del post, è doveroso ricordarvi che un evento conta come un’azione, per cui l’uso di questo sistema avrà un impatto decisamente pesante sul vostro bounce rate. Il mio consiglio è quello di creare un altro profilo (non un profilo copia, che condivide lo script di tracciamento, proprio un altro profilo).


Jul 28 2009

Segmenti avanzati con eventi

autore: Marco Cilia categoria: report tag: , ,

Anche se può sembrare strano, fino a ieri non era possibile creare un segmento avanzato che si riferisse alle visite contenenti eventi, tracciate quindi tramite la funzione _trackEvent(). Google ha aggiunto questa funzionalità e lo ha annunciato con un post sul blog ufficiale.

Le tre dimensioni che si possono usare nei segmenti sono azione, categoria ed etichetta degli eventi, mentre i parametri selezionabili sono gli eventi univoci, il totale eventi e il valore, ammesso che sia stato inviato visto che è un parametro opzionale della funzione. Ad esempio un segmento con “totale eventi maggiore di 0” sarà in grado di mostrarci solo le visite che hanno scatenato almeno un evento durante la permanenza sul sito, mentre un segmento con “categoria eventi: download e totale eventi maggiore di 2” ci dirà quante visite sono risultate nel download di due o più file.

Se avete scaricato e state utilizzando il mio videotracker (e se non lo state facendo la domanda è: PERCHE’ ? :) ) questi segmenti possono essere utili per isolare ed analizzare ancora più in dettaglio i visitatori che usufruiscono dei vostri video. Un esempio molto veloce è un segmento fatto così:

Azione dell’evento – corrisponde esattamente – Volume
e
Valore evento – Maggiore di – 90

che mostra solo le visite che hanno visto dei video e mantenuto un volume dell’audio superiore al 90%.

Utilizzando le etichette degli eventi, che nel videotracker corrispondono al titolo del video, si possono anche segmentare le visite per singolo video, e ad esempio si possono monitorare le fonti di traffico di chi ha visto un certo video, che possono essere molto diverse (pensiamo solo alle keyword di ingresso sul sito) rispetto a chi ha visto un video differente.


Jul 02 2009

Initdata e tracciamento eventi

autore: Marco Cilia categoria: codice di monitoraggio tag: , , ,

In passato vi ho descritto l’uso della funzione _trackEvent(), utile per usare il tracciamento degli eventi sulle pagine ed evitare di generate troppe pagine virtuali o per tracciare comportamenti complessi dell’utente indipendentemente dalla sua attività (ad esempio per tenere traccia degli eventi in AJAX, che tipicamente non ricaricano la pagina e quindi non generano un nuovo invio di dati a Google Analytics).

Un caso un po’ anomalo è capitato ad un utente del forum di supporto: venablc ha bisogno di chiamare la funzione _trackEvent() senza richiamare anche _trackPageview(), probabilmente perché sta inviando i soli dati degli eventi ad un altro profilo e non vuole vedere le pagine viste; omettendo semplicemente la chiamata il codice non funziona e la consolle degli errori javascript riporta un laconico errore di “oggetto non definito”.

La soluzione al problema è resuscitare la defunta funzione _initData(), soppressa qualche tempo fa. L’oggetto che manca a _trackEvent infatti viene creato da _initData(), che a sua volta è richiamata automaticamente da _trackPageview(). Ma nessuno ci vieta di chiamarla esplicitamente, evitando di inviare i dati della pagina vista ma consentendo a _trackEvent() di funzionare regolarmente!
[ovviamente quanto detto vale per il caso specifico e può essere adattato alle vostre esigenze senza dimenticare quanto detto in questo altro post: o initData ce l’avete in tutte le pagine o non ce l’avete in nessuna, per quanto riguarda il profilo che raccoglie i dati]


Jun 11 2009

A cosa serve “nomi host” nel report Eventi?

autore: Marco Cilia categoria: generale tag: ,

Il report “nomi host” all’interno del gruppo di rapporti riguardanti gli eventi ha la medesima funzione del suo omonimo all’interno della sezione dei visitatori. Con un distinguo fondamentale, però.
I nomi host rilevati nella sezione visitatori sono relativi alle pagine del sito, e possono essere utili in caso di script che viene eseguito su più domini, o su sottodomini, per analizzarli separatamente. Oppure, come abbiamo visto in passato, per verificare che qualcuno non abbia copiato il nostro codice di monitoraggio e ci stia inquinando le statistiche.

I nomi host rilevati nella sezione eventi hanno lo stesso scopo, ovvero verificare e tracciare quale sia il nome dell’host (dominio o IP del server) dal quale gli eventi sono partiti. Lo scopo di debug in questo caso può essere trasformato in un vantaggio analitico: nello script per monitorare i video l’account al quale inviare i dati è un parametro che va scritto esplicitamente, ma nessuno ci vieta di scolpirlo – ad esempio – dentro al codice flash prima che sia compilato in un .swf. In quel modo tutti gli eventi scatenati da quell’oggetto verrebbero registrati dall’account scelto dall’autore, senza possibilità di intervento da parte degli utenti, e il report “nomi host” servirebbe appunto per scremare i vari domini ove questi eventi avvengono.

Se ancora non riuscite a visualizzare un uso possibile di questa cosa, forse non avete mai prodotto un banner in flash :)
Usando gli eventi e scolpendo il codice dentro al banner è possibile monitorare l’andamento del banner su tutti i siti dove esso è ospitato senza bisogno di chiedere al proprietario del sito l’accesso alle sue statistiche. Il mondo ha sempre bisogno di fiducia, ma difendersi dai furbi che gonfiano e sgonfiano le statistiche per il proprio interesse è sempre un’opzione valida.
Un uso analogo può essere di fare la stessa cosa dentro a un giochino in flash, che spesso viene copiato e spacciato su un altro sito come originale; usando gli eventi e i nomi host possiamo sapere esattamente chi (e quanto) sta usando il gioco che abbiamo sviluppato con fatica.


Jun 08 2009

Eventi per tutti, e allora traccia i tuoi video!

autore: Marco Cilia categoria: generale tag: , ,

Il 4 giugno Google ha reso disponibile a tutti gli account il tracciamento degli eventi; prima di allora l’attivazione era casuale e poteva capitare di avere il pannello dei report “monitoraggio eventi” in alcuni account e di non averlo in altri.

Il grande pregio degli eventi è quello di generare interazioni con l’utente che sono registrabili dentro a Google Analytics ma che non necessitano di pagine “virtuali” per essere conteggiate, e che quindi non alterano il totale di quel valore e i suoi derivati. Tramite gli eventi si possono monitorare fino a 500 azioni per sessione di visita e tipicamente queste azioni sono comportamenti degli utenti che avvengono su una stessa pagina, per cui non avrebbe senso creare della pagine finte. L’esempio più tipico è la visualizzazione di un video, che viene menzionato anche nel post sul blog ufficiale rimandando a questo articolo di Inside RIA

E allora traccia i tuoi video con videotracker di Goanalytics.info

Insieme a un amico abbiamo lavorato molto per realizzare un oggetto che fosse di facile utilizzo e permettesse a tutti di godere dei vantaggi del tracciamento degli eventi in Google Analytics: il risultato è visibile nella pagina apposita della nuova sezione di Download, che raccoglie tutto il materiale utile che metto e metterò a disposizione.

Sostanzialmente l’oggetto ha bisogno di due informazioni: a quale account inviare gli eventi e dove si trova il video da mostrare. La vera potenza, secondo me, è che gli si passa l’url di un video di Youtube lui lo mostra (e traccia) ugualmente! Certo non si possono avere gli stessi grafici di Youtube Insights o le informazioni demografiche, ma sino a quando non ci sarà l’integrazione YT-GA questo mi sembra un buon compromesso, pur senza avvicinarsi neppure lontanamente ad una qualche forma di video analytics.

L’oggetto è naturalmente alla release 1.0, ma sono benvenuti richieste e commenti. In un primo momento teneva traccia del secondo in cui avveniva qualsiasi cosa, ma mi sono preso reso conto che le informazioni erano sovrabbondanti e non davano nessun “di più” all’analisi. Ma se naturalmente hai un’idea per migliorarlo, dopo averlo provato, sei il benvenuto nei commenti della pagina!

Un’ultima cosa: come potete notare il progetto è donationware: il tempo che spendo io su questo blog è già ripagato in varie forme, ma per sviluppare questo oggetto (che è scritto in ActionScript di Flash, di cui non so praticamente niente) mi sono fatto aiutare da un amico. Ci lavoriamo da mesi nei ritagli di tempo, ma il fatto che siano ritagli non cambia la somma totale di tempo che gli abbiamo dedicato; in fondo alla pagina trovate un pulsante “donate” di Paypal, che è direttamente collegato all’account del mio amico, e che può servire a fargli capire se e quanto il suo lavoro è apprezzato :)

Traccia i tuoi video .flv e Youtube su Google Analytics! Istruzioni e download


Feb 01 2009

Tracciare link e download tramite gli eventi

autore: Marco Cilia categoria: javascript tag: , ,

Oggi voglio segnalarvi uno script che alcuni di voi potrebbero trovare utile, e che serve a tracciare i click sui link esterni e sui download tramite gli eventi di Google Analytics, anziché tramite il classico metodo delle “pagine virtuali”. E’ una tecnica descritta da Stephane Hamel sul blog immeria, e ve la posso presentare senza averla provata perché gli autori sono gli stessi dell’estensione WASP, per cui possiamo fidarci!

I click sui link esterni saranno tracciati con un evento di nome “outbound”, una action “click” e una label uguale all’url visitato. I download invece avranno un evento “download”, la stessa action “click” e una label uguale al nome del file scaricato. L’espressione regolare predefinita è questa
/\.(docx*|xlsx*|pptx*|exe|zip|pdf|xpi)$
e cerca sostanzialmente eseguibili, pdf, archivi zip, estensioni di Firefox e documenti Office 2007, ma siete ovviamente liberi di modificarla come più vi pare cercando nel file gaAddons.js la riga
var fileTypes = new RegExp(/\.(docx*|xlsx*|pptx*|exe|zip|pdf|xpi)$/i);
e modificandola in base ai tipi di file che il vostro sito propone agli utenti.

Per abilitare questo tracciamento è sufficiente scaricare il file gaAddons.js dal sito di immeria, caricarlo sul proprio server e aggiungere una riga al codice html delle pagine, prima della chiusura di BODY, non importa se prima o dopo la chiamata al GATC. La riga da aggiungere è
<script src="/js/gaAddons.js" type="text/javascript"></script>

nell’ipotesi in cui il file risieda nella sottocartella /js/, altrimenti dovrete indicare il percorso per trovare il file dello script.

E’ una soluzione che ritengo valida, ma che non implementerò a tappeto sui profili che gestisco, miei o dei clienti. Valuterò caso per caso se il beneficio ottenuto vale lo sforzo (sforzo di installazione, ma anche di manutenzione e di interpretazione dei report). Il criterio sul quale mi baserò è puramente numerico, infatti ritengo che questa implementazione tramite gli eventi porti benefici su siti con grandi numeri, dove il numero di click su link esterni e download è significativo e quindi il numero di pageviews virtuali ha un impatto di un certo tipo sui totali visualizzati da GA. Per siti di piccole dimensioni, al momento, non ritengo necessario l’uso degli eventi per questo tipo di monitoraggio, e resta sempre valido il sistema automatizzato realizzato da me e Francesco Terenzani


Dec 18 2008

Event Tracking e bounce rate

autore: Marco Cilia categoria: report tag: ,

Immeria riporta un’altra testimonianza del fatto che Google sta attivando le funzioni di tracciamento degli eventi progressivamente su tutti gli account, come vi dicevo nel post precedente.

In aggiunta a quanto vi ho riportato bisogna dire che il numero di eventi registrabili è limitato a 500 per ogni sessione di visita. Se tramite gli eventi tracciate l’uso di un video probabilmente non avrete problemi, per altri usi più particolari potrebbe rappresentare un ostacolo ed è una cosa di cui tenere conto.
Inoltre se un evento viene creato e inviato ai server collettori durante la visione della prima pagina di una visita, quella visita non verrà mai conteggiata come un bounce anche se poi la visita si concluderà. In sostanza una visita di una sola pagina vista, se contiene un evento tracciato, non è più un bounce.


Dec 14 2008

funzioni: _trackEvent()

autore: Marco Cilia categoria: funzioni tag: , ,

La funzione di tracciamento degli eventi è una conseguenza della riscrittura a oggetti del codice di tracciamento di Analytics, come dicevo nel post precedente. Javascript infatti è un linguaggio orientato agli oggetti, e senza entrare in dettagli troppo tecnici diremo che questo tipo di paradigma della programmazione comporta alcuni indubbi vantaggi che gli ingegneri di Google hanno ritenuto utile implementare nel GATC.

Un evento, secondo la definizione (bozza del 22/9/2008) della Web Analytics Association, è una qualsiasi azione registrata che ha un timestamp attribuito dal browser o dal server; sono esempi di azioni il display di un banner o l’invio di una richiesta asincrona tramite AJAX in una porzione di pagina web.
La funzione che Google Analytics usa per tenere traccia degli eventi è _trackEvent(categoria, azione, descrizione, valore).
I valori passati come parametro a questa funzione sono:

  • categoria [obbligatorio]: è una stringa che identifica il “gruppo” di eventi cui l’azione appartiene. Poiché possono coesistere più eventi nella stessa pagina è un parametro che non può essere omesso.
  • azione [obbligatorio]: è una stringa che identifica l’azione svolta dall’utente e strettamente correlata alla categoria. Anche in questo caso è un parametro che non può mancare.
  • descrizione [facoltativa]: è una stringa che si può usare per aggiungere ulteriori informazioni all’evento. Nel caso di eventi complessi o presenza di molti eventi contemporanei può essere utile per districarsi nella lettura dei report.
  • valore [facoltativo]: è un numero intero che si può indicare per associare un valore all’evento.

Un esempio tipico di tracciamento degli eventi è un video comandato via javascript da pulsanti personalizzati. Il pulsante play potrebbe avere questo codice assegnato:
<a href="#" onClick="pageTracker._trackEvent("Video", "Play", "video-compleanno-2008", 0);">Play</a>

Analogamente si potrebbero passare a Google Analytics anche i valori di pause e stop, magari dopo aver scritto un paio di funzioni javascript per razionalizzare e ottimizzare il codice, e poi leggere nella sezione eventi dei report i risultati. La sezione eventi non è ancora stata ufficializzata, ma in un profilo in cui ho fatto alcune prove essa è comparsa da sola. Probabilmente viene attivata quando iniziano ad arrivare i primi dati sotto forma di eventi.

Il vantaggio del tracciamento eventi è che non si ricorre al metodo delle pagine virtuali di _trackPageview(), e che quindi non si inflaziona il relativo conteggio. Tramite gli eventi, con un po’ di lavoro, è anche possibile monitorare in forma più estesa i donwload di materiali e documenti dal sito.