X-Robots-Tag: sintaxis, cuándo usarlo y cómo comprobar la cabecera
El X-Robots-Tag es una cabecera de respuesta HTTP que da a los buscadores las mismas reglas que la meta robots, como noindex o nofollow, sin tocar el HTML. Es la única opción para archivos sin <head>, como PDFs o imágenes, y nunca aparece en el código fuente: se comprueba con curl -I o con las DevTools.
Cómo es la cabecera
Una respuesta que la incluye tiene este aspecto:
HTTP/2 200
content-type: application/pdf
x-robots-tag: noindex, nofollow
Puedes poner varias directivas en la misma cabecera, separadas por comas, o enviar la cabecera más de una vez. Las que más vas a usar:
noindex: deja la URL fuera de los resultadosnofollow: no seguir los enlaces de la páginanone: equivale anoindex, nofollownosnippet: sin fragmento de texto en los resultadosnoimageindex: no indexar las imágenes de la páginaunavailable_after: 2026-12-31: dejar de mostrar la URL después de esa fecha
Una directiva también puede dirigirse a un solo rastreador si lo nombras delante: X-Robots-Tag: googlebot: noindex. Sin nombre, vale para todos. Si dos reglas chocan, Google aplica la más restrictiva.
Cuándo usarlo en lugar de la meta robots
La meta necesita una página HTML que puedas editar. La cabecera funciona con cualquier cosa que devuelva el servidor, así que es la herramienta adecuada para PDFs, archivos Word, imágenes, feeds y endpoints JSON. Un caso típico es la tarifa en PDF que posiciona por encima de la ficha de producto a la que pertenece.
También sirve cuando puedes cambiar la configuración del servidor pero no las plantillas, o cuando una regla debe cubrir un directorio entero.
Lo que no hace es bloquear el rastreo. Google tiene que descargar la URL para leer la cabecera: si el robots.txt la bloquea, el noindex nunca se ve. Nuestra guía sobre cómo revisar el robots.txt cubre esa parte.
Configurarlo en Apache, nginx y una CDN
En Apache con mod_headers, en el .htaccess o en el vhost:
<FilesMatch "\.pdf$">
Header set X-Robots-Tag "noindex, nofollow"
</FilesMatch>
En nginx:
location ~* \.pdf$ {
add_header X-Robots-Tag "noindex, nofollow";
}
Ojo con nginx: un add_header dentro de un bloque location sustituye los add_header heredados del bloque server. En una CDN o plataforma de hosting la misma cabecera se define con reglas de cabeceras de respuesta, por ejemplo las Transform Rules de Cloudflare, el archivo _headers de Netlify o la clave headers de vercel.json.
Cómo comprobarlo
Desde la terminal:
curl -sI https://ejemplo.es/archivo.pdf | grep -i x-robots-tag
curl -sI -A "Googlebot" https://ejemplo.es/ | grep -i x-robots-tag
La segunda línea se identifica como Googlebot y destapa las reglas que solo saltan con rastreadores. En las DevTools de Chrome, abre la pestaña Network, recarga, haz clic en el documento y lee los Response Headers. En Search Console, la inspección de URLs señala la cabecera como motivo cuando bloquea la indexación, en la línea "¿Se permite la indexación?".
Los errores que desindexan una web entera
El clásico es la cabecera que se quedó del staging. Alguien añade Header set X-Robots-Tag "noindex" para mantener la web de pruebas fuera de Google, y la configuración pasa a producción con el lanzamiento. En el HTML no hay ni rastro. La guía para detectar un noindex en producción repasa las vías habituales.
Después viene la regla demasiado amplia: un patrón FilesMatch pensado para PDFs que atrapa todas las URLs, una cabecera definida a nivel de servidor en vez de en una sola location, o una regla de la CDN aplicada a toda la zona en lugar de a una ruta.
Y por último las señales contradictorias. Una página con <meta name="robots" content="index"> y una cabecera X-Robots-Tag: noindex se queda con el noindex, porque gana la regla más restrictiva. La guía de la etiqueta noindex explica cómo combina Google las dos.
Una alerta cuando aparece un noindex en la cabecera
El escáner SEO de Deltio lee las cabeceras de respuesta además del HTML en cada URL que escanea. Busca el noindex en las metas robots y googlebot y en la cabecera X-Robots-Tag, y compara cada escaneo con el anterior. Cuando una página indexable empieza a devolver noindex, recibes una alerta por email o Slack. Los escaneos son automáticos, más los manuales (3 al día en Starter).
La alerta cubre el noindex. Para el resto de directivas, curl sigue siendo la comprobación. Starter cuesta £24 al mes, o £20 con pago anual, y puedes probarlo gratis 14 días.
Preguntas frecuentes
- ¿Es mejor el X-Robots-Tag o la meta robots?
- Para Google tienen el mismo efecto. La meta es más cómoda en páginas HTML gestionadas con un CMS, mientras que la cabecera es la única opción para PDFs, imágenes y otros archivos no HTML, y encaja con reglas aplicadas a directorios enteros desde el servidor.
- ¿Puedo poner noindex en el robots.txt?
- No. Google dejó de admitir las reglas noindex en el robots.txt en 2019. Para sacar una URL del índice usa la meta robots o la cabecera X-Robots-Tag, y deja que el robots.txt permita rastrear esa URL para que Google pueda leer la directiva.
- ¿Bing admite la cabecera X-Robots-Tag?
- Sí. Bing lee el X-Robots-Tag y admite las directivas habituales como noindex y nofollow. Las directivas dirigidas a un user agent concreto, como googlebot, solo afectan a ese rastreador.
- ¿Cómo saco rápido un PDF de Google?
- Sirve el PDF con la cabecera X-Robots-Tag: noindex y espera a que Google lo vuelva a rastrear. Si tiene que desaparecer antes, la herramienta Retiradas de Search Console lo oculta durante unos seis meses mientras el noindex surte efecto.
- ¿Deltio me avisa si aparece un noindex en el X-Robots-Tag?
- Sí. El escáner SEO de Deltio revisa la cabecera X-Robots-Tag y las metas robots en cada URL escaneada y compara escaneos consecutivos. Si una página empieza a devolver noindex, envía una alerta por email o Slack.