Preguntas Frecuentes

⌘K
  1. Preguntas Frecuentes
  2. Onboarding de Publishers
  3. Guía de Implementación: Tests A/B

Guía de Implementación: Tests A/B

Configura fácilmente una prueba A/B entre el Single Tag de Refinery89 y una etiqueta de terceros. Esta guía proporciona un script para ejecutar pruebas A/B en tu sitio web. Este script garantiza que, una vez que un visitante se asigne a Refinery89 o a la solución de otro proveedor, se asignará de forma consistente a la misma solución durante toda la duración de la prueba (30 días por defecto).

 

1. Implementación del Script

Copia y pega el siguiente bloque de código en el de tu sitio web, lo más arriba posible, para garantizar que el ad stack se inicializa antes que otros elementos de la página.

 

<script>
/* A/B testing script - loads either Refinery89 or competitor script
Edit the 4 variables below and paste this in your site's head*/
(function () {
// ===== CONFIGURATION =====
var R89_SCRIPT_URL = "https://tags.refinery89.com/yoursite.js";
var OTHER_SCRIPT_URL = "https://example.com/other-script.js"; // Replace with competitor URL
var COOKIE_DAYS = 30; // Days to keep user in same variant
var SPLIT = 0.5; // Percentage for R89 (0.5 = 50% each)

// ===== DO NOT EDIT BELOW =====
function _ab_getCookie(n) {
var m = document.cookie.match(new RegExp("(?:^|; )" + n + "=([^;]*)"));
return m ? decodeURIComponent(m[1]) : null;
}
function _ab_setCookie(n, v, d) {
var e = new Date(Date.now() + d * 864e5);
var f = "; SameSite=Lax" + (location.protocol === "https:" ? "; Secure" : "");
document.cookie = n + "=" + v + "; expires=" + e.toUTCString() + "; path=/" + f;
}

var _ab_v = _ab_getCookie("ab_variant"), _ab_e = _ab_getCookie("ab_exp");
var _ab_url = new URLSearchParams(location.search).get("ab_variant");
if (_ab_url === "r89" || _ab_url === "other") _ab_v = _ab_url;

if (!_ab_v || !_ab_e || Date.now() > parseInt(_ab_e)) {
_ab_v = Math.random() < SPLIT ? "r89" : "other";
_ab_setCookie("ab_variant", _ab_v, COOKIE_DAYS);
_ab_setCookie("ab_exp", String(Date.now() + COOKIE_DAYS * 864e5), COOKIE_DAYS);
}

if (document.querySelector('[data-ab-test]')) return;

var _ab_s = document.createElement("script");
_ab_s.async = true;
_ab_s.src = _ab_v === "r89" ? R89_SCRIPT_URL : OTHER_SCRIPT_URL;
_ab_s.setAttribute("data-ab-test", "true");
(document.head || document.getElementsByTagName("head")[0]).appendChild(_ab_s);

window.__AB_VARIANT__ = _ab_v;
})();
</script>
Por favor, recuerda cambiar la etiqueta de Refinery89 para cada sitio.

 

Este script garantiza la persistencia a nivel de usuario mediante cookies, evitando que se cambie de proveedor durante una sesión. Esto se traduce en datos de rendimiento más limpios y en mayores ingresos al mantener un entorno de monetización estable para cada visitante.

La metodología se aplica de la siguiente manera:

El usuario A se monetiza de forma aleatoria con el proveedor A o B

Ejemplo 1: división 50/50

var SPLIT = 0.5; // 50% R89 / 50% alternative 
  • El tráfico se distribuye de forma equitativa entre Refinery89 y la configuración alternativa.
  • Recomendado para pruebas A/B equilibradas y una comparación clara del rendimiento.

 

Ejemplo 2: división 70/30

var SPLIT = 0.7; // 70% R89 / 30% alternative 
      • La mayor parte del tráfico se dirige a Refinery89.
      • Útil para despliegues controlados o pruebas de menor riesgo.

 

Durante toda la sesión, el usuario será monetizado a través de la misma solución

 

2. Referencia de Configuración

Variable Descripción Predeterminado / Ejemplo
R89_SCRIPT_URL La etiqueta única de Refinery89 para tu sitio específico. https://tags.refinery89.com/yourdomain.js
OTHER_SCRIPT_URL La URL de la etiqueta del proveedor o solución de terceros que se está probando. https://competitor.com/tag.js
COOKIE_DAYS Cuánto tiempo el usuario permanece asignado a un grupo (A o B) 30 (Recomendado)
SPLIT Decimal que representa la probabilidad de cargar Refinery89 0.5 (División 50%)