Pruebas A/B en el edge para SEO
Cómo ejecutar pruebas A/B y multivariantes en la CDN o el edge con Cloudflare Workers, Akamai, Fastly, Optimizely o VWO sin introducir cloaking, duplicados ni desperdicio de rastreo.
Idiomas
Las pruebas A/B en el edge sirven variantes HTML o redirecciones desde la CDN antes de llegar al origen. Al entregar HTML de servidor, evitan parte de la incertidumbre del testing basado en JavaScript, pero introducen riesgos propios: asignaciones inestables cuando Googlebot no conserva cookies, señales canonical contradictorias si existen URL de variante y multiplicación de URL rastreables en pruebas multivariantes. Google admite experimentar, no hacer cloaking. Mantén determinista el tráfico sin cookie y de bots, apunta las URL alternativas al control con canonical, utiliza 302 y no 301 mientras la prueba sea temporal y retírala al elegir ganador. Detectar bots por user-agent solo es aceptable si el control mostrado es realmente el contenido que pretendes indexar.
TL;DR — El Edge A/B testing consiste en ejecutar un split test en su CDN —la red que está delante de su sitio— en lugar de hacerlo en el navegador o en su propio servidor. Un pequeño script en el edge decide qué versión de una página recibe cada visitante, antes de que la página le llegue. Para el SEO eso es en realidad una buena noticia: Google ve HTML real, no un cambio hecho con JavaScript. Lo único que hay que hacer bien es la consistencia: no permita que Google vea una versión distinta de la que ven sus usuarios y no deje el test funcionando de forma indefinida. Hacer tests está bien; mostrarle a Google algo distinto de lo que se muestra a las personas es cloaking, y eso va contra las normas.
Qué es el Edge A/B testing
El Edge A/B testing asigna y modifica variantes en la capa de entrega en lugar de exigir que la aplicación de origen renderice cada variación. Evidence for this claim Cloudflare Workers can execute code and modify requests or responses at the network edge. Scope: Cloudflare Workers; other edge platforms have different runtimes and controls. Confidence: high · Verified: Cloudflare: Workers overview Google permite hacer tests en sitios web, pero advierte contra el cloaking y recomienda experimentos temporales y controlados. Evidence for this claim Google permits website testing, warns against cloaking, and recommends appropriate canonicals or temporary redirects and limited test duration. Scope: Google Search guidance for website testing; it applies regardless of whether assignment occurs at the edge or origin. Confidence: high · Verified: Google: Website testing and Search
Un test A/B muestra a unos visitantes la versión A de una página y a otros la versión B, de modo que se pueda medir cuál rinde mejor. El A/B testing en el edge simplemente significa que la elección de qué versión mostrar ocurre en su CDN (Cloudflare, Akamai, Fastly o una herramienta como Optimizely o VWO ejecutándose en el edge) y no en el navegador del visitante ni en su propio servidor web.
Un test puede ejecutarse en tres lugares, y eso importa mucho para el SEO:
- Del lado del cliente (client-side) — JavaScript en el navegador cambia el contenido después de que carga la página. Es rápido de montar, pero puede que Google no vea nunca el cambio, porque no siempre espera al JavaScript tardío.
- Del lado del servidor de origen (origin server-side) — su servidor de aplicación construye la versión elegida y la envía como HTML real.
- En el edge — la CDN construye o reescribe la versión elegida como HTML real, antes de que la petición llegue siquiera a su servidor. El mismo beneficio para el SEO que del lado del servidor (Google recibe HTML real), además de ser más rápido y no necesitar un despliegue de código.
Por qué el edge es un lugar más seguro para hacer tests (para el SEO)
La gran ventaja: como el edge envía HTML real, los motores de búsqueda y los usuarios reciben el mismo tipo de página. Eso evita el mayor problema de los tests del lado del cliente, en los que Google puede no ver en absoluto la versión probada.
La única regla: no le muestre a Google algo distinto de lo que ven las personas
A Google le parece perfectamente bien el testing A/B: lo dice en su propia documentación. Lo que no le parece bien es el cloaking: mostrar deliberadamente a los motores de búsqueda un contenido distinto del que se muestra a los usuarios reales para manipular los rankings. Todo el truco de un test en el edge seguro está en asegurarse de que Googlebot vea una versión legítima y consistente de la página —el mismo tipo de página que podría recibir cualquier usuario real— y no una “versión para bots” especial.
Dos cosas pueden romper esa regla accidentalmente en el edge:
- Las cookies. La mayoría de los tests en el edge recuerdan con una cookie la versión asignada a un visitante. Googlebot por lo general no conserva cookies, así que puede ser reasignado aleatoriamente a una versión distinta cada vez que visita la página. Eso no es que usted esté intentando hacer trampa, pero aun así puede resultarle confuso a Google.
- Redirecciones a una segunda URL. Si su test envía a los visitantes a una URL ligeramente
distinta (como
?variant=b), Google podría tratarla como una página aparte e indexar ambas.
Ambas cosas tienen solución, y la pestaña Avanzado explica exactamente cómo, además de cuánto tiempo se puede mantener un test con seguridad y de si “limitarse a dar a los bots la versión normal” es un atajo inteligente o una trampa.
TL;DR — El Edge A/B testing sirve HTML de variantes o redirecciones desde la capa de workers de la CDN antes de que el origen llegue a ver la petición. Como los motores reciben HTML real (y no un cambio hecho con JS en el cliente), es el lugar más seguro para hacer tests, pero tiene una superficie de riesgo propia del edge. Divídalo en dos patrones: reescrituras de HTML en la misma URL (riesgo: Googlebot por lo general no conserva cookies, así que el bucketing por cookie puede mostrarle una variante aleatoria nueva en cada rastreo) y redirecciones a una URL de variante (riesgo: contenido duplicado y confusión de canónicas). Soluciones: haga que el tráfico de bots o sin cookie sea determinista, apunte con
rel=canonicalde la variante al control, use un 302 y no un 301 mientras esté activo, y desmonte el test en cuanto tenga un ganador. La línea de Google es “hacer tests está bien, el cloaking no”, y el cloaking tiene que ver con la intención y la asimetría, no con que “un bot haya visto una vez la variante B”. Aquí solo trataría brevemente qué es el edge SEO: el artículo general sobre edge SEO de este clúster se ocupa del recorrido por las plataformas; este artículo trata de los riesgos específicos de hacer tests.
Qué es lo que realmente cambia al hacer tests en el edge
Un worker en el edge puede enrutar o transformar una respuesta cerca del visitante, lo que cambia dónde ocurre la asignación pero no la lógica experimental subyacente. Evidence for this claim Cloudflare Workers can execute code and modify requests or responses at the network edge. Scope: Cloudflare Workers; other edge platforms have different runtimes and controls. Confidence: high · Verified: Cloudflare: Workers overview La seguridad de cara a los buscadores depende de servir variantes de test legítimas de forma consistente, y no de dirigir contenido sustancialmente distinto a los rastreadores de los buscadores. Evidence for this claim Google permits website testing, warns against cloaking, and recommends appropriate canonicals or temporary redirects and limited test duration. Scope: Google Search guidance for website testing; it applies regardless of whether assignment occurs at the edge or origin. Confidence: high · Verified: Google: Website testing and Search
El Edge A/B testing es un caso de uso del edge SEO: el bucketing y la reescritura del HTML (o la redirección) se hacen en un worker de la CDN —Cloudflare Workers, Akamai EdgeWorkers/EdgeKV, Fastly Compute o las integraciones en el edge o del lado del servidor de Optimizely y VWO— antes de que la petición llegue al origen. SearchPilot describe el SEO en el edge como “any SEO changes that are made after the HTML is created by your CMS or origin server before it is served to the user,” (traducción) «cualquier cambio de SEO que se hace después de que el HTML lo haya creado su CMS o servidor de origen y antes de que se sirva al usuario», y añade el punto clave para nosotros: “They appear to all users and googlebot as server side HTML changes, so there are no risks or downsides from an indexation point of view.” (traducción) «Aparecen ante todos los usuarios y ante Googlebot como cambios de HTML del lado del servidor, así que no hay riesgos ni inconvenientes desde el punto de vista de la indexación». Esa es la ventaja de partida: el edge es un lugar seguro para hacer tests porque los motores reciben HTML real, igual que del lado del origen.
Entonces, ¿por qué existe este artículo si el edge es seguro? Porque dónde se hace el test es seguro; cómo se hace el bucketing en el edge es donde viven las trampas específicas de SEO. Dos de ellas son casi exclusivas de este patrón, y los artículos genéricos sobre “testing A/B y SEO” pasan por alto ambas.
La postura real de Google: hacer tests está bien, el cloaking no
Digámoslo claramente, porque la mitad del miedo que rodea a los tests de SEO está fuera de lugar. Google apoya explícitamente los tests A/B y multivariante y publica buenas prácticas para ellos. La línea que traza es el cloaking, que su política de spam define como “presenting different content to users and search engines with the intent to manipulate search rankings and mislead users.” (traducción) «presentar contenido distinto a los usuarios y a los motores de búsqueda con la intención de manipular los rankings de búsqueda y engañar a los usuarios». Fíjese en la intención de manipular y en la asimetría entre usuarios y motores, no en que “un bot haya visto alguna vez una variante”. Optimizely parafrasea lo mismo para sus propios clientes: “Google encourages constructive testing and does not view the ethical use of testing tools such as Optimize to constitute cloaking.” (traducción) «Google fomenta los tests constructivos y no considera que el uso ético de herramientas de testing como Optimize constituya cloaking».
La línea práctica y clara que da Google en su documentación sobre testing es contundente: “Don’t show one set of URLs to Googlebot, and a different set to humans.” (traducción) «No muestres un conjunto de URLs a Googlebot y otro distinto a las personas». Si su test en el edge respeta eso —todos, bots incluidos, pueden recibir las mismas variantes legítimas, servidas de forma consistente—, está del lado correcto de la política.
Los dos patrones de testing en el edge (y sus distintos riesgos)
Manténgalos separados mentalmente, porque fallan de forma distinta y se arreglan de forma distinta.
Patrón 1 — HTML reescrito en el edge en la misma URL
El worker mantiene la misma URL (/product/123) y cambia un titular, un CTA, un formato de
visualización de precio: el HTML Rewriter reescribe la respuesta al vuelo. Este es el modelo de
«pruebas A/B con acceso directo a la misma URL» de Cloudflare Workers que, como dice su documentación,
“Choose a group and set the cookie (50/50 split)” (traducción) «Elige un grupo y establece la cookie (reparto 50/50)» para un visitante nuevo.
El riesgo específico del edge: las cookies. Google lo dice directamente: “Googlebot generally doesn’t support cookies. This means it will only see the content version that’s accessible to users with browsers that don’t accept cookies.” (traducción) «Googlebot por lo general no admite cookies. Esto significa que solo verá la versión del contenido que es accesible para los usuarios con navegadores que no aceptan cookies». Casi todas las implementaciones en el edge guardan el bucket en una cookie para que una persona que vuelve siga en el mismo grupo (el ejemplo con EdgeKV de Akamai hace exactamente esto: “Client bucket selection will be persistent via a cookie value to ensure a client is locked to the same URL on subsequent visits” (traducción) «La selección del bucket del cliente será persistente mediante el valor de una cookie para asegurar que un cliente quede fijado a la misma URL en visitas posteriores»). Pero Googlebot no lleva esa cookie, así que en cada rastreo puede volver a entrar en el sorteo y caer en un bucket distinto al de la vez anterior. Eso no es cloaking engañoso, pero significa que Google puede indexar con el tiempo una versión fluctuante e inconsistente de la misma URL. Es el primo sutil y nativo del edge del clásico problema de “mostramos deliberadamente algo distinto a los bots”, y es lo más importante que este artículo existe para explicar.
Patrón 2 — una redirección en el edge a una URL de variante
Aquí el worker redirige con un 302 /product/123 a una URL distinta: /product/123?v=b o
/product/123-b. Ahora tiene una URL genuinamente diferente que los motores pueden descubrir e
indexar por sí sola.
El riesgo específico del edge: contenido duplicado y confusión de canónicas. Si Google indexa la URL de variante como una página propia, ha dividido las señales y posiblemente ha creado un duplicado.
Cómo arreglar el Patrón 1: haga que los rastreadores sean deterministas
La solución no es “detectar al bot y ocultar el test”. Es: no deje que las peticiones sin cookie reciban una tirada aleatoria. Reparta a las personas por cookie si quiere, pero para cualquier petición sin cookie —lo que incluye a Googlebot— resuelva la variante de forma determinista: aplique un hash a la URL, fíjela mediante una clave estable o, simplemente, sirva siempre el control. La idea es que la misma URL siempre produzca la misma variante para cualquier cliente sin cookie, de modo que Google vea una página estable en cada rastreo en vez de un lanzamiento de moneda.
Cloudflare documenta un mecanismo útil para esto: “Enable Passthrough to allow direct
access to control and test routes.” (traducción) «Habilita Passthrough para permitir el acceso
directo a las rutas de control y de test». Passthrough permite que cualquiera —bots, QA,
responsables implicados— llegue de forma consistente a /control/* o /test/* en vez de ser
rerandomizado en cada petición sin cookie. Esa es la palanca documentada oficialmente para dar a
los rastreadores una variante consistente sin inventarse una ruta de código exclusiva para bots.
El modelo de SearchPilot esquiva esto por completo dividiendo a otro nivel: “When doing SEO A/B testing, there is only one version of the page. We are not showing different versions of the same page to users or Google. This isn’t cloaking and doesn’t create any duplicate versions of the same page.” (traducción) «Cuando se hace SEO A/B testing, solo hay una versión de la página. No estamos mostrando versiones distintas de la misma página a los usuarios ni a Google. Esto no es cloaking y no crea versiones duplicadas de la misma página». Dividen páginas de forma determinista (una página dada muestra siempre la misma variante a todo el mundo) en lugar de dividir usuarios de forma aleatoria: la filosofía de bucketing opuesta a la del ejemplo de cookie 50/50 de Cloudflare, y un perfil de riesgo SEO genuinamente distinto aunque a ambos se les llame “edge A/B testing”. Como ellos lo expresan: “There is only one Googlebot. You also can’t make two versions of a single page because it would cause problems like duplicate content.” (traducción) «Solo hay un Googlebot. Tampoco puedes hacer dos versiones de una misma página porque causaría problemas como contenido duplicado».
Cómo arreglar el Patrón 2: disciplina de canónicas y redirecciones
Cuando el test vive en su propia URL, se aplican directamente tres reglas de la documentación de testing de Google:
- Apunte la URL de referencia de la variante de vuelta al control. Google: “you can use the rel=“canonical” link attribute on all of your alternate URLs to indicate that the original URL is the preferred version.” (traducción) «puedes usar el atributo de enlace rel=“canonical” en todas tus URLs alternativas para indicar que la URL original es la versión preferida». Cada URL de variante apunta a su URL de referencia a la URL de control.
- Use un 302, no un 301, mientras el test esté activo. Google: “use a 302 (temporary) redirect, not a 301 (permanent) redirect.” (traducción) «usa una redirección 302 (temporal), no una redirección 301 (permanente)». Un 302 le dice a Google que el movimiento es temporal y que mantenga indexada la original; un 301 dice que es permanente. Reserve el 301 para después de elegir un ganador y comprometerse con él.
- Desmóntelo cuando termine. Google: “Once you’ve concluded the test, update your site with the desired content variation(s) and remove all elements of the test as soon as possible… we may interpret this as an attempt to deceive search engines and take action accordingly.” (traducción) «Una vez que hayas concluido el test, actualiza tu sitio con la variación o variaciones de contenido deseadas y elimina todos los elementos del test lo antes posible… podemos interpretarlo como un intento de engañar a los motores de búsqueda y actuar en consecuencia».
Una advertencia honesta sobre la URL de referencia: es una pista, no una directiva. Si el contenido de la variante difiere sustancialmente del control, Google puede ignorar esa señal e indexar ambas, que es exactamente por lo que el Patrón 2 es más arriesgado que una reescritura en la misma URL, y por lo que los cambios estructurales grandes se gestionan mejor como una división de páginas que como una URL de variante por usuario.
Presupuesto de rastreo: el problema de la multiplicación multivariante
Un solo test A/B añade un estado extra que un rastreador podría ver. Un test multivariante los multiplica: tres variables independientes con dos variantes cada una son hasta ocho combinaciones distintas que un rastreador podría encontrarse en teoría si su bucketing no es fijo y determinista por URL. Un bucketing no determinista convierte una URL en una nube cambiante de estados, y cada estado rastreable distinto es presupuesto de rastreo gastado. Este ángulo de las permutaciones que se acumulan está prácticamente ausente en la mayoría de los artículos sobre testing y SEO, y es la razón por la que un bucketing determinista y fijo importa para la eficiencia de rastreo y no solo para el cloaking. (La guía de Google de “Crawling December” de 2024 sobre las CDN y el presupuesto de rastreo es la lectura de fondo adecuada; el artículo general sobre edge SEO de este clúster remite a ella.)
”Servir a los bots la variante de control”: ¿atajo o trampa?
Esto requiere cuidado, porque es un consejo a medias. Servir a los rastreadores una versión de control estable está bien —incluso es bueno— si ese control es genuinamente la versión que le gustaría que cualquier usuario recibiera siempre y que Google indexara. La seguridad viene de la consistencia y la legitimidad, no de la detección de bots.
Cruza hacia el cloaking en el momento en que la “ruta para bots” existe específicamente para mostrar a los motores de búsqueda una realidad distinta de la que reciben los usuarios reales: eso es literalmente el “Don’t show one set of URLs to Googlebot, and a different set to humans” (traducción) «No muestres un conjunto de URLs a Googlebot y otro distinto a las personas» de Google. Así que el planteamiento correcto es: sirva a los rastreadores la misma variante determinista que le parecería bien que cualquier usuario viera siempre, no una ruta especial solo para bots creada para esquivar el escrutinio. Detectar el agente de usuario (user-agent) para “excluir a los bots del test” solo es seguro porque resulta que se ha estandarizado una única versión verdadera; no es seguro como técnica general.
¿Cuánto tiempo se puede mantener un test en el edge?
Google no da un número de días. Advierte contra dejar los elementos del test en su sitio tanto tiempo que el “test” se haya convertido silenciosamente en el estado permanente del sitio sin que nunca se haya declarado un ganador: de nuevo la línea de “remove all elements of the test as soon as possible” (traducción) «elimina todos los elementos del test lo antes posible». John Mueller, de Google, se ha pronunciado sobre esto: ejecutar continuamente nuevos experimentos uno tras otro está bien, pero un único test que se deja funcionando de forma indefinida hasta convertirse en la página permanente de facto es lo que empieza a parecer que ya no es realmente hacer tests. (Las declaraciones de Mueller aquí llegan a través de la cobertura del sector de un Google Webmaster Central Hangout, no de un documento propio de Google; trate la redacción como una paráfrasis.) Mueller también ha señalado que ejecutar un test A/B durante una migración web enturbia las señales de redirección que Google necesita para reconocer la migración limpiamente, así que evite solapar ambas cosas.
Optimizely, replanteando a Google para sus clientes, le pone una regla general: “If you are running an experiment for an unnecessarily long time, Google may interpret this as an attempt to deceive search engines and take action accordingly.” (traducción) «Si ejecutas un experimento durante un tiempo innecesariamente largo, Google puede interpretarlo como un intento de engañar a los motores de búsqueda y actuar en consecuencia». Y sobre el despliegue de un ganador, Optimizely estima que una redirección 301 conlleva “a small loss of link equity (around 10%)” (traducción) «una pequeña pérdida de link equity (alrededor del 10 %)»: esa es una cifra de Optimizely y una regla general, no un número confirmado por Google, así que tómela como tal.
La guía de Bing es más escueta: aplique la de Google por defecto
Bing no tiene una página dedicada a los tests A/B en el edge o la CDN tan detallada como la de Google. Lo que sí tiene: un estándar general de cloaking que se apoya en que el contenido sea materialmente equivalente —“as long as you make a good faith effort to return the same content to all visitors, with the only difference being the content is rendered on the server for bots and on the client for real users, this is acceptable and not considered cloaking” (traducción) «siempre que hagas un esfuerzo de buena fe por devolver el mismo contenido a todos los visitantes, siendo la única diferencia que el contenido se renderiza en el servidor para los bots y en el cliente para los usuarios reales, esto es aceptable y no se considera cloaking»— y una nota que dice que para “significant structural changes, we recommend hosting each version on separate URLs, or split URL testing,” (traducción) «cambios estructurales significativos, recomendamos alojar cada versión en URLs separadas, o split testing por URL», con IndexNow para que las URLs de variante se vean rápido. Como el estándar de Bing es compatible con el de Google, aplique las reglas de canónica, 302 y duración de Google como valor por defecto conservador para ambos motores.
Dónde encaja esto
Este es el complemento específico sobre testing del artículo general de edge SEO de este clúster: ese se ocupa del recorrido por las plataformas (qué workers existen, qué más se puede hacer en el edge); este solo trata del riesgo del split testing. La mecánica de canónicas y contenido duplicado del Patrón 2 se apoya en las mismas ideas que los análisis en profundidad sobre canonicalización y contenido duplicado, y el ángulo del presupuesto de rastreo conecta con el material sobre rastreo y presupuesto de rastreo, todo ello en otras partes del sitio.
Resumen con IA
Una versión condensada de la versión Advanced:
- El Edge A/B testing ejecuta split tests en la capa de workers de la CDN (Cloudflare Workers, Akamai EdgeWorkers, Fastly Compute, Optimizely/VWO en el edge) de modo que el HTML de las variantes o las redirecciones se sirven antes del origen. Los motores reciben HTML real, así que es un lugar seguro para hacer tests, mucho más seguro que el testing con cambios de JS en el cliente.
- La postura de Google: hacer tests está bien; el cloaking no. El cloaking se define por la intención de manipular y la asimetría entre usuarios y bots, no por que “un bot haya visto alguna vez la variante B”.
- Dos patrones, dos riesgos. (1) Reescritura del HTML en la misma URL: Googlebot por lo general no conserva cookies, así que el bucketing por cookie puede rerandomizarlo hacia una variante distinta en cada rastreo → contenido indexado inconsistente. (2) Redirección a una URL de variante: contenido duplicado y confusión de canónicas.
- Soluciones. Haga que el tráfico de bots o sin cookie sea determinista (siempre la misma
variante por URL; el “passthrough” de Cloudflare es un modelo). Apunte con
rel=canonicalcualquier URL de variante de vuelta al control. Use un 302, no un 301, mientras esté activo. Elimine el test en cuanto tenga un ganador. - División por páginas frente a división por usuarios. La división determinista por páginas al estilo de SearchPilot esquiva por completo el problema de las cookies; el bucketing aleatorio por usuario con cookies (los ejemplos de Cloudflare/Akamai) necesita el respaldo determinista.
- El presupuesto de rastreo se acumula con los tests multivariante: muchas variables independientes multiplican los estados rastreables salvo que el bucketing sea fijo y determinista.
- “Servir a los bots el control” solo es seguro si ese control es genuinamente lo que quiere que se indexe: la seguridad viene de la consistencia y la legitimidad, no de la detección de bots.
- Duración: no hay límite fijo, pero no deje que un test se convierta en el estado permanente; evite ejecutar tests durante una migración. La orientación de Bing es más escueta: aplique las reglas de Google por defecto.
¿Qué patrón de test en el edge está ejecutando y cuál es su solución?
La mayoría de los problemas de SEO en los tests en el edge se reducen a dos preguntas: ¿el test cambia la URL y la variante que recibe el rastreador es determinista? Recorra este árbol para encontrar la solución que le aplica.
¿Cómo hago que mi prueba A/B en el edge sea segura para el SEO?
Documentación oficial
Guía de fuentes primarias de los motores de búsqueda y de los proveedores de las plataformas.
- Mejores prácticas de pruebas A/B para la búsqueda — la guía sobre canónica, 302, duración y cookies en la que se apoya todo este artículo.
- Políticas contra el spam: cloaking — la definición de cloaking (intención de manipular + asimetría).
Bing / Microsoft
- Prueba A/B para mejorar el rendimiento de búsqueda con IndexNow y Microsoft Clarity — la (escueta) nota de Bing sobre tests A/B; URLs separadas para los cambios estructurales e IndexNow para que se vean.
- Serie de bingbot: JavaScript, renderizado dinámico y cloaking — el estándar de cloaking de Bing de «buena fe, contenido materialmente equivalente».
Proveedores de CDN y de plataformas de testing
- Cloudflare Workers: pruebas A/B con acceso directo a la misma URL — el ejemplo de cookie 50/50 y el patrón «passthrough» para un acceso consistente a las variantes.
- Akamai: crear una prueba A/B con EdgeWorkers y EdgeKV — bucketing fijado por cookie en el edge (llamativo: el documento no tiene ningún enfoque de SEO ni de bots).
- Optimizely: pruebas A/B y optimización para motores de búsqueda — guía del proveedor que replantea las reglas de Google a sus propios clientes.
Citas de la fuente
Declaraciones documentadas de Google, Bing y los proveedores de las plataformas. Cada enlace de Google, Bing y Cloudflare es un enlace profundo que salta al pasaje citado en la página de origen.
Google — buenas prácticas de testing A/B
- “Don’t show one set of URLs to Googlebot, and a different set to humans.” (traducción) «No muestres un conjunto de URLs a Googlebot y otro distinto a las personas». Ir a la cita
- “Googlebot generally doesn’t support cookies. This means it will only see the content version that’s accessible to users with browsers that don’t accept cookies.” (traducción) «Googlebot normalmente no admite cookies; por tanto, solo recibe la versión del contenido accesible para los navegadores de usuarios que rechazan las cookies». — la cita clave para los tests en el edge. Ir a la cita
- “you can use the rel=“canonical” link attribute on all of your alternate URLs to indicate that the original URL is the preferred version.” (traducción) «puedes usar el atributo de enlace rel=“canonical” en todas tus URLs alternativas para indicar que la URL original es la versión preferida». Ir a la cita
- “use a 302 (temporary) redirect, not a 301 (permanent) redirect.” (traducción) «usa una redirección 302 (temporal), no una redirección 301 (permanente)». Ir a la cita
- “Once you’ve concluded the test, update your site with the desired content variation(s) and remove all elements of the test as soon as possible… we may interpret this as an attempt to deceive search engines and take action accordingly.” (traducción) «Al terminar el experimento, actualice el sitio con la variante de contenido elegida y retire cuanto antes todos sus elementos; de lo contrario, podríamos interpretarlo como un intento de engañar a los motores de búsqueda». Ir a la cita
Google — cloaking (política de spam)
- “Cloaking refers to the practice of presenting different content to users and search engines with the intent to manipulate search rankings and mislead users.” (traducción) «El cloaking se refiere a la práctica de presentar contenido distinto a los usuarios y a los motores de búsqueda con la intención de manipular los rankings de búsqueda y engañar a los usuarios». Ir a la cita
Bing / Microsoft
- “as long as you make a good faith effort to return the same content to all visitors, with the only difference being the content is rendered on the server for bots and on the client for real users, this is acceptable and not considered cloaking.” (traducción) «siempre que hagas un esfuerzo de buena fe por devolver el mismo contenido a todos los visitantes, siendo la única diferencia que el contenido se renderiza en el servidor para los bots y en el cliente para los usuarios reales, esto es aceptable y no se considera cloaking». Ir a la cita
- “If you’re creating significant structural changes, we recommend hosting each version on separate URLs, or split URL testing.” (traducción) «Si estás creando cambios estructurales significativos, recomendamos alojar cada versión en URLs separadas, o split testing por URL». Ir a la cita
Cloudflare Workers — el ejemplo de la misma URL
- “Enable Passthrough to allow direct access to control and test routes.” (traducción) «Habilita Passthrough para permitir el acceso directo a las rutas de control y de test». — la forma documentada de dar a los rastreadores (y a QA, y a los responsables implicados) una variante consistente en lugar de una tirada aleatoria de cookie. Ir a la cita
Akamai — el ejemplo con EdgeKV
- “Client bucket selection will be persistent via a cookie value to ensure a client is locked to the same URL on subsequent visits.” (traducción) «La selección del bucket del cliente será persistente mediante el valor de una cookie para asegurar que un cliente quede fijado a la misma URL en visitas posteriores». (El documento de Akamai es puramente un documento de ingeniería de conversión; merece la pena señalar que no contiene ningún enfoque de SEO, de bots ni de rastreadores; la mirada de SEO es algo que hay que aportar por cuenta propia.)
Optimizely — guía del proveedor a sus clientes
- “Google encourages constructive testing and does not view the ethical use of testing tools such as Optimize to constitute cloaking.” (traducción) «Google fomenta los tests constructivos y no considera que el uso ético de herramientas de testing como Optimize constituya cloaking».
- “If Google determines that the variation of your page is substantially different from the original in scope and content, then they may construe this change as cloaking.” (traducción) «Si Google determina que la variación de tu página es sustancialmente distinta de la original en alcance y contenido, puede interpretar ese cambio como cloaking». (Estas son declaraciones de Optimizely a sus propios clientes, que replantean su lectura de la política de Google; trátelas como guía del proveedor, no como una autoridad independiente. La tan citada “~10 % de pérdida de link equity en un 301” es igualmente una regla general de Optimizely, no una cifra confirmada por Google.)
SearchPilot — metodología de división por páginas
- “When doing SEO A/B testing, there is only one version of the page. We are not showing different versions of the same page to users or Google. This isn’t cloaking and doesn’t create any duplicate versions of the same page.” (traducción) «Al hacer pruebas A/B de SEO, la página tiene una única versión. No mostramos versiones diferentes de una misma página a usuarios o a Google. Esto no es cloaking ni crea duplicados». (SearchPilot es un proveedor de testing del lado del servidor y en el edge que describe su propio enfoque de división por páginas; se cita aquí como contraste metodológico frente al bucketing aleatorio por cookie.)
Checklist de SEO para el Edge A/B testing
Revise esto antes de lanzar un test en el edge que afecte a páginas indexadas:
- Sabe qué patrón está ejecutando: reescritura del HTML en la misma URL o redirección a una URL de variante.
- Las peticiones sin cookie son deterministas. Googlebot (que por lo general no conserva cookies) se resuelve siempre a la misma variante por URL, no a una tirada aleatoria nueva.
- Si es una URL de variante, cada variante lleva un
rel=canonicalque apunta a la URL de control. - La redirección durante el test es un 302, no un 301. (El 301 es solo para el ganador, después del test.)
- La variante que reciben los rastreadores es una versión legítima y representativa que le parecería bien indexar, no una ruta solo para bots creada para ocultar el experimento.
- No está detectando el agente de usuario (user-agent) para mostrar a los bots algo distinto de lo que ven los usuarios reales con el fin de esquivar el escrutinio.
- En un test multivariante, el bucketing es fijo y determinista por URL para no multiplicar los estados rastreables de la página.
- Hay un final definido: un momento para elegir al ganador y un plan para retirar todo el andamiaje del test con prontitud (ningún test que se quede funcionando como la página permanente de facto).
- El test no se solapa con una migración web (enturbia las señales de redirección).
- Las reglas de WAF / bots de su CDN no están bloqueando ni desviando silenciosamente a Googlebot antes incluso de que se ejecute el worker del test.
- Ha verificado en la herramienta de inspección de URL / los logs qué variante recibe realmente Googlebot.
Los modelos mentales
1. Hacer tests está bien; el cloaking no. Google fomenta los tests A/B y multivariante. El riesgo no está en el test, sino en el trato asimétrico de bots frente a usuarios (con intención de manipular), o en dejar el test funcionando hasta que es, en la práctica, el sitio permanente. Ancle cada decisión a esto.
2. Dos patrones, dos soluciones.
- Reescritura del HTML en la misma URL → el riesgo son los rastreos inconsistentes (bucketing por cookie + Googlebot ciego a las cookies). Solución: variante determinista para el tráfico sin cookie.
- Redirección a una URL de variante → el riesgo es el contenido duplicado y la confusión entre URL. Solución: URL de referencia al control + 302 mientras esté activo.
3. Lo que le mantiene a salvo es la consistencia y la legitimidad, no la detección de bots. Servir a los rastreadores un control estable está bien solo porque es una versión legítima que indexaría de todos modos. La seguridad viene de la consistencia, no del acto de detectar un bot. Una ruta solo para bots creada para ocultar contenido es la definición de cloaking.
4. División por páginas frente a división por usuarios. La división determinista por páginas (una variante por página, la misma para todo el mundo) esquiva por completo el problema de las cookies. El bucketing aleatorio por usuario con cookies necesita un respaldo determinista para los rastreadores. A ambos se les llama “edge A/B testing”; tienen perfiles de riesgo muy distintos.
5. Estado rastreable = presupuesto de rastreo. Cada estado distinto en el que se puede rastrear una URL cuesta presupuesto. Un test A/B añade un estado; un test multivariante los multiplica salvo que el bucketing sea fijo y determinista por URL.
6. Del lado del cliente < del lado del servidor de origen ≈ edge (para la visibilidad en SEO). Los cambios hechos con JS en el cliente pueden pasar desapercibidos para los motores de búsqueda. Tanto el lado del servidor de origen como el edge sirven HTML real; el edge simplemente lo hace más rápido y antes del origen, a cambio de las trampas de cookies y redirecciones descritas arriba.
Edge A/B testing — hoja de referencia
Los dos patrones
| Patrón | Qué cambia | Riesgo principal para el SEO | La solución |
|---|---|---|---|
| Reescritura del HTML en la misma URL | El contenido en la misma URL | Googlebot rerandomizado en cada rastreo (ciego a las cookies) → variante indexada inconsistente | Variante determinista para el tráfico sin cookie o de bots |
| Redirección a una URL de variante | Envía a una URL distinta | Contenido duplicado / ambas URLs indexadas | rel=canonical → control + 302 mientras esté activo |
Reglas de redirección mientras se hace el test
| Redirección | Señal para Google | Se usa para |
|---|---|---|
| 302 (temporal) | “Sigue indexando la original” | Cualquier redirección de variante mientras el test esté activo |
| 301 (permanente) | “Este cambio es permanente” | Solo después de comprometerse con un ganador |
“Servir a los bots el control”: ¿seguro o no?
- Seguro: el control es genuinamente representativo y es lo que indexaría de todos modos; la consistencia es lo que importa.
- No seguro: una ruta solo para bots creada para mostrar a los motores una realidad distinta de la que reciben los usuarios → cloaking.
Datos rápidos
- Googlebot por lo general no conserva cookies → el bucketing basado solo en cookies no es fiable para los bots.
- La canónica es una pista, no una directiva → con variantes estructurales grandes pueden acabar indexadas ambas URLs de todos modos.
- No hay límite fijo de duración, pero no deje que un test se convierta en el estado permanente; no lo ejecute durante una migración.
- Bing no tiene una página dedicada a los tests A/B en el edge: aplique las reglas de Google por defecto.
- El “~10 % de pérdida de link equity en un 301” de Optimizely es una regla general del proveedor, no una cifra de Google.
Mitos y errores a evitar en los tests en el edge
Las trampas que más aparecen; varias son mitos muy repetidos que conviene corregir:
- “Hacer tests es intrínsecamente arriesgado / va contra las normas.” No. Google fomenta los tests A/B y multivariante constructivos. El riesgo está en la implementación, no en el hecho de hacer tests.
- “Si excluyo del test a los bots por completo, estoy a salvo.” Solo a medias. Servir a los bots un control estable está bien si ese control es genuinamente la versión que indexaría de todos modos. Construido como “detección de bots para esquivar el escrutinio”, se lee como cloaking de manual: mostrar a los motores una realidad distinta de la que reciben los usuarios reales.
- “El bucketing por cookie está bien; así es como el ad-tech hace siempre los tests A/B.” No para el SEO. Google dice abiertamente que Googlebot por lo general no conserva cookies, así que una lógica basada solo en cookies pensada para personas se comporta de forma impredecible con los rastreadores salvo que se añada un respaldo determinista.
- “Un 301 al ganador es básicamente lo mismo que un 302 durante el test.” No. Un 302 dice temporal (sigue indexando la original); un 301 dice permanente. Use el 301 solo después de haberse comprometido con el ganador.
- “Una URL de referencia garantiza que Google no indexará mi URL de variante.” No. La URL de referencia es una pista. Si el contenido de la variante difiere sustancialmente del control, Google puede ignorarla e indexar ambas, que es por lo que los cambios estructurales grandes corresponden a una división por páginas y no a una URL de variante por usuario.
- “El testing en el edge, del lado del servidor de origen y del lado del cliente tiene el mismo riesgo de SEO.” No. Los cambios hechos con JS en el cliente pueden pasar completamente desapercibidos para los motores; el edge y el origen sirven HTML real. Y el edge añade sus propios riesgos (bots ciegos a las cookies, redirecciones a URLs de variante, interacciones con la caché de la CDN y el WAF) que el testing del lado del cliente no tiene.
- “Un test en el edge funcionando durante meses está bien mientras ‘siga en pruebas’.” Arriesgado. Un test que se deja funcionando hasta convertirse en la página permanente de facto, sin declarar nunca un ganador, es exactamente lo que Google advierte que puede leerse como un intento de engañar. Conclúyalo, elija un ganador y retire el andamiaje.
- “La documentación de testing A/B del proveedor de CDN cubre el ángulo del SEO.” Normalmente no: el ejemplo oficial de A/B con EdgeKV de Akamai, por ejemplo, no tiene ningún enfoque de SEO, de bots ni de rastreadores. La mirada de SEO es algo que aporta usted; la documentación de la plataforma no lo hará.
Ver qué variante recibe realmente un rastreador
Todo el juego consiste en que una petición sin cookie (que es como se comporta Googlebot por lo general) se resuelva a una variante consistente. Así se comprueba qué está sirviendo su edge cuando no hay cookie presente.
Hacer una petición como un cliente sin cookies (shell / curl)
# No cookie sent — this is closest to how Googlebot hits you.
# Run it a few times: the variant should be the SAME every time (deterministic),
# not a fresh 50/50 roll.
for i in 1 2 3; do
curl -s -A "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" \
https://example.com/product/123 | grep -o 'data-variant="[^"]*"'
done
# Show the response headers too — look for Set-Cookie (bucketing),
# Vary, and any redirect (302 good / 301 bad while testing).
curl -sI -A "Googlebot" https://example.com/product/123Detectar una redirección a una URL de variante y su estado (shell)
# -L follows redirects; -w prints the chain of status codes.
# A live test should show 302, never 301.
curl -sIL -o /dev/null \
-w "%{http_code} -> %{redirect_url}\n" \
https://example.com/product/123Comprobar la variante servida y la canónica en la consola de DevTools (apto para bookmarklet)
Péguelo en la consola del navegador en la página que está probando, o guárdelo como bookmarklet
(javascript: + el cuerpo) para comprobar cualquier página con un solo clic:
// What variant am I seeing, and does the page canonical to the control?
(() => {
const variant = document.querySelector('[data-variant]')?.dataset.variant
?? 'no data-variant attr found';
const canonical = document.querySelector('link[rel="canonical"]')?.href
?? 'no canonical';
const hasCookie = /(?:^|; )ab_bucket=/.test(document.cookie);
console.log({ url: location.href, variant, canonical, hasCookie });
})();Confirmar que el bucketing es determinista (regex sobre los logs de su edge)
Si su worker registra el bucket asignado en cada petición, esto extrae las peticiones sin cookie y su bucket para que pueda confirmar que la misma URL siempre se corresponde con la misma variante:
# Match log lines with no ab_bucket cookie, capture URL + assigned variant.
# Group by URL: every URL should show ONE variant, not a mix.
grep -vE 'ab_bucket=' edge.log \
| grep -oE '"(GET|HEAD) [^"]+".*variant=[AB]' \
| sort | uniq -c | sort -rnSi alguna URL muestra a la vez variant=A y variant=B en peticiones sin cookie, su bucketing no
es determinista para los rastreadores: arréglelo antes de que Googlebot indexe un objetivo móvil.
Herramientas para ejecutar y comprobar tests en el edge
- Cloudflare Workers — reescrituras con HTML Rewriter en la misma URL y el patrón “passthrough” documentado para un acceso consistente a control y test.
- Akamai EdgeWorkers + EdgeKV — bucketing en el edge con asignación fijada por cookie (aporte sus propias salvaguardas de SEO; la documentación no lo hace).
- Fastly Compute — computación en el edge para los mismos patrones de reescritura y redirección.
- Optimizely / VWO (integraciones en el edge / del lado del servidor) — plataformas comerciales de experimentación que pueden ejecutarse en el edge en lugar de en el cliente.
- SearchPilot — SEO A/B testing del lado del servidor y en el edge construido sobre una división determinista por páginas (una variante por página para todo el mundo), que esquiva el problema de las cookies.
- Google Search Console — Inspección de URLs — compruebe cómo rastreó y renderizó realmente Googlebot la URL en pruebas, y qué variante vio.
- Análisis de logs del servidor — la verdad de campo sobre qué variante recibieron los rastreadores reales, con qué frecuencia y si las peticiones sin cookie caen de forma consistente.
curl/ la consola de DevTools — comprobaciones manuales rápidas de la variante sin cookie, la canónica y el estado de la redirección (vea la pestaña Scripts).- IndexNow — protocolo de envío de Bing/Yandex para que las URLs de variante se vean rápido si está haciendo testing con división por URL (la vía recomendada por Bing para los cambios estructurales).
Auditar el bucketing en el edge en busca de determinismo para los rastreadores
Review this edge A/B test implementation. First classify it as:
A. Same-URL HTML rewriting, or
B. Redirect to a separate variant URL.
Then trace assignment for: a normal first visit, a returning visitor with a cookie,
Googlebot without a cookie across repeated crawls, and a request whose cache key is reused.
Return:
1. Every source of randomness or unstable assignment
2. Whether the same URL can show a crawler different indexable versions over time
3. Whether cache keys mix control and variant responses
4. For redirected variants, the redirect status and canonical relationship
5. User-agent branches that show bots content users cannot receive
6. A deterministic replacement and a repeat-request test plan
7. The cleanup required when the test ends
Do not assume crawlers retain cookies. Do not call a test safe merely because bots receive
the control; verify that control is genuinely available to users and is the intended
indexable version. Do not invent CDN settings or experiment data.
Worker/middleware code, routes, cache configuration, and test design:
[PASTE INPUT]Revisar un test propuesto con URL de variante
Check this edge redirect test for temporary-test hygiene. Verify that the variant URL
canonicalizes to the control, the redirect is temporary, internal links and sitemaps do
not multiply the test URLs, crawler assignment is stable, and an end date/winner-removal
plan exists. Return pass/fail per condition and the smallest safe correction.
Inputs:
[PASTE REDIRECT RULES, HEAD OUTPUT, CANONICALS, AND TEST WINDOW] Recursos que merecen su tiempo
Mis artículos relacionados
- The Beginner’s Guide to Technical SEO — dónde encajan el testing y la rastreabilidad en el panorama general, incluida la línea del cloaking que un test en el edge no debe cruzar.
Mis ponencias
- Cómo funciona la búsqueda (SlideShare) — mi recorrido por el rastreo, el renderizado, la indexación y el ranking; contexto útil para entender por qué el rastreo sin cookies y ciego a las cookies se comporta como lo hace. (Se aplica mi descargo de responsabilidad habitual: “Esta es mi comprensión de los sistemas… no va a ser 100 % completa ni exacta”.)
De todo el sector
- Mejores prácticas de pruebas A/B para la búsqueda (Google Search Central) — el documento de referencia: canónica, 302, duración y la línea sobre cookies y Googlebot.
- Cloudflare Workers: pruebas A/B con acceso directo a la misma URL — el ejemplo de cookie 50/50 y el patrón «passthrough» para un acceso consistente a las variantes.
- Akamai: crear una prueba A/B con EdgeWorkers y EdgeKV (Akamai) — bucketing en el edge fijado por cookie (nota: el documento no tiene ningún enfoque de SEO).
- Optimizely: pruebas A/B y optimización para motores de búsqueda (Optimizely) — guía del proveedor que replantea las reglas de Google; origen de la regla general del «~10 % de pérdida de link equity en un 301».
- ¿Qué son las pruebas A/B de SEO? (SearchPilot) — la metodología de división por páginas frente a división por usuarios y por qué «solo hay un Googlebot».
- SEO y pruebas de SEO en el edge (SearchPilot) — por qué los cambios en el edge aparecen ante los usuarios y ante Googlebot como cambios de HTML del lado del servidor.
- Prueba A/B para mejorar el rendimiento de búsqueda con IndexNow y Microsoft Clarity (Bing Webmaster Blog) — la nota de Bing sobre tests A/B y su guía sobre IndexNow.
Póngase a prueba: SEO para Edge A/B Testing
Cinco preguntas rápidas sobre cómo ejecutar split tests en el edge sin provocar problemas de SEO. Elija una respuesta para cada una y compruebe.
Registro de cambios
Actualizado el 22 ago 2026.
Resumen editorial y detalles registrados del cambio.Detalles del cambio
-
Los detalles del cambio están disponibles actualmente en inglés.
La comparación completa no está disponible: no se archivó una instantánea anterior para esta revisión.
Actualizado el 8 ago 2026.
Resumen editorial y detalles registrados del cambio.Detalles del cambio
-
Los detalles del cambio están disponibles actualmente en inglés.
-
Los detalles del cambio están disponibles actualmente en inglés.
La comparación completa no está disponible: no se archivó una instantánea anterior para esta revisión.
Actualizado el 19 jul 2026.
Resumen editorial y detalles registrados del cambio.Detalles del cambio
-
Los detalles del cambio están disponibles actualmente en inglés.
La comparación completa no está disponible: no se archivó una instantánea anterior para esta revisión.