AJAX es una técnica de desarrollo web que permite la comunicación asíncrona entre el navegador del cliente y el servidor.
Es un concepto fundamental para programadores que buscan mejorar la fluidez de sus aplicaciones web.
01Cómo funciona AJAX
AJAX se basa en el objeto XMLHttpRequest o en la más moderna API fetch para realizar peticiones HTTP en segundo plano. Cuando la petición finaliza, una función de callback procesa la respuesta —a menudo JSON o HTML— y actualiza el Document Object Model (DOM) para mostrar el nuevo contenido. Debido a que la petición es asíncrona, el navegador puede seguir ejecutando otros scripts y mantener la página interactiva mientras espera al servidor.
AJAX es una forma en la que una página web obtiene nueva información de un servidor y la muestra sin que toda la página se recargue.
02Qué hacer con AJAX esta semana
Primero, audite su sitio en busca de contenido cargado mediante AJAX que deba ser indexable, como detalles de productos o el cuerpo de los artículos. Segundo, asegúrese de que el mismo contenido esté disponible en el HTML inicial o pueda ser renderizado por Googlebot mediante renderizado en el lado del servidor (server-side rendering) o renderizado dinámico. Tercero, utilice la History API (pushState/replaceState) para actualizar la URL cuando AJAX cambie la vista, de modo que los usuarios puedan marcar la página en favoritos y compartir el estado. Cuarto, pruebe el resultado renderizado con la herramienta de Inspección de URLs en Google Search Console para confirmar que Google ve el contenido. Finalmente, añada un fallback de noscript que enlace a una versión estática de la página para aquellos navegadores o rastreadores que no puedan ejecutar JavaScript.
03Cómo detectar o medir el uso de AJAX
Abra las Chrome DevTools, vaya a la pestaña Network y filtre por XHR o fetch para ver las solicitudes en segundo plano activadas por acciones del usuario. Busque los payloads de las solicitudes y las respuestas que contengan el contenido que espera que aparezca en la página. En Google Search Console, utilice la herramienta de Inspección de URLs y haga clic en “Ver página probada” para ver el DOM renderizado; compárelo con el HTML inicial para detectar secciones completadas mediante AJAX. También puede realizar una auditoría del sitio con herramientas como Screaming Frog y habilitar el renderizado de JavaScript para ver qué elementos aparecen solo después de que se ejecutan los scripts.
04Errores comunes
- Bloquear URLs de JavaScript o AJAX en el robots.txt, lo que impide que Googlebot vea el contenido
- Depender únicamente de AJAX para cargar información esencial, como precios o descripciones de productos, sin un mecanismo de respaldo (fallback)
- Utilizar URLs con hashbang (#!) para cambios de estado sin proporcionar URLs pushState equivalentes
- Actualizar el DOM pero no cambiar la URL del navegador, lo que impide que el estado se pueda guardar en marcadores
- Asumir que las llamadas de AJAX se indexan instantáneamente; recuerda que Google primero debe renderizar la página
05Límites y confusiones
AJAX por sí mismo no es un factor de posicionamiento; solo afecta la forma en que se entrega el contenido. A menudo se confunde con las Single‑Page Applications (SPAs), pero una SPA es una arquitectura más amplia que puede usar AJAX para la navegación, mientras que AJAX puede usarse en sitios tradicionales de múltiples páginas. AJAX no reemplaza el renderizado del lado del servidor; si el HTML inicial carece de contenido crítico, es posible que Google no lo detecte a pesar de AJAX. Además, AJAX no puede usarse para establecer cookies o modificar encabezados de respuesta que afecten al almacenamiento en caché, a menos que el servidor lo permita explícitamente.
06Ejemplo práctico
El siguiente fragmento muestra una solicitud fetch que carga los últimos comentarios de un artículo y los inserta en la página.
`fetch('/api/comments?articleId=23')
.then(r => r.json())
.then(data => {
const list = document.getElementById('comments');
list.innerHTML = '';
data.forEach(c => {
const li = document.createElement('li');
li.textContent = c.text;
list.appendChild(li);
});
});`
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
- JavaScript y XML asíncronos
- Introducido
- 2005
- Nombrado por
- JavaScript, Extensible Markup Language
- Tipo de cosa
- acrónimo, sigla, lenguaje de programación funcional
El mismo término en Wikipedia
Catalogado en 62 idiomas07Preguntas frecuentes
¿Es AJAX lo mismo que una aplicación de una sola página (single-page application)?
No, AJAX es una técnica para el intercambio asíncrono de datos, mientras que una single-page application (SPA) es un patrón arquitectónico que puede utilizar AJAX entre otros métodos.
¿Debería usar AJAX para cargar contenido SEO crítico?
Utilice AJAX para mejoras de la interfaz de usuario (UI) no críticas, pero evite depender de él para el contenido SEO principal a menos que implemente renderizado del lado del servidor (server-side rendering) o renderizado dinámico.
¿Cómo gestiona un rastreador de motores de búsqueda el contenido cargado mediante AJAX?
Los rastreadores modernos pueden ejecutar JavaScript y seguir peticiones fetch/XHR, pero podrían omitir contenido que se carga solo tras la interacción del usuario o que requiere un estado complejo.
¿Sigue funcionando AJAX para el SEO en 2024?
Sí, AJAX sigue funcionando para el SEO siempre que el contenido sea accesible para los rastreadores, ya sea mediante renderizado o mediante HTML pre-renderizado.
¿Qué sucede si el contenido de AJAX no se indexa?
Si el contenido cargado mediante AJAX no se indexa, las páginas aparecerán vacías en los resultados de búsqueda, lo que provocará una pérdida de tráfico y un menor posicionamiento para esas palabras clave.
¿Cuánto tarda en aparecer el contenido cargado mediante AJAX en los resultados de búsqueda?
La indexación del contenido AJAX puede tardar desde unos pocos días hasta varias semanas, dependiendo del presupuesto de rastreo (crawl budget) y de la rapidez con la que se descubra el HTML renderizado.
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ó.
Por lo general, los detalles se cargan mediante una solicitud asíncrona que el rastreador podría no ejecutar, así que comprueba que el contenido también esté disponible en el HTML inicial o mediante renderizado del lado del servidor.
Sí, si las entradas se inyectan solo mediante solicitudes en segundo plano, es posible que los motores de búsqueda no las vean a menos que proporciones una captura renderizada.
Depende de si las respuestas XHR contienen el marcado relevante para el SEO; puedes añadir renderizado del lado del servidor o utilizar renderizado dinámico para ofrecer HTML estático a los bots.