El encabezado HTTP 304 Not Modified informa a Googlebot que una página solicitada no ha cambiado desde su visita anterior, lo que permite al rastreador omitir la descarga de todo el cuerpo de la respuesta. Al utilizar este código de estado, su servidor confirma que la versión existente almacenada en el índice de Google sigue siendo actual. Esta comunicación ahorra un ancho de banda y una potencia de procesamiento del servidor significativos tanto para el propietario del sitio web como para la infraestructura de búsqueda de Google.
Gestionar un sitio web de manera eficiente requiere una comprensión clara de cómo los rastreadores interactúan con el hardware de su servidor. Cuando Googlebot solicita una página, no siempre necesita recibir el archivo HTML completo para confirmar que el contenido sigue siendo relevante. El código de estado 304 sirve como una señal de validación ligera, confirmando que el estado de la página sigue siendo idéntico al último rastreo documentado. Implementar este protocolo correctamente es una práctica estándar para mantener una arquitectura web de alto rendimiento.

¿Por qué Googlebot comprueba el código de estado 304?
Googlebot opera con un presupuesto de rastreo específico para cada dominio, que representa la cantidad de tiempo y recursos que el rastreador asigna a su sitio. Si su servidor está configurado para devolver un código de estado 304 cuando el contenido es idéntico, el rastreador reconoce que no necesita volver a procesar todo el cuerpo de la página. Esto evita que el bot realice tareas redundantes que no añaden valor al índice.
En una cuenta típica, la sobrecarga técnica puede acumularse rápidamente si el servidor fuerza una descarga completa para cada solicitud. Al proporcionar una respuesta 304, el servidor minimiza la cantidad de datos transferidos a través de la red. Esta eficiencia garantiza que el rastreador pase su tiempo limitado descubriendo nuevas páginas o identificando actualizaciones importantes, en lugar de indexar repetidamente archivos estáticos que permanecen sin cambios durante meses o incluso años.
¿Cómo funciona el proceso de solicitud condicional?
El mecanismo se basa en dos encabezados HTTP específicos: If-Modified-Since y ETag. Cuando Googlebot solicita una página que ha visitado antes, incluye la fecha de su última visita o el identificador ETag en los encabezados de la solicitud. Esto permite al servidor comparar la versión actual del recurso con la versión vista anteriormente por el motor de búsqueda.

- Googlebot envía una solicitud que contiene el encabezado ‘If-Modified-Since’ con la marca de tiempo de la última versión almacenada en caché.
- Su servidor comprueba la fecha de modificación del archivo con esa marca de tiempo.
- Si el archivo no ha cambiado, el servidor devuelve un código de estado 304 sin el cuerpo de la respuesta.
- Googlebot confirma que el contenido está actualizado y pasa a la siguiente URL en su cola.
Cuando el servidor detecta una coincidencia de ETag, evita el trabajo pesado de regenerar o volver a obtener todo el documento. En su lugar, envía un breve encabezado de respuesta HTTP. Este protocolo de enlace es extremadamente rápido en comparación con una transferencia completa de documentos, lo que reduce significativamente la latencia para cada evento de rastreo. Es un método fundamental para optimizar la comunicación entre su entorno de alojamiento y los centros de datos de Google.
¿Cuáles son los beneficios de una implementación correcta del 304?
Servir correctamente los encabezados 304 reduce la carga del servidor y la latencia. Cuando su servidor no tiene que generar el HTML, CSS o JavaScript completo para cada solicitud de rastreo, ahorra memoria y ciclos de CPU. Esto es particularmente útil para sitios web a gran escala con miles de páginas que no cambian a diario, como secciones de archivo o páginas de políticas.
Además, reducir el total de bytes descargados por solicitud puede conducir a ciclos de rastreo más rápidos. Si su servidor tiene dificultades actualmente con niveles altos de tráfico durante los picos de rastreo, las respuestas 304 pueden actuar como una válvula de alivio de presión. Al servir estos códigos de estado, permite que Googlebot termine su tarea más rápido, lo que resulta en un uso más eficiente de su ancho de banda y, potencialmente, una mayor frecuencia de rastreo para las páginas que realmente importan.
Google utiliza protocolos modernos para ahorrar recursos en ambos extremos del proceso de rastreo.
Google Search Central
Cómo aplica Alien Road esta tecnología
En Alien Road, realizamos un análisis profundo de los registros del servidor para garantizar que Googlebot reciba códigos de estado 304 cuando corresponda. Comenzamos revisando la lógica ‘If-Modified-Since’ y ‘ETag’ dentro de la configuración de su servidor o marco de aplicación. Para un cliente típico de comercio electrónico, a menudo encontramos que las páginas de descripción de productos estáticos se vuelven a rastrear innecesariamente porque el servidor no está validando correctamente la fecha de última modificación.
Nuestro proceso implica auditar los encabezados de respuesta del servidor durante una simulación de solicitudes de Googlebot. Comprobamos si el servidor evalúa adecuadamente los encabezados condicionales enviados por el rastreador. Si encontramos que el servidor devuelve un 200 OK para cada solicitud, incluso para archivos que no han cambiado, implementamos ajustes del lado del servidor para garantizar que los encabezados se envíen correctamente.
- Revise los registros de acceso del servidor para identificar patrones de rastreo de alta frecuencia en activos estáticos.
- Verifique que la generación de ETag esté habilitada y coincida correctamente con las versiones de los archivos.
- Pruebe las respuestas del servidor utilizando herramientas como cURL para asegurarse de que se devuelvan respuestas 304 para archivos sin cambios.
- Supervise las estadísticas de rastreo de Google Search Console para confirmar una reducción en el total de bytes descargados por día.
¿Es el 304 mejor que una respuesta 200 OK?
Una respuesta 200 OK indica que el servidor entregó con éxito el contenido de la página, lo que requiere una transferencia de datos completa. Por el contrario, una respuesta 304 es una señal ligera que evita la transferencia completa. Si bien una respuesta 200 es necesaria para contenido nuevo o actualizado, la respuesta 304 es el resultado ideal para páginas estáticas, ya que confirma la frescura sin la sobrecarga de recursos.
Elegir entre estas respuestas no es una cuestión de preferencia, sino de precisión del protocolo. Si sirve un 304 cuando el contenido realmente ha cambiado, Googlebot continuará usando la versión obsoleta en su caché. Es por eso que probar la configuración de su servidor es una parte fundamental de cualquier auditoría técnica. El objetivo es proporcionar al motor de búsqueda la información más precisa lo más rápido posible.
Por dónde empezar esta semana
Comience comprobando los encabezados de sus páginas rastreadas con más frecuencia utilizando la pestaña Red en las herramientas de desarrollo de su navegador. Busque los encabezados ‘ETag’ o ‘Last-Modified’ en la respuesta. Si faltan estos encabezados, es posible que su servidor no admita correctamente las solicitudes condicionales, y debería actualizar la configuración de su servidor web, como Apache o Nginx, para incluir estas configuraciones.
Una vez que haya confirmado que se están enviando los encabezados, vigile los registros de su servidor durante los próximos días. Filtre los registros para los agentes de usuario de Googlebot y busque un aumento en los códigos de respuesta 304. Este es un indicador claro de que su servidor se está comunicando con éxito con el rastreador y preservando sus recursos para cuando realmente se necesiten.