Grupos de control
Deja sin marketing a una parte de tu audiencia durante un periodo y mide lo que vale de verdad tu programa de correo
Un grupo de control aparta un porcentaje de tus contactos y no les envía nada de marketing durante un periodo determinado. Al final, Bitelio compara lo que gastó ese grupo con lo que gastó el resto. La diferencia es lo que valió tu programa de correo.
Es una pregunta distinta de la que responde un experimento. Un experimento pregunta qué versión de un mensaje gana. Un grupo de control pregunta si enviar supera a no enviar — algo que ninguna tasa de apertura, tasa de clics ni ingreso atribuido puede decirte, porque las tres solo miran a quienes recibieron algo.
Lo que cuesta
Un grupo de control no es gratis, y no debe serlo. Si tu correo funciona, el grupo retenido compra menos, y esa diferencia son ingresos reales a los que renuncias para averiguar cuánto valen.
Ese es el trato completo. Un 10% retenido durante un mes te dice lo que te está ganando el 90% restante, al precio de un mes de una décima parte del programa. Bitelio muestra el coste al lado del botón, no detrás, para que la decisión se tome con el número a la vista.
El porcentaje está entre el 1% y el 50%, y no se puede cambiar una vez iniciado: moverlo a mitad de periodo movería contactos entre los dos grupos y destruiría la comparación. Por encima de la mitad, el «control» es casi toda tu lista: a esas alturas no estás midiendo tu programa, lo has pausado.
Qué se retiene y qué no
Se retiene: las campañas y los correos de flujos de trabajo, es decir, el marketing.
Nunca se retiene:
- El correo transaccional. Los restablecimientos de contraseña, los recibos, las confirmaciones de pedido y cualquier otro envío hecho a través de
/v1/sendllegan a los contactos retenidos exactamente igual que siempre. - Los temas obligatorios. Un tema que marcaste como obligatorio ya se salta la comprobación de consentimiento porque declaraste que es operativamente necesario. El mismo razonamiento lo exime aquí.
Un contacto del grupo retenido no queda suprimido, ni dado de baja, ni modificado de ninguna forma. Simplemente no recibe marketing hasta que acaba el periodo. Nada de su ficha cambia y no hay nada que deshacer después.
Qué contactos caen en el grupo retenido lo decide un hash de su id, así que nunca cambia. Un envío reintentado tras una interrupción coloca a la misma persona en el mismo lado en lugar de contarla en los dos.
Cuándo aparece el resultado
Al final, y no antes.
No es una limitación pendiente de levantar. Un dato disponible a mitad de camino invita a terminar la prueba justo cuando pinta bien, y un grupo de control terminado porque el número pintaba bien es un grupo de control cuyo número no significa nada. Mientras corre, Bitelio te enseña lo que está costando — cuántos correos de marketing se han retenido hasta ahora — y nada más. El resultado todavía no existe, así que no hay nada que enseñar.
Puedes cancelar un grupo de control en marcha en cualquier momento. Todo el mundo vuelve a recibir marketing de inmediato y no se registra ningún resultado: un periodo interrumpido no ha medido nada, y dar una cifra sacada de él sería el mismo fallo con otro disfraz.
Cómo leer el resultado
El resultado se lee en tres cifras:
Los contactos que recibieron tu correo gastaron 4,10 € cada uno. Los que no lo recibieron gastaron 3,20 €. Enviar valió unos 0,90 € por contacto, con un 93% de probabilidad de que superara a no enviar nada.
Las dos primeras son hechos: lo que gastó realmente cada grupo, dividido entre cuánta gente había en él. La tercera es una estimación y, deliberadamente, no es la resta de las otras dos — Bitelio la acerca al «sin diferencia» para que un puñado de pedidos inusualmente grandes no fabrique una victoria. Suele quedar algo por debajo de lo que sugiere la aritmética, y esa distancia es justo el punto.
El porcentaje es la probabilidad de que enviar superara de verdad a no enviar, dado lo observado. No es una promesa: es cuánta confianza tiene la comparación.
«No se ha detectado ninguna diferencia» no es «el correo no funciona»
A veces la respuesta es que no se pudo distinguir ninguna diferencia. Eso significa que el efecto, si lo hubo, fue menor de lo que esta audiencia podía separar del ruido en este periodo. No significa que el efecto fuera cero.
Bitelio lo dice así en lugar de informar de una mejora de 0,00 €, porque una mejora de cero se lee como «el correo no vale nada», una afirmación mucho más fuerte de lo que sostienen los datos. Si te sale este resultado, un periodo más largo o más envíos dentro de él le dan más que medir al siguiente.
Qué mide
Un grupo de control solo puede comparar un resultado. El grupo retenido no tiene aperturas ni clics, por construcción: no hay nada que comparar salvo lo que la gente hizo de verdad. Hay dos tipos de resultado que puede leer, y eliges uno al iniciarlo.
Pedidos de Shopify, que es lo que un grupo de control ha medido siempre y lo que sigue midiendo si no eliges otra cosa.
Un objetivo de conversión, si has definido alguno. Así es como un proyecto que no vende por Shopify puede medir su programa: el evento que cuentes como resultado —un alta, una reserva, tu propio evento purchase— pasa a ser aquello sobre lo que se comparan los dos grupos.
La elección es fija durante toda la vida del grupo de control. Cambiar lo que se mide a mitad de camino haría que las dos mitades de la comparación respondieran a preguntas distintas.
Un grupo de control cuenta eventos, no conversiones atribuidas
Esto es lo único que conviene entender bien, porque parece una incoherencia y no lo es.
En el resto del producto, un objetivo de conversión informa de las conversiones atribuidas: aquellas que Bitelio pudo rastrear hasta un email en el que el contacto hizo clic o que abrió. Un grupo de control hace lo contrario. Cuenta todos los eventos de ese objetivo, de todos los contactos, hubiera o no un email de por medio.
No le queda otra. El grupo retenido no recibe ningún email, así que no tiene nada atribuido: su total atribuido es cero antes incluso de que empiece el periodo. Compararlo con el grupo enviado no mediría tu email, mediría la definición de los dos grupos, y daría un «lift» igual a lo que ganara el grupo enviado.
Así que los dos informes no van a coincidir, y no deben. El informe de la campaña responde a qué email se llevó el crédito. El grupo de control responde a si enviar sirvió de algo.
Dos diferencias menores
Los ingresos de un grupo de control sobre objetivo son brutos. Los eventos no tienen concepto de devolución —una conversión es definitiva una vez registrada— mientras que uno sobre Shopify resta los reembolsos de cada pedido.
Los ingresos cuentan solo la moneda por defecto del objetivo. Las conversiones registradas en otra moneda quedan fuera de la medición por completo, y el resultado dice cuántas fueron. Bitelio no conoce tus tipos de cambio, y un total convertido sería una cifra sin ninguna fecha defendible detrás — pero contarlas como conversiones de valor cero sería peor que dejarlas fuera, porque le estaría diciendo a la estadística que alguien convirtió y no pagó nada.
Qué más necesitas
Solo puede haber un grupo de control a la vez por proyecto. Dos exclusiones solapadas se contaminan entre sí: parte del control del primero cae dentro del tratamiento del segundo, y después ninguna de las dos mediciones significa nada.
Iniciar y cancelar requieren el permiso settings:manage, no un permiso de campañas: un grupo de control deja deliberadamente sin marketing a parte de tu audiencia durante semanas, y eso es una decisión de proyecto. Leer el resultado requiere analytics:view.
Referencia de la API
POST /holdouts— inicia un grupo de control. Cuerpo:{ pct, endsAt, goalId? }. Requieresettings:manage. OmitegoalIdpara medir pedidos de Shopify. Se rechaza si ya hay uno en marcha, si la fecha de fin no está en el futuro, sigoalIdnombra un objetivo que no es tuyo, o si ni un objetivo ni una tienda conectada le dan nada que medir.GET /holdouts— el grupo de control actual y todos los concluidos antes, del más reciente al más antiguo. Requiereanalytics:view. Un grupo de control todavía en marcha no lleva ningún campo de resultado: se eliminan de la respuesta, no es que el panel los esconda.POST /holdouts/:id/cancel— detiene un grupo de control en marcha y libera al grupo. Requieresettings:manage. No registra ningún resultado.