01Qué es y cómo funciona
Una Single-page application sirve un shell de HTML mínimo y depende de JavaScript para obtener datos y actualizar el DOM. Cuando un usuario hace clic en un enlace, la SPA intercepta la navegación, solicita solo los datos necesarios (a menudo JSON) y vuelve a renderizar la vista en el navegador. Esto crea una experiencia rápida, similar a una aplicación. Para los motores de búsqueda, el HTML inicial suele contener poco o ningún contenido. Un rastreador que no ejecute JavaScript verá una página vacía. Los rastreadores modernos como Googlebot sí ejecutan JavaScript, pero lo hacen en una segunda fase, lo que puede retrasar la indexación. La clave es que el contenido no está en el HTML puro; aparece solo después de que se ejecuta JavaScript.
Una SPA es un sitio web que funciona como una aplicación de escritorio: se carga una vez y luego cambia el contenido de la página sobre la marcha. Los motores de búsqueda necesitan ejecutar JavaScript para ver qué hay realmente en la página.
02Qué hacer al respecto
Haz que el contenido esté disponible sin requerir la ejecución de JavaScript. El enfoque más fiable es el renderizado del lado del servidor (SSR) o la generación estática: el servidor devuelve el HTML completamente renderizado. Si eso no es posible, utiliza el renderizado dinámico: sirve una captura estática a los bots y la SPA a los usuarios. Alternativamente, asegúrate de que tu SPA utilice la History API para el enrutamiento, no fragmentos de hash, y que todo el contenido importante esté incluido en la carga inicial de HTML. Realiza pruebas con la herramienta de Inspección de URLs de Google para ver qué ve Googlebot. Además, evita bloquear archivos JavaScript en el robots.txt; los rastreadores los necesitan para renderizar.
03Cómo se mide o se detecta
Comprueba la herramienta de Inspección de URLs de Google Search Console: muestra el HTML renderizado que ve Googlebot. Si el HTML renderizado contiene tu contenido, todo está bien. Consulta también el informe de "Cobertura" para detectar problemas de indexación. Otra señal es si tus páginas aparecen en los resultados de búsqueda para sus palabras clave objetivo. Si no es así, y la página es una SPA, es probable que el renderizado sea el culpable. También puedes usar la función "Ver como Googlebot" (ahora parte de la Inspección de URLs) para ver la página renderizada. Para una comprobación rápida, desactiva JavaScript en tu navegador y carga la página; si falta el contenido, tienes un problema.
Cómo lo formula el catálogo
Una single-page application (SPA), o aplicación de página única, es una aplicación web ó un sitio web que cabe en una sola página con el propósito de dar una experiencia más fluida a los usuarios, como si fuera una aplicación de escritorio.
04Errores comunes
- Asumir que Googlebot no ejecuta JavaScript: sí lo hace, pero solo después de una cola de espera, por lo que el contenido puede retrasarse.
- Uso de enrutamiento basado en hash (#/page) en lugar de la History API; los hashes no se tratan como URLs separadas.
- Bloquear archivos JavaScript o CSS en robots.txt, lo que impide el renderizado.
- Depender del renderizado en el lado del cliente para contenido que no está en el HTML inicial.
- Olvidar actualizar el `` y la meta description dinámicamente para cada ruta.
05Límites y confusiones
Una SPA no es lo mismo que una progressive web app (PWA), aunque una PWA puede ser una SPA. Además, no todas las SPA necesitan un tratamiento especial: si el contenido es estático y está incluido en el HTML inicial, no hay problema. Los desafíos surgen cuando el contenido se carga de forma asíncrona tras la interacción del usuario o cuando la página utiliza enrutamiento en el lado del cliente. A menudo se confunden las SPAs con las multi-page applications (MPAs) porque ambas pueden tener múltiples URLs. La diferencia es que una SPA no solicita un nuevo documento HTML para cada ruta; reescribe el actual. Esta distinción es importante para el SEO porque cada ruta en una SPA debe ser una URL separada que devuelva el mismo shell de HTML.
06Ejemplo práctico
Imagina una SPA de e-commerce que carga una página de producto. El HTML inicial contiene solo el header y el footer. El título, la descripción y el precio del producto se obtienen a través de una API y se insertan en el DOM después de unos segundos. Googlebot renderiza la página, pero el contenido no está en el HTML inicial. Para solucionar esto, puedes implementar server-side rendering para la página del producto: el servidor devuelve el HTML completo con los detalles del producto. Ahora Googlebot ve el contenido de inmediato y la página puede ser indexada. Alternativamente, podrías usar dynamic rendering para servir una captura de HTML estático a los bots.
La entrada anterior está escrita por GetLoopLoop. Lo que sigue es lo que los catálogos independientes recogen sobre el mismo término; nada de ello es la fuente de esta página.
- También llamado
- SPA
- Tipo de cosa
- tipo de sitio web
El mismo término en Wikipedia
Catalogado en 23 idiomas07Preguntas frecuentes
¿En qué se diferencia una single-page application de un sitio web regular?
Un sitio web regular carga una nueva página HTML en cada navegación, mientras que una single-page application carga un shell de HTML único y actualiza el contenido dinámicamente mediante JavaScript. Esto cambia la forma en que los motores de búsqueda rastrean y renderizan tu contenido, ya que deben ejecutar JavaScript para ver la página completa.
¿Debería construir mi sitio como una single-page application si me importa el SEO?
Depende. Si necesitas una aplicación altamente interactiva, una single-page application puede funcionar, pero debes implementar server-side rendering o prerendering para que el contenido sea visible para los motores de búsqueda. Para sitios con mucho contenido, un enfoque tradicional de múltiples páginas es más sencillo y confiable para el SEO.
¿Cómo rastrean y renderizan los motores de búsqueda una single-page application?
Google utiliza un proceso de dos fases: primero obtiene el HTML sin procesar y luego ejecuta JavaScript con un navegador headless para renderizar la página. Lo que se indexa es el HTML renderizado, por lo que debes asegurarte de que tu JavaScript sea rastreable y que el contenido crítico esté disponible sin necesidad de ejecución.
¿Sigue Google renderizando JavaScript e indexando contenido de single-page application?
Sí, Google renderiza JavaScript, pero no siempre es inmediato y puede consumir muchos recursos. Existen límites en cuanto al número de páginas que Google renderizará, por lo que es más seguro pre-renderizar el contenido crítico o utilizar renderizado dinámico si tienes una SPA de gran tamaño.
¿Qué pasa si no hago que mi single-page application sea rastreable?
Los motores de búsqueda verán una página HTML vacía o mínima y tu contenido no se indexará. Notarás una caída en el tráfico orgánico y podrás confirmar el problema utilizando la herramienta de Inspección de URLs de Google Search Console para ver el HTML renderizado que ve Googlebot.
¿Cuánto tarda Google en indexar el contenido de una single-page application después de que lo haya solucionado?
Varía de días a semanas. Puedes acelerar la indexación enviando la URL en Google Search Console y asegurándote de tener respuestas rápidas del servidor. Monitoriza la herramienta de Inspección de URLs para ver cuándo el HTML renderizado coincide con tu contenido esperado.
08Preguntado en voz alta
El mismo término en las palabras que alguien usa al hablar con un asistente en lugar de escribir en un buscador: escrito desde la situación, y por eso cada pregunta lleva la situación de la que salió.
Es una single-page application. El shell de HTML es mínimo y todo lo demás se renderiza mediante JavaScript, razón por la cual los motores de búsqueda podrían no ver tu contenido a menos que lo pre-renderices.
Es una single-page application. Es probable que ese sea el problema porque Google necesita ejecutar JavaScript para ver el contenido. Tendrás que añadir server-side rendering o prerendering para solucionarlo.
Te enfrentas a una single-page application. Antes del lanzamiento, debes asegurarte de que el contenido sea rastreable o perderás visibilidad en las búsquedas. Revisa el HTML renderizado en Search Console para ver qué es lo que ve Google.
Míralo en Molfar
URL audit de Molfar compara el HTML original de una página con la página tras el JavaScript —title, canonical, meta robots, H1, descripción, enlaces añadidos y número de palabras— y lo marca en rojo cuando el JavaScript cambia el canonical o el meta robots.
Cómo funciona esta pantalla (en inglés)Sobre Molfar, nuestro rastreador de escritorio