Renderizado y SEO: por qué ChatGPT no ve tu web en React

Posicionas primero en Google para tu término principal. Search Console va bien, el tráfico orgánico crece y la web se ve estupenda. Entonces le preguntas a ChatGPT por tu servicio, te cita tres competidores y a ti no. Pruebas con Claude, lo mismo. Con Perplexity, igual.

No es que te estén ignorando. Es que no te han visto.

Googlebot ejecuta JavaScript desde hace años y renderiza tu aplicación en React sin despeinarse. Los rastreadores que alimentan a ChatGPT, Claude y Perplexity no lo hacen. Descargan el HTML de respuesta, lo leen y se van. Si tu contenido se monta en el cliente, lo que reciben es un <div id="root"></div>, tres etiquetas <script> y nada más.

Esta guía explica el mecanismo con los datos que hay publicados, cómo comprobarlo en tu propia web en diez minutos, qué rutas mover a renderizado en servidor y cuáles puedes dejar como están. Y de paso desmonta unas cuantas cifras que circulan por ahí sobre optimización para buscadores con IA y que no aguantan una comprobación.

Está escrita para quien sabe abrir una terminal. Si tu web es WordPress, este problema no lo tienes, aunque el bloque de rastreadores y el del CDN te van a interesar igual.


1. Los modos de renderizado, rápido

Cuatro siglas que hay que tener claras antes de seguir.

ModoQué llega en el HTML de respuestaQuién lo ve
CSR (cliente)Un contenedor vacío y scriptsSolo quien ejecuta JavaScript
SSR (servidor)El HTML completo, generado en cada peticiónTodos
SSG (estático)El HTML completo, generado en el buildTodos
ISR (estático incremental)El HTML completo, regenerado cada X tiempoTodos

La diferencia que importa aquí no es de rendimiento ni de arquitectura. Es una sola pregunta: ¿el contenido está dentro de la respuesta HTTP, o hay que ejecutar código para que aparezca?

Con CSR, la respuesta es la segunda. Y ahí empieza el problema.


2. Cómo ve tu React Googlebot

Google no tiene problema con tu SPA, o al menos no el que se suele contar.

El proceso son tres fases: rastreo, renderizado e indexación. Googlebot descarga el HTML, lo analiza en busca de enlaces y encola la página para renderizar. Cuando hay recursos, un Chromium sin interfaz gráfica ejecuta el JavaScript, y sobre ese HTML renderizado Googlebot vuelve a buscar enlaces.

El dato que casi todo el mundo cuenta mal

Vas a leer en muchos sitios que la “segunda oleada” de indexación tarda días o semanas. Ese dato es de 2018 y lleva años sin ser representativo.

Martin Splitt dio la cifra real en el Chrome Dev Summit de noviembre de 2019: entre el rastreo y el renderizado, la mediana es de cinco segundos. Ese mismo año explicó que el modelo de las dos oleadas juega un papel cada vez menor, porque renderizar les sale más barato de lo que pensaban. La documentación actual lo formula con prudencia: la página puede quedarse en la cola unos segundos, aunque puede tardar más.

Así que si alguien te está vendiendo una migración a Next.js con el argumento de que Google tarda semanas en ver tu React, te está vendiendo con un dato de hace siete años.

Hay motivos buenos para hacer esa migración. Ese no es uno. El bueno viene ahora.


3. Cómo la ven los bots de IA: los números

Aquí es donde cambia todo, y hay datos públicos.

El estudio de Vercel y MERJ, publicado en diciembre de 2024 a partir del tráfico de rastreo de nextjs.org y de la red de Vercel, midió el comportamiento de los principales rastreadores durante un mes. La conclusión fue seca: ninguno de los grandes rastreadores de IA renderizaba JavaScript.

Los volúmenes que manejaron dan idea de la escala:

Rastreadores que ejecutan JavaScript y volumen de peticiones según el estudio de Vercel y MERJ

Descargar el archivo no es ejecutarlo.

RastreadorPeticiones en el periodo¿Ejecuta JavaScript?
Googlebot4.500 millones
GPTBot (OpenAI)569 millonesNo
Claude (Anthropic)370 millonesNo
AppleBot314 millones
PerplexityBot24,4 millonesNo

En conjunto, los rastreadores de IA sumaron cerca de 1.300 millones de peticiones, algo más del 28 % del volumen de Googlebot. Y eso a finales de 2024.

El matiz que se pierde al resumir: descargar el archivo no es ejecutarlo. GPTBot se bajaba archivos JavaScript en el 11,50 % de sus peticiones y ClaudeBot en el 23,84 %, sin ejecutar ninguno. Los tratan como texto.

Las dos excepciones

AppleBot renderiza. Apple lo documenta y avisa de que si bloqueas JavaScript, CSS u otros recursos en el robots.txt, puede que no consiga renderizar bien. Con Applebot alimentando las funciones de Siri, ha dejado de ser un rastreador secundario.

Gemini renderiza, porque va montado sobre la infraestructura de Googlebot.

La fecha del dato

El estudio es de diciembre de 2024 y es la referencia pública más sólida que existe. Todos los análisis posteriores se apoyan en ella. Es una foto de un momento y los rastreadores cambian sin avisar.

Pero la conclusión práctica no depende de que la cifra siga exacta: el HTML de respuesta lo entienden todos los rastreadores, rendericen o no. Es el mínimo común denominador y no cuesta nada respetarlo.


4. El cascarón vacío, en código

Esto es lo que recibe GPTBot de una SPA típica:

<!doctype html>
<html lang="es">
  <head>
    <meta charset="UTF-8" />
    <title>Mi aplicación</title>
    <script type="module" crossorigin src="/assets/index-a3f9c2.js"></script>
    <link rel="stylesheet" href="/assets/index-8b1e40.css" />
  </head>
  <body>
    <div id="root"></div>
  </body>
</html>

Sin H1. Sin texto. Sin precios. Sin tabla comparativa. Sin JSON-LD. Sin enlaces internos. El <title> es el genérico del index, igual en todas las rutas.

Para un modelo que construye su base a partir de esto, tu web es una página en blanco con un título que no dice nada.

Y esto es lo que recibe con SSR o SSG:

HTML de respuesta de una aplicación React con renderizado en cliente frente a la misma página con renderizado en servidor

Mismo React. La diferencia es si el contenido ya viene en la respuesta HTTP.

<!doctype html>
<html lang="es">
  <head>
    <title>Consultoría SEO técnica en Sevilla | Auditorías y arquitectura web</title>
    <meta name="description" content="Auditoría SEO técnica para ecommerce y proyectos en frameworks modernos." />
    <script type="application/ld+json">
      {"@context":"https://schema.org","@type":"Service","name":"Auditoría SEO técnica"}
    </script>
  </head>
  <body>
    <h1>Consultoría SEO técnica en Sevilla</h1>
    <p>Auditamos qué ve un robot de tu web frente a lo que ves tú...</p>
    <h2>Qué incluye una auditoría</h2>
    <ul>
      <li><a href="/servicios/auditoria-tecnica/">Auditoría técnica</a></li>
    </ul>
    <div id="root"><!-- React hidrata sobre este HTML --></div>
  </body>
</html>

Mismo React, misma experiencia de usuario, misma interactividad. La única diferencia es que el contenido ya está ahí cuando llega la respuesta.

Ese es el cambio. No es más complicado que eso.


5. No existe “el bot de ChatGPT”: son tres

Aquí hay una confusión muy extendida que conviene deshacer, porque afecta a decisiones de negocio.

Se habla de “bloquear la IA” o “permitir la IA” como si fuera un interruptor. No lo es. Tanto OpenAI como Anthropic han separado sus agentes por función, y puedes decidir de forma independiente sobre cada uno.

Los rastreadores de OpenAI

AgentePara qué esQué pasa si lo bloqueas
GPTBotRastrea contenido que puede usarse para entrenar los modelos baseTu contenido no entra en el entrenamiento
OAI-SearchBotSirve para que tus páginas aparezcan en las funciones de búsqueda de ChatGPTDejas de aparecer en las respuestas de búsqueda de ChatGPT
ChatGPT-UserVisita una página cuando un usuario se lo pide en una conversaciónNo se puede acceder a tu página cuando alguien la pide expresamente

Un detalle de diciembre de 2025 que se ha contado poco: OpenAI cambió las reglas y ChatGPT-User ya no sigue el robots.txt. Solo lo hacen OAI-SearchBot y GPTBot. La lógica es que ChatGPT-User actúa por petición explícita de una persona, no rastreando por su cuenta.

Los rastreadores de Anthropic

Anthropic aclaró su documentación en febrero de 2026 con la misma estructura de tres:

AgentePara qué es
ClaudeBotRecoge contenido público que puede usarse para entrenar y mejorar los modelos
Claude-SearchBotRastrea contenido para mejorar la calidad y relevancia de los resultados de búsqueda de Claude
Claude-UserRecupera contenido cuando un usuario hace una pregunta que requiere acceder a una página

La consecuencia práctica

Puedes proteger tu propiedad intelectual del entrenamiento y a la vez seguir siendo citable. Son decisiones separadas:

# Fuera del entrenamiento de modelos
User-agent: GPTBot
Disallow: /

User-agent: ClaudeBot
Disallow: /

# Dentro de la búsqueda y las citas
User-agent: OAI-SearchBot
Allow: /

User-agent: Claude-SearchBot
Allow: /

User-agent: PerplexityBot
Allow: /

Si has bloqueado “la IA” en bloque en algún momento del último año, revisa qué bloqueaste exactamente. Es bastante habitual encontrar cuentas que se sacaron de las citas sin querer, buscando solo salir del entrenamiento.

Y ojo con lo obvio: si permites OAI-SearchBot pero tu contenido está en CSR, le has abierto la puerta a una casa vacía.


6. La capa que nadie audita: tu CDN

Rastreadores de IA que no ejecutan JavaScript frente a Googlebot, que sí renderiza

Puedes tener el robots.txt perfecto y el SSR impecable, y que el bot no llegue nunca porque lo para tu proveedor de CDN antes.

La cronología de Cloudflare, que es donde está la mayor parte del tráfico:

  • 1 de julio de 2025. Cloudflare empieza a bloquear rastreadores de IA por defecto y lanza Pay Per Crawl, cobrando por cada petición con respuestas HTTP 402.
  • 1 de julio de 2026. Cambia el modelo: clasifica el tráfico automatizado en tres categorías (Search, Training y Agent) y pasa de cobrar por rastreo a un modelo experimental de pago por citación.
  • 15 de septiembre de 2026. Para los dominios que se den de alta a partir de esa fecha, Training y Agent quedan bloqueados por defecto en las páginas que muestran publicidad, mientras que Search sigue permitido por defecto.

Esa última fecha es dentro de tres semanas, así que conviene tenerla presente si vas a dar de alta dominios nuevos este otoño. Los clientes existentes mantienen su configuración salvo que decidan adoptar los nuevos valores por defecto.

Lo relevante para una auditoría: comprueba qué responde tu servidor a un rastreador de IA, no lo que dice tu robots.txt. Si el CDN devuelve un 403, tu contenido no existe para ese sistema aunque tu configuración sea perfecta. Y un 403 no aparece en ningún informe de Search Console.

En el bloque siguiente hay el comando exacto para comprobarlo.


7. Auditoría en diez minutos

Cinco pruebas. Con las dos primeras ya sabes si tienes el problema.

Prueba 1: qué recibe GPTBot (2 minutos)

Simula el rastreador desde tu terminal:

curl -s -A "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; GPTBot/1.4; +https://openai.com/gptbot" https://tudominio.es/ | head -60

Busca en esa salida tu H1, tu propuesta de valor, tus precios y tu JSON-LD. Lo que no esté ahí, no existe para ChatGPT.

Para contar rápido si hay contenido de verdad:

curl -s -A "GPTBot/1.4" https://tudominio.es/ | grep -c "<h1"
curl -s -A "GPTBot/1.4" https://tudominio.es/ | grep -c "application/ld+json"

Dos ceros son un diagnóstico.

Prueba 2: el código de estado (1 minuto)

Esto es lo que detecta el bloqueo del CDN del bloque anterior:

for UA in "GPTBot/1.4" "OAI-SearchBot/1.4" "ClaudeBot" "PerplexityBot" "Googlebot"; do
  echo -n "$UA: "
  curl -s -o /dev/null -w "%{http_code}\n" -A "$UA" https://tudominio.es/
done

Si Googlebot recibe 200 y GPTBot recibe 403, el problema no es tu React: es tu firewall.

Prueba 3: fuente contra DOM (3 minutos)

Abre view-source:https://tudominio.es/ y compáralo con lo que ves en el inspector de DevTools. La diferencia entre los dos es exactamente lo que solo existe después de ejecutar JavaScript.

Para medirlo en números, en la consola:

document.body.innerText.length

Y compáralo con el texto que devuelve el curl de la prueba 1. Si el DOM tiene 12.000 caracteres de texto y el HTML de respuesta tiene 200, tienes toda tu web en el lado equivocado.

Prueba 4: Search Console (2 minutos)

Inspecciona una URL y lanza la prueba en directo. En “Ver página probada”, el HTML que ves es el renderizado, después de ejecutar JavaScript. Eso es lo que ve Google, y suele estar bien.

Sirve justamente para confirmar el contraste: Google te ve, los demás no. Si tu cliente no se cree el problema, esta comparación al lado del curl lo resuelve en un minuto.

Prueba 5: los logs (5 minutos, si tienes acceso)

Filtra por los user agents de la tabla del bloque 5 y mira dos cosas: cuántas peticiones te hacen y qué códigos de estado les devuelves. Si nunca has abierto los logs de tu servidor, en este artículo está el proceso completo con los comandos.

Aquí hay un dato del estudio de Vercel que conviene tener en la cabeza: ChatGPT gastaba el 34,82 % de sus peticiones en páginas 404, y Claude el 34,16 %, frente al 8,22 % de Googlebot. Si en tus logs ves ese patrón, tienes el problema del bloque siguiente.


8. El soft 404 de las SPAs

Un caso concreto que hace mucho daño y casi nadie audita.

En una SPA con enrutado en cliente, una URL que no existe devuelve un 200 OK con el cascarón vacío, y el mensaje de “página no encontrada” lo pinta React después. Para cualquier bot que no ejecute JavaScript, esa URL inexistente es una página válida con contenido vacío.

Es el mismo problema que las combinaciones de filtros que devuelven un 200 vacío. Multiplicado por las URLs mal formadas, los enlaces rotos y los assets antiguos que arrastra cualquier proyecto, acabas con un porcentaje enorme de peticiones que producen basura. Los números de Vercel de arriba, con más de un tercio de las peticiones de ChatGPT y Claude yendo a 404, apuntan justo a eso.

La solución es que el servidor sepa qué rutas existen y devuelva el código correcto antes de mandar nada al cliente. Con SSR o SSG lo tienes casi gratis: si la ruta no está en el enrutador del servidor, devuelves 404 de verdad, con su código de estado.

Compruébalo así:

curl -s -o /dev/null -w "%{http_code}\n" https://tudominio.es/esta-ruta-no-existe-12345

Si sale 200, tienes trabajo.


9. Qué mover a servidor y qué no

La decisión no es “migramos la web”. Es por plantilla, y se toma con criterio de negocio. Es una de las salidas típicas de una auditoría SEO técnica.

Tipo de rutaModo recomendadoPor qué
HomeSSG o SSREs la que más se cita y la que define de qué va tu marca
Landings de servicio o productoSSG o SSRContenido comercial que quieres que se cite
Artículos y documentaciónSSGContenido estable, ideal para generar en el build
Fichas de productoSSR o ISRPrecio y stock cambian, el contenido importa
Listados y categoríasSSR o ISRSon las puertas de entrada a lo demás
Buscador internoCSRNadie va a citar una página de resultados
Panel de usuarioCSRDetrás de login, no hay nada que rastrear
Configuradores y calculadorasCSR con envoltorio SSREl HTML explica qué hace la herramienta, el JS la hace funcionar
CheckoutCSRNi se rastrea ni interesa

La regla: si el contenido de esa ruta es un argumento para que alguien te contrate, tiene que estar en el HTML de respuesta. Si es funcionalidad de aplicación, déjalo en cliente y no pierdas el tiempo.

En un proyecto normal, esa lista son cinco o seis plantillas. No es una reescritura, es un sprint.

Con qué hacerlo

Next.js, Nuxt, Remix, SvelteKit y Astro generan HTML en servidor de serie. Con Next, la elección está en el App Router: los componentes son de servidor por defecto y solo llevan "use client" los que necesitan interactividad. El error más común es marcar como cliente un componente que solo pinta texto, arrastrando con él a todos sus hijos.

Si tu proyecto es Create React App o Vite sin framework, tienes dos caminos: prerrenderizar las rutas críticas en el build, o mover esas rutas a un framework con SSR y dejar el resto como está. Las dos son viables y la segunda es la que suele salir mejor a medio plazo.

Sobre el renderizado dinámico, que es servir HTML pre-renderizado solo a los bots: si ya lo tienes montado, funciona. Si empiezas de cero, no vayas por ahí. Google lo describe en su documentación como una solución provisional y no como una solución a largo plazo, y recomienda renderizado en servidor, renderizado estático o hidratación.


10. Cómo se escribe un HTML que un modelo pueda usar

Aquí toca hablar de datos, y toca hacerlo con cuidado porque circulan muchas cifras inventadas.

Lo que dice la investigación de verdad

El estudio de Princeton sobre GEO (Aggarwal et al.) probó nueve tácticas de redacción y midió su efecto en la visibilidad dentro de respuestas generativas. Las tres que mejor funcionaron:

TácticaMejora aproximada
Añadir citas textuales de fuentes~42 %
Añadir estadísticas concretas~33 %
Citar fuentes explícitamente~28 %

En un despliegue real sobre Perplexity, añadir estadísticas mejoró un 37 % en la métrica de impresión subjetiva.

Fíjate en lo que ese estudio no mide: no dice nada de velocidad de carga, ni de First Contentful Paint, ni de sitemaps, ni de JSON-LD, ni de frescura de contenido. Si has visto multiplicadores atribuidos a Princeton sobre esas cosas, no salen de ahí.

El estudio de AirOps de abril de 2026 sí midió factores técnicos, sobre 16.851 consultas analizadas tres veces cada una, 353.799 páginas y 50.553 respuestas de ChatGPT:

FactorResultado
Posición en búsquedaLas páginas en la primera posición se citaron el 58,4 % de las veces, frente al 14,2 % de la posición 10
Correspondencia de encabezados con la consulta41,0 % de citación con la correspondencia más fuerte, frente a en torno al 30 % con correspondencias débiles
JSON-LD38,5 % de citación con marcado, frente al 32,0 % sin él
ExtensiónEl punto óptimo estuvo entre 500 y 2.000 palabras; por encima de 5.000 el rendimiento cayó
FrescuraLas páginas de entre 30 y 89 días de antigüedad rindieron mejor

Estos son números reales, con muestra y metodología. Son más modestos que los multiplicadores que se ven por ahí, y precisamente por eso sirven para tomar decisiones.

El patrón que se deduce

Junta las dos investigaciones y sale una forma concreta de escribir el HTML inicial:

Un H1 claro y un resumen de 40 a 80 palabras justo debajo, respondiendo a la consulta antes de contextualizar. La correspondencia entre encabezado y consulta es el segundo factor más fuerte del estudio de AirOps.

Encabezados que sean la pregunta. “¿Cuánto cuesta una auditoría SEO técnica?” funciona mejor que “Precios”.

Datos concretos con su fuente. Es lo que más subió en el estudio de Princeton, y además es lo que hace que un párrafo tuyo sea citable en lugar de parafraseable.

Tablas para los datos comparativos. Un modelo trocea una tabla mucho mejor que tres párrafos con la misma información.

JSON-LD en el <head> del HTML de respuesta, no inyectado tras la hidratación. El efecto medido es moderado, del 32 % al 38,5 %, pero es de las cosas más baratas de hacer bien.

Entre 500 y 2.000 palabras por página, sin inflar. Los textos de más de 5.000 rindieron peor.

Y el factor que salió más fuerte de todos: posicionar bien en búsqueda tradicional. El 58,4 % de citación en primera posición frente al 14,2 % en la décima dice que el SEO clásico sigue siendo el mejor predictor de ser citado por ChatGPT. Lo cual conviene recordar antes de reorientar toda una estrategia hacia siglas nuevas.


11. llms.txt: para qué sirve y para qué no

Te lo van a vender como el nuevo robots.txt de la IA. Conviene poner esto en su sitio.

Para posicionar en Google no sirve. Google publicó en junio de 2026 que no hace falta crear archivos legibles por máquina, archivos de texto para IA, marcado ni Markdown para aparecer en la Búsqueda. Gary Illyes confirmó en julio de 2025 que Google no lo admite ni tiene planes de hacerlo. John Mueller fue más gráfico: que ningún servicio de IA ha dicho que lo use, y que le parece comparable a la metaetiqueta de keywords.

Ningún gran proveedor lo ha adoptado como señal de citación en producción.

Para lo que sí sirve es para otra cosa, y es un caso de uso real: los asistentes de programación lo leen. Cursor, Claude Code, GitHub Copilot, Windsurf, Cline y Aider lo usan como índice estructurado cuando un desarrollador les pide acceso a documentación, para no tener que masticar HTML lleno de ruido.

O sea: si tu producto es una API, una librería o una herramienta para desarrolladores, un llms.txt con tu documentación tiene sentido, porque tus usuarios llegan a través de esos asistentes. Si vendes zapatillas o servicios de consultoría, es un archivo que nadie va a leer.

Media hora de trabajo y ninguna expectativa. Ese es el encuadre honesto.


12. Checklist

Visibilidad para rastreadores sin JavaScript

  • El H1 aparece en el HTML de respuesta (curl, no DevTools)
  • La propuesta de valor y los datos clave están en el HTML de respuesta
  • El <title> y la meta descripción son distintos en cada ruta y vienen del servidor
  • El JSON-LD está en el <head> de la respuesta, no inyectado tras la hidratación
  • Los enlaces internos son <a href> presentes en el HTML de respuesta, rastreables de verdad

Códigos de estado

  • Una ruta inexistente devuelve 404, no 200 con cascarón vacío
  • GPTBot, OAI-SearchBot, ClaudeBot y PerplexityBot reciben 200, no 403
  • Sin cadenas de redirecciones en las rutas principales

Rastreadores

  • Revisado qué agentes están bloqueados y con qué intención
  • Decisión separada entre entrenamiento (GPTBot, ClaudeBot) y búsqueda (OAI-SearchBot, Claude-SearchBot)
  • Comprobada la configuración del CDN, no solo el robots.txt
  • Logs revisados: volumen por agente y códigos de respuesta

Arquitectura

  • Lista de plantillas clasificadas entre SSR/SSG y CSR
  • Home, landings comerciales y contenido editorial servidos desde servidor
  • Componentes marcados como cliente solo cuando necesitan interactividad

Contenido del HTML inicial

  • Resumen de 40-80 palabras bajo el H1
  • Encabezados formulados como las consultas reales
  • Datos concretos con fuente citada
  • Tablas para la información comparativa
  • Extensión entre 500 y 2.000 palabras en las páginas que quieres que se citen

13. Preguntas frecuentes

¿Google ve mi web en React?

Sí. Googlebot ejecuta JavaScript con un Chromium sin interfaz gráfica, y la mediana entre rastreo y renderizado que dio Google era de cinco segundos. El problema no es Google.

¿Entonces por qué migrar a SSR?

Por los demás. GPTBot, ClaudeBot y PerplexityBot no ejecutan JavaScript, según el estudio de Vercel y MERJ de diciembre de 2024. Con renderizado en cliente, tu contenido no existe para ellos. También ganas control sobre los códigos de estado y sobre las etiquetas por ruta.

¿Cómo compruebo qué ve ChatGPT de mi web?

Con curl usando el user agent de GPTBot y mirando si en la salida están tu H1, tu texto principal y tu JSON-LD. Si no están ahí, no los ve. Es la prueba 1 del bloque 7.

¿Bloquear GPTBot me saca de ChatGPT?

No del todo, y esta es la confusión más cara. GPTBot es el que recoge contenido para entrenar los modelos. El que hace que aparezcas en las funciones de búsqueda de ChatGPT es OAI-SearchBot. Son decisiones independientes: puedes salir del entrenamiento y seguir siendo citable.

¿Y si mi CDN bloquea los bots de IA?

Pasa más de lo que parece. Cloudflare bloquea rastreadores de IA por defecto desde julio de 2025, y desde el 15 de septiembre de 2026 los dominios nuevos tendrán bloqueados por defecto los de entrenamiento y los agentes en páginas con publicidad, dejando permitidos los de búsqueda. Compruébalo pidiendo tu home con el user agent del bot y mirando el código de estado, no el robots.txt.

¿Sirve de algo el llms.txt?

Para posicionar en Google, no: Google publicó en junio de 2026 que no hace falta crear archivos de este tipo, y ningún gran proveedor de IA lo ha adoptado como señal de citación. Sí lo leen los asistentes de programación como Cursor, Claude Code o Copilot, así que tiene sentido si tu producto es documentación técnica.

¿Es verdad que cargar rápido multiplica por tres las citas en ChatGPT?

Esa cifra y otras parecidas circulan atribuidas al estudio de Princeton, que no mide velocidad de carga ni sitemaps ni frescura. Lo que sí midió Princeton fue el efecto de tácticas de redacción: añadir citas textuales mejoró en torno al 42 % y añadir estadísticas alrededor del 33 %. Para factores técnicos, el estudio de AirOps de abril de 2026 da cifras reales y bastante más modestas.

¿Qué predice mejor que ChatGPT te cite?

Posicionar bien en búsqueda tradicional. En el estudio de AirOps, las páginas en primera posición se citaron el 58,4 % de las veces, frente al 14,2 % de las que estaban en la décima.

Mi web es WordPress, ¿me afecta esto?

El problema de renderizado, no: WordPress sirve HTML desde el servidor. Sí te afectan el bloque de rastreadores, el del CDN y el de cómo estructurar el HTML para que sea citable.

¿Tengo que migrar toda la web?

No. La decisión es por plantilla. Home, landings comerciales y contenido editorial a servidor; buscador interno, panel de usuario y checkout pueden quedarse en cliente. En un proyecto normal son cinco o seis plantillas.


14. Qué hacer con todo esto

Empieza por las dos pruebas que cuestan tres minutos: el curl con el user agent de GPTBot para ver si hay contenido, y el bucle de códigos de estado para descartar que te esté bloqueando el CDN. Con esas dos ya sabes si tienes el problema y de dónde viene.

Si lo tienes, no montes una migración. Haz la lista de plantillas, marca las cinco o seis que son argumento comercial y mueve solo esas. El resto puede seguir en cliente sin que pase nada.

Y revisa qué agentes tienes bloqueados. Es habitual encontrar webs que se sacaron de las citas de ChatGPT sin querer, buscando solo salir del entrenamiento de modelos.

Cuándo te compensa pedir ayuda

Hazlo tú si controlas el framework y el despliegue. Las pruebas son de una tarde y la migración por plantillas es un trabajo acotado que cualquier equipo de front puede planificar.

Busca ayuda cuando el front lo lleve un proveedor externo y no sepas dónde acaba el problema de renderizado y dónde empieza el de infraestructura, cuando tengas un headless CMS de por medio con varias capas de caché, o cuando lleves meses viendo que tus competidores salen citados en respuestas de IA y tú no, sin saber por qué.

El siguiente paso

En Consultoría SEO Sevilla auditamos exactamente esto: qué recibe cada tipo de rastreador de tu web, dónde se está perdiendo la visibilidad y qué plantillas hay que mover, con las tareas escritas para que tu equipo de desarrollo las ejecute sin traducciones por el medio.

Si quieres saber qué ve ChatGPT de tu web, mira en qué consiste la auditoría SEO técnica o escríbenos y lo comprobamos.

Y para seguir: menús en JavaScript: por qué Google puede no estar viendo tu navegación y facetas y filtros: por qué el canonical no es la solución.