en SEO y Analítica

Tests A/B con Google Analytics y Custom Variables

A pesar de que Google tiene una herramienta para realizar test A/B y test multivariable muy potente, hay veces que no se puede usar por algunas limitaciones.

En nuestro caso queríamos realizar test A/B sobre los comparadores de vuelos y hoteles. Estas dos secciones de la web tiene una gran cantidad de JavaScript, post, redirecciones… que no permitían hacer funcionar correctamente los test A/B predefinidos. Además, queríamos mostrárselo solo a una pequeña cantidad de usuarios de nuestra web (supongamos el 10%). Para estos casos la solución más sencilla es utilizar las variables personalizadas de Analytics (Custom Variables).

Las variables personalizadas permiten fijar valores a los usuarios, a las sesiones (navegación por la web) y a las páginas (muy similares a los eventos).

Vamos a fijarnos en el caso concreto del nuevo interfaz del buscador de vuelos. Las variables que nos interesa medir es el porcentaje de clickouts y el número de búsquedas por usuario. La nueva versión se mostrará a un 10% de los usuarios de la web y queremos mantener la coherencia de diseño, de forma que si a un usuario le mostramos un interfaz, siga viéndolo hasta que el test finalice y se descarte, o hasta que los resultados revelen que es el momento de lanzar el nuevo interfaz.

La decisión de que resultados se mostrarán se tomará del lado del servidor, y se guardará en una cookie. A continuación un ejemplo en PHP.

if($_COOKIE['test_vuelos']!=1&&$_COOKIE['test_vuelos']!=2){
$tester = (floor(rand(0,10))==0);
setcookie('test_vuelos',$tester?2:1 , time() + (30 * 86400) );

}

A la hora de decidir mostrar una opción de búsqueda o otra solo tendremos que fijarnos en el valor de la cookie “test_vuelos”, para el 10% de 2 mostraremos la opción de prueba, el otro 90% seguirá viendo el buscador antiguo, pero analizaremos sus datos también para comprobar que el test se desarrolla correctamente.

Ahora identificaremos a los usuarios de ambos test mediante la función _setCustomVar de Analytics. Esta función recibe 4 parametros, el primero es un valor de 1 a 5 que se corresponde con el “slot” de la variable. Tenemos 5 slot disponibles identificados con los números de 1 a 5 (no comienza en 0). Usaremos un slot para cada test que realicemos, por lo que podremos realizar 5 test simultáneos por dominio. El segundo parametro se corresponde con el nombre de la variable, el tercero es el valor que toma la variable (en nuestro caso el número que identifica la versión que se le muestra), y el cuarto identifica el tipo de variable (1=usuario,2=sesión y 3=página).

Para identificar la sesión ejecutaremos el siguiente javascript

_gaq.push(['_setCustomVar',1, 'AB_vuelos', '1',1]);

o en caso de tener el tracking antiguo de google analytics

pageTracker._setCustomVar(1, "AB_vuelos", '1', 1);
pageTracker._trackPageview(); //Esta linea solo en caso de que ya hayamos lanzado el evento trackpageview de analytics

Donde 1 es el slot, “AB_vuelos” es el nombre de la variable, ‘1’ es el valor que toma la variable, será ‘2’ en el caso del 10% al que se muestra el test, y el último 1 indica que se trata de una variable de usuario, por lo que se mantendrá entre sesiones a no ser que la cambiemos.

Ahora que tenemos identificados a los usuarios queremos saber cuando hacen una búsqueda, así que, al lanzar la búsqueda, insertamos una customvar de página indicando que se ha realizado la búsqueda. Al igual que en el caso anterior deberemos de cambiar el 3º parámetro e insertar un 2 en caso de ser un usuario de pruebas.

_gaq.push(['_setCustomVar',1, 'busqueda', '1',3]);

o en caso de tener el tracking antiguo de google analytics

pageTracker._setCustomVar(1, "busqueda", '1',3);
pageTracker._trackPageview(); //Esta linea solo en caso de que ya  hayamos lanzado el evento trackpageview de analytics

Ahora ya sabemos el número de usuarios a los que se ha mostrado cada búsqueda y el número de búsquedas que ha hecho el usuario. Lo siguiente que queremos analizar es el número de clickouts que realizan para obtener porcentajes de conversión.Para ello debemos guardar el número de clicks realizados en los enlaces externos. Con otro evento onclick igual que el anterior lo tenemos solucionado.

_gaq.push(['_setCustomVar',1, 'clickout', '1',3]);

o en caso de tener el tracking antiguo de google analytics

pageTracker._setCustomVar(1, "clickout", '1',3);
pageTracker._trackPageview(); //Esta linea solo en caso de que ya   hayamos lanzado el evento trackpageview de analytics

Ahora solo nos queda esperar a generar un número significativo de conversiones y compara los ratios usuarios-búsquedas, usuarios-clickouts, y búsquedas-clickouts. Para hacerlo más facilmente podemos crearnos un segmento avanzado de Analytics que sólo incluya las variables personalizadas del slot 1.

Escribe un comentario

Comentario