Las redes neuronales ven un esqueleto vacío en lugar del sitio: los crawlers de IA no ejecutan JavaScript
Es una escena habitual: el sitio está en el top de Google, el tráfico y las conversiones van bien, pero cuando se pregunta a ChatGPT por la empresa, nombra a tres competidores o repite datos de hace dos años. El equipo de Habr probó su propio sitio con consultas a distintos modelos y comprobó qué recibe realmente su infraestructura. Descubrió que algunos crawlers de IA no ejecutan JavaScript, así que al modelo no le llega el artículo, sino un esqueleto vacío de la página. • Reescribir textos y FAQ no suele ayudar: el modelo responde con lo que le ha llegado. • Los sitios que se construyen en el navegador están casi vacíos para esos crawlers. • El problema se puede comprobar y corregir sin cambiar el contenido.
Procesado por IA desde Habr AI; editado por Hamidun News
El sitio está en el top de búsqueda, el tráfico llega y las conversiones se mantienen. Sin embargo, cuando alguien pregunta «qué empresa es X», ChatGPT nombra a tres competidores o repite hechos de hace dos años. Los autores de un análisis reciente en Habr pasaron su propio sitio por consultas a distintos modelos, comprobaron qué recibe su infraestructura y llegaron a una conclusión prosaica. Contenido había de sobra. Simplemente no llegaba al modelo: algunos crawlers de IA no ejecutan JavaScript y, en lugar del artículo, ven un esqueleto vacío de la página.
Por qué «más contenido» no lo soluciona
La primera reacción de marketing y desarrollo es previsible: reescribir los textos, añadir más expertise, montar una sección de FAQ. La hipótesis es lógica, pero, según la experiencia de los autores, casi nunca se confirma. Una red neuronal no responde con lo que está escrito en tu sitio, sino con lo que ha conseguido alcanzar. Si el contenido se pierde entre el servidor y el modelo, cualquier retoque del texto da en el blanco equivocado.
La principal fuente de pérdidas es sencilla. Los sitios modernos en React, Vue o Angular suelen enviar al navegador un HTML mínimo y scripts, y el texto se construye después en el lado del cliente. Una persona ve la página ya terminada. Un crawler que no ejecuta JavaScript recibe `<div id="root"></div>` y nada más.
También lo confirman mediciones independientes. En un estudio de Vercel y MERJ de finales de 2024 se analizó el tráfico de los bots de OpenAI y Anthropic: solicitaban archivos JavaScript, pero no los ejecutaban. Googlebot, en cambio, renderiza las páginas por completo, y por eso un sitio puede estar en orden para el buscador y vacío para la red neuronal.
Dónde se pierde el contenido por el camino
El recorrido desde el sitio hasta la respuesta del modelo tiene varios eslabones, y cualquiera de ellos puede fallar:
- Renderizado: el texto aparece solo después de ejecutar JS y el crawler no lo ejecuta.
- Acceso: robots.txt, el WAF o la protección antibot bloquean a GPTBot, ClaudeBot, PerplexityBot y bots similares.
- Contenido oculto: los datos clave están en pestañas, acordeones y ventanas modales que se cargan al hacer clic.
- Caché obsoleta: el modelo se apoya en una copia antigua de la página o en menciones de terceros, no en el sitio actual.
- Estructura débil: faltan encabezados, marcado schema.org y fechas de actualización que permitan saber qué es lo más reciente.
Conviene distinguir, además, entre crawlers de entrenamiento y crawlers de búsqueda. Los primeros recopilan datos para entrenar modelos; los segundos cargan las páginas en el momento de responder al usuario. Bloquear a los primeros no debería cortar el acceso a los segundos, pero en la mayoría de las empresas las reglas de robots.txt se escriben en una sola línea para todos a la vez.
Qué comprobar y corregir
Se puede empezar en quince minutos y sin contratistas.
1. Abra el código fuente de la página (view-source) o ejecute `curl` y compruebe si el HTML contiene el texto principal. Si solo hay scripts, el problema está localizado. 2. Repita la solicitud con el User-Agent de los bots de IA. Si el servidor devuelve un 403 o un captcha, el acceso está cerrado en la capa de protección, no en el contenido. 3. Revise robots.txt y las reglas del CDN: qué bots están permitidos y cuáles están bloqueados a propósito. 4. Contraste las respuestas de distintos modelos a preguntas sobre la empresa y anote qué hechos conocen y cuáles confunden.
Si el texto no está en el HTML, la solución es el renderizado en servidor (SSR) o la generación estática (SSG): Next.js, Nuxt y Astro lo admiten de serie. En proyectos antiguos, a veces basta con un prerenderizado para los bots conocidos. Después conviene llevar lo importante a HTML limpio: descripción del producto, precios, contactos y fechas de actualización. Añada marcado estructurado y mantenga al día el sitemap con un lastmod correcto.
A veces se propone el formato llms.txt como una solución aparte. Pero todavía hay pocos datos fiables sobre su influencia real en las respuestas de los modelos, y no conviene ponerlo por delante de la accesibilidad básica del contenido. Primero hay que asegurarse de que la página se lee sin navegador. Todo lo demás solo funciona después de eso.
Executive AI Consulting, Custom Agents & Team Workshops
Work directly with Zhemal Khamidun at hamidun.com — enterprise AI architecture, production RAG & multi-agent systems, and executive training.
Lo esencial de la IA — una vez por semana
Siete historias que de verdad importaron, elegidas a mano. Sin ruido ni notas de prensa.
¡Listo! Revisa tu correo para la confirmación.