103 Early Hints: dale ventaja al navegador
103 Early Hints es una respuesta provisional con la que el servidor envía pistas preload y preconnect antes de tener lista la respuesta final.
103 Early Hints permite que un servidor envíe pistas sobre los recursos críticos antes de tener lista la respuesta real. Mientras tu aplicación todavía construye el HTML, el navegador ya puede abrir conexiones y empezar a descargar la hoja de estilos, las fuentes o la imagen principal que la página va a necesitar.
Definición
El 103 procede de la RFC 8297, una RFC experimental de 2017. Es una respuesta informativa que lleva cabeceras Link, normalmente con rel=preload o rel=preconnect. Siempre le sigue una respuesta final, y el servidor puede enviar más de un 103 antes. Considera las pistas solo como una ventaja inicial: mantén las mismas cabeceras Link en el 200 final para que los clientes que ignoran el 103 también las reciban. La RFC advierte además de que algunos clientes HTTP/1.1 gestionan mal las respuestas informativas, por eso los servidores suelen enviar el 103 únicamente sobre HTTP/2 o HTTP/3.
Dónde ayuda
- Páginas con un “tiempo de reflexión” alto en el servidor (consultas a base de datos, personalización, renderizado en el servidor), donde el navegador esperaría de brazos cruzados al primer byte (TTFB).
- El CSS crítico, las fuentes web y la imagen que determina tu Largest Contentful Paint.
- Orígenes de terceros que siempre necesitas, como el servidor de fuentes, mediante
preconnect.
Chrome usa Early Hints en las navegaciones entre páginas. Las CDN pueden generar el 103 por ti: Cloudflare, por ejemplo, puede convertir las cabeceras Link de tus respuestas en Early Hints. En Node.js, response.writeEarlyHints() lo envía directamente.
Impacto en el SEO
Early Hints es una mejora de velocidad para los visitantes reales. No cambia cómo se indexa una URL: los rastreadores actúan según el código de estado final, y la documentación de Google sobre códigos de estado no menciona el 103. Cualquier beneficio es indirecto, por unos Core Web Vitals mejores para los usuarios. Eso sí, no abuses de las pistas: precargar archivos que la página no necesita malgasta ancho de banda y compite con los críticos.
Cómo comprobarlo
Nuestros comprobadores, incluido el comprobador de cabeceras HTTP, informan de la respuesta final, así que muestran el 200 y sus cabeceras Link. Para ver el 103 provisional, usa curl -v o el panel Network de las DevTools de Chrome. Mide el efecto con el test de velocidad de página.
HTTP/2 103
link: </assets/site.css>; rel=preload; as=style
link: <https://fonts.example-cdn.com>; rel=preconnect
HTTP/2 200
content-type: text/html; charset=utf-8
link: </assets/site.css>; rel=preload; as=style Preguntas frecuentes
¿103 Early Hints mejora el posicionamiento?
No directamente. Puede hacer que las páginas carguen más rápido para los visitantes, lo que ayuda a la experiencia de usuario y a los Core Web Vitals, pero la indexación se basa en la respuesta final, no en la pista.
¿Qué pistas puedo enviar en una respuesta 103?
Las cabeceras Link con rel=preload y rel=preconnect son las que los navegadores aplican. Da pistas solo de los recursos que necesitan casi todos los visitantes, como la hoja de estilos principal o el servidor de fuentes.
¿Por qué no veo el 103 en mi comprobador de códigos de estado?
La mayoría de los comprobadores informan solo de la respuesta final, normalmente un 200. Usa curl -v o el panel Network de las DevTools del navegador para ver las respuestas 103 provisionales.