Cuando uses AB tests, recuerda que la variable sobre la que estás corriendo el AB test, puede estar siendo usada de diferentes maneras, quizás para un mismo usuario. Por ejemplo, el mismo servicio que provees para generar una página puede estar proveyendo información para ser enviada por mail. Al estar involucrada una aplicación que es batch (es decir que no tiene acceso a las cookies de navegación del usuario), no podemos establecer qué AB tiene seleccionado el usuario y por lo tanto no podemos ser coherentes (las cookies son uno de los métodos más usados y difundidos para persistir los resultados del sorteo de un AB test para un usuario).
Esta incoherencia se puede dar hoy en día con mucha más facilidad ya que un usuario tiene varios dispositivos a su disposición, por lo que podría estar viendo la misma página en su celular, su tablet y su pc al mismo tiempo. Esto podría generar que le presentemos diferentes "experiencias" por cada dispositivo (ya que en cada dispositivo tendría un valor de cookie diferente).
Esto en algunos casos no es de gran importancia. Por ejemplo si estás cambiando cómo se ve el descuento de esto: a esto: quizás no haga gran diferencia para el usuario. En el peor de los casos tu cliente pensará que son dos formas diferentes de mostrarlo, pero al menos vería consistencia en la cantidad del descuento.
Pero hay otros AB más extraños, quizás no tan éticos (pero no voy a ponerme a debatir esto, ya que sólo quiero ejemplificar para ayudar a entender mi punto). Por ejemplo, qué sucedería si quisiéramos probar si conviene inventar un porcentaje mayor de descuento y ver si eso conviene a no inventar ese porcentaje de descuento (siempre sin cambiar el valor final). Déjenme explicarlo mejor:
Tenemos un producto que cuesta $1080 finales luego de aplicar un descuento del 10% (es decir que antes costaba $1200). Queremos seguir vendiendo el producto a $1080, pero queremos ver si conviene poner un mayor descuento, digamos un 20%, diciendo que el precio original era $1350 (es decir que estamos "mintiendo" sobre cuál era el precio anterior). Para ver si conviene mentir sobre el precio anterior o no, decidimos correr un AB test.
Acá es donde encuentro algunas fallas en la solución usando cookies. Qué pasaría si el usuario abre tu página y ve un descuento del 20% sobre el producto que había estado observando la semana pasada? Quizás note que el precio pasó de $1200 a $1350 y tal vez lo atribuya al aumento de precios, pero y si luego lo ve en su celular y el AB sorteado es el otro? Ahora estaría viendo 2 veces la misma página con 2 precios finales diferentes. Tu usuario sabrá que tus precios no son confiables.
Quizás el resultado de nuestro AB termine dando un ganador y probablemente el porcentaje de usuarios que detecte esta artimaña sean pocos, pero qué vale más? Conocer que conviene más mentirle al usuario porque se termina ganando más plata? o acaso será más perjudicial perder usuarios y el efecto que estos podrían generar a la fidelidad de los demás usuarios? No hay que menospreciar el poder de las redes sociales, ya que hoy en día un usuario descontento podría afectar seriamente la confianza que se tiene de nuestra compañía. Lo malo en este caso, es que dentro de las variables que se evalúan para determinar un ganador del test, no se incluyó la confianza o la percepción de nuestra compañía (en caso que esta pudiera evaluarse de forma confiable).
Conclusiones
Si bien los AB tests son una herramienta muy valiosa a la hora de evaluar alternativas, tenemos que ser cuidadosos a la hora de elegir qué vamos a probar, ya que una decisión descuidada (por no llamarla mala decisión), podría afectar de manera negativa otras variables que no están en consideración dentro del test (efectos colaterales o bien podríamos llamarlo daño colateral). El problema creo que es tomar los AB test como la herramienta "de facto" para decidir entre 2 posibilidades. Para evitar estos casos, la recomendación es no tomarse a la ligera lo que se está queriendo evaluar y analizar posibles riesgos del test, entonces si decidir si es conveniente usar un AB tradicional o no.
Otra opción es no usar cookies para correr AB tests y usar alguna otra característica del usuario que sea cross device, pero esto podría tener otro costo y quizás no valga la pena.