Por qué la IA no puede ver tu sitio en React/Next — y cómo solucionarlo
Invertiste en contenido y, aun así, las respuestas de IA nunca te mencionan. A menudo la causa es técnica: el sitio es una SPA (una Single-Page App en React, Next.js en modo CSR, Vue, Svelte) donde el contenido se dibuja en el navegador. El problema: los bots de IA no ejecutan JavaScript, así que ven una página vacía.
Qué ve realmente un bot de IA
GPTBot, OAI-SearchBot, PerplexityBot y ClaudeBot leen el HTML fuente de la respuesta del servidor. No esperan a la hidratación y no hacen clic. Si tu <div id="root"></div> lo llena un script, el bot recibe una cáscara con un suelto «You need to enable JavaScript to run this app» — y se va.
Compruébalo en 10 segundos: pega una URL en Cómo ve la IA tu página — te muestra el texto exacto sin JS y cuántas palabras quedan ocultas detrás de JavaScript. Si un navegador ve 1.500 palabras y el bot recibe 11, ese es tu problema de GEO.
Cómo solucionarlo — según el framework
El objetivo es el mismo: entregar contenido ya renderizado en la primera respuesta HTML del servidor.
- Next.js — usa SSR, SSG o ISR (
getStaticProps/ server components del App Router) en lugar de puro client-side. El contenido debe estar en el HTML antes de la hidratación. - Nuxt —
universal(SSR) onuxt generate(SSG) en lugar dessr: false. - React (CRA / Vite SPA) — mueve las páginas de contenido a prerenderizado (Astro, Gatsby) o agrega renderizado en el servidor. El CSR puro es un error para el contenido que debe ser citado.
- Vue / Svelte — SvelteKit y Nuxt hacen SSR/prerender de fábrica; actívalo para las páginas públicas.
- Renderizado dinámico — como solución temporal puedes servirle a los bots un HTML prerenderizado (Prerender.io y similares), pero un SSR/SSG honesto es más confiable.
Después de renderizar — completa el trabajo de GEO
Una vez que el bot ve el texto, agrega lo demás:
- Schema.org (JSON-LD) —
Article,FAQPage. Genera un marcado válido en el generador de schema. - llms.txt — un mapa del sitio para los motores de IA. Cómo hacerlo en el artículo sobre llms.txt.
- Acceso de los bots de IA — asegúrate de que
robots.txtno bloquee a los bots de citación: comprobación de acceso de rastreadores de IA. - Párrafos citables — una respuesta directa en las primeras 1–2 oraciones de cada sección. Más en la guía completa de GEO.
Por dónde empezar
- Pasa tus URLs clave por Cómo ve la IA tu página.
- Si el bot ve una cáscara — activa SSR/SSG para las páginas de contenido.
- Vuelve a comprobar con la misma herramienta y agrega schema + llms.txt.
Fuentes
- Documentación de Google Search Central (JavaScript SEO, renderizado), OpenAI GPTBot y Perplexity — sobre los rastreadores de IA que leen el HTML fuente.
- llmstxt.org, Schema.org.
Preguntas frecuentes
¿Los bots de IA ejecutan JavaScript?
Casi nunca. GPTBot, PerplexityBot, ClaudeBot y la mayoría de los rastreadores de respuestas de IA leen el HTML fuente y no ejecutan JS. Si el contenido se renderiza en el cliente, el bot ve una cáscara vacía.
Googlebot sí renderiza JS, ¿no basta con eso?
Googlebot sí renderiza JS (con retraso), pero AI Overview y los motores de terceros (ChatGPT, Perplexity) suelen tomar el contenido del HTML fuente. Para GEO necesitas el contenido en la primera respuesta del servidor.
¿Cómo compruebo rápido qué ve el bot?
Pega una URL en nuestra herramienta gratuita «Cómo ve la IA tu página»: te muestra el texto exacto que recibe un bot de IA (sin JS) y cuántas palabras quedan ocultas detrás de JavaScript.
Recibe las nuevas publicaciones por correo
Guías de GEO/SEO del equipo autónomo. Sin spam: cancela tu suscripción cuando quieras.
Comentarios