Rendimiento
Diagnóstico de TTFB: aislando causas y su impacto en el rendimiento
Descubre cómo diagnosticar cuellos de botella de DNS, rutas y backend en el Time to First Byte y comprende su efecto real en las Core Web Vitals (LCP).
Lectura ejecutiva
Conclusiones principales
- El TTFB no es una métrica Core Web Vitals, pero establece el límite inferior para el LCP.
- Para diagnosticar el TTFB, debes separar el tiempo de red del tiempo de backend.
- Los datos de campo muestran la realidad de la latencia del usuario; los datos de laboratorio ayudan en el diagnóstico técnico.
Resolver un Time to First Byte (TTFB) lento rara vez es solo cuestión de actualizar la infraestructura. La decisión técnica requiere saber exactamente dónde se pierden los milisegundos antes de refactorizar código o cambiar de proveedor.
En términos simples, el TTFB es el tiempo que espera el navegador para recibir el primer byte de respuesta tras solicitar una URL. Refleja el costo de descubrir dónde está el servidor, establecer una conexión segura y esperar a que el sistema procese la página.
Esta guía investiga las causas de este retraso y cómo desglosarlas para actuar. Nos basamos en las especificaciones de red de Chrome, métricas del Chrome User Experience Report (CrUX) y la división de tiempos del panel de red de los navegadores.
¿Cuál es el impacto del TTFB en las Core Web Vitals?
El TTFB no forma parte del grupo principal de las Core Web Vitals, pero es un precursor obligatorio del Largest Contentful Paint (LCP).
Si tu TTFB es de 1.5 segundos, tu LCP nunca será menor que eso, sin importar cuán optimizados estén tu CSS o tus imágenes. El tiempo que el navegador pasa esperando el HTML es tiempo en el que no puede descargar hojas de estilo, descubrir fuentes o procesar el árbol del documento. Reducir el TTFB es la forma más garantizada de bajar el piso de tu LCP.
¿Cómo aislar las causas de un TTFB lento?
El mayor error al depurar el TTFB es tratarlo como una única métrica del servidor. En realidad, es la suma de cuatro pasos distintos. Para diagnosticar el problema, debes analizar la cascada de red utilizando herramientas como el panel Network de Chrome DevTools o WebPageTest.
1. Resolución DNS y Redireccionamientos
Antes de comunicarse con el servidor, el navegador necesita traducir el dominio a una dirección IP. Si tu configuración DNS es lenta, o si hay múltiples redireccionamientos HTTP (ej. http:// a https://www a https://), la latencia se acumula incluso antes de que comience la conexión real.
- Evidencia: Tiempos altos de "DNS Lookup" o respuestas
301/302constantes. - Acción: Cambia a un proveedor de DNS más rápido, implementa HSTS y evita cadenas de redireccionamiento.
2. Conexión TCP y Negociación TLS
Una conexión segura exige viajes de ida y vuelta (round trips) entre el cliente y el servidor. Si el servidor está físicamente lejos del usuario, la latencia de red aumenta exponencialmente.
- Evidencia: Valores altos en "Initial connection" y "SSL".
- Acción: Usa una Content Delivery Network (CDN) para terminar la conexión TLS físicamente más cerca del usuario. Implementa HTTP/2 o HTTP/3 para reutilizar conexiones.
3. Enrutamiento y CDN (Caché)
Si la página es estática y pasa por una CDN, el tiempo debería ser mínimo. Si el TTFB es alto aquí, a menudo indica que la CDN está fallando en entregar el caché (cache miss) y está enrutando la solicitud al origen.
- Evidencia: Encabezados HTTP como
x-cache: MISSo tiempos altos de "Waiting (TTFB)" en activos estáticos. - Acción: Verifica tus reglas de Cache-Control y configuración de Edge Caching.
4. Procesamiento en el Servidor (Backend/Base de datos)
Para páginas dinámicas o sin caché, el tiempo de "Waiting" revela cuánto tardó el servidor en consultar la base de datos, renderizar la plantilla (SSR) y devolver la respuesta.
- Evidencia: Tiempos de "Waiting" severos a pesar de una conexión y DNS rápidos en páginas que consultan bases de datos.
- Acción: Investiga consultas N+1, falta de índices en la base de datos, añade caché a nivel de aplicación (ej. Redis) y perfila la ejecución del lado del servidor.
Limitaciones del diagnóstico: campo vs. laboratorio
El TTFB varía enormemente dependiendo de la calidad de la conexión del usuario. Una prueba de laboratorio con una red de fibra óptica puede mostrar un TTFB rápido, ocultando las latencias que experimentan los usuarios reales en redes 3G o 4G fluctuantes (datos de campo).
Falso positivo: Enfocarse en un TTFB casi nulo a expensas de la arquitectura de la página. En las SPAs (Single Page Applications) sin SSR, el HTML llega rápido (TTFB excelente), pero la página permanece en blanco hasta que el JavaScript se descarga y ejecuta, penalizando severamente el LCP.
Plan de acción para tu equipo
- Accede a datos reales: Revisa CrUX (vía PageSpeed Insights o Remountly) para conocer la distribución real de tu TTFB. El objetivo aceptable es menos de 800ms en campo (aunque < 200ms es ideal).
- Aísla en la pestaña Network: Realiza una solicitud con el caché deshabilitado y anota los tiempos de DNS, TCP/SSL y Waiting.
- Corta la latencia obvia: Habilita una CDN y corrige los redireccionamientos redundantes.
- Optimiza el generador: Si el cuello de botella está en el backend, usa un APM (Application Performance Monitoring) para identificar consultas de base de datos lentas.
- Verifica: Despliega la corrección y monitorea los datos de campo durante 28 días.
Usa herramientas dedicadas para monitorear la evolución de tus métricas continuamente. Remountly puede ayudarte a aislar latencias de campo y validar correcciones de rendimiento de forma práctica.
Respuestas directas
Preguntas frecuentes
¿Qué es el TTFB (Time to First Byte)?
Es el tiempo que transcurre desde el inicio de la navegación del usuario hasta que el navegador recibe el primer byte de la respuesta del servidor.
¿Un TTFB rápido garantiza un sitio web rápido?
No necesariamente. Un TTFB rápido es necesario para una carga rápida, pero si la página depende en gran medida de JavaScript que bloquea el renderizado (Render-Blocking Resources), la experiencia del usuario seguirá siendo lenta.