js

Robots.txt y control de crawling: qué dejás entrar, qué dejás indexar

Robots.txt le dice a los crawlers qué URLs PUEDEN visitar. Las directivas noindex, nofollow y X-Robots-Tag les dicen qué hacer con lo que ya visitaron. Son herramientas distintas que se confunden todo el tiempo. Mezclar las dos es uno de los errores SEO más comunes y más caros.

Tipo · concepto técnicoCategoría · IndexaciónActualizado · 2026

La distinción fundamental

Hay dos cosas separadas que un crawler hace con una URL. Primero la rastrea (crawl): la pide al servidor y descarga el HTML. Después la indexa: decide si la guarda en su índice para servir en SERP. Robots.txt controla la primera. Las directivas meta robots y X-Robots-Tag controlan la segunda.

Si bloqueás una URL en robots.txt, Google no la rastrea — pero puede indexarla igual si la encuentra por links externos. Aparece en SERP con un snippet vacío que dice “no description available”. Si querés que NO aparezca en SERP, no alcanza con robots.txt: necesitás permitir el crawl Y poner noindex.

Robots.txt: el portero del crawler

Robots.txt es un archivo de texto en la raíz del dominio (/robots.txt) que sigue un estándar de 1994 — sí, treinta años. La sintaxis es simple: declarás un User-agent y debajo las reglas Disallow o Allow.

# Ejemplo: bloquear área admin pero dejar el resto User-agent: * Disallow: /wp-admin/ Allow: /wp-admin/admin-ajax.php Sitemap: https://sebastianquerelos.com/sitemap.xml

Reglas que veo violadas todo el tiempo: bloquear /wp-admin/ y olvidarse de permitir admin-ajax.php (rompe el preview de Elementor), bloquear /wp-content/ entero (rompe CSS y JS — Google necesita renderizar la página), o intentar usar robots.txt para ocultar URLs sensibles (no funciona — robots.txt es público y funciona como un mapa de qué NO querés que se vea).

Punto importante en 2026: los crawlers de IA (GPTBot, ClaudeBot, PerplexityBot, Google-Extended) tienen sus propios user-agents. Si querés bloquearlos para que no usen tu contenido en training, los declarás explícitamente. La política está en evolución y vale la pena revisarla cada 6 meses.

Noindex: la directiva que sí saca de SERP

Noindex es una directiva que se declara dentro del HTML (meta robots) o en el header HTTP (X-Robots-Tag). Es lo que efectivamente le dice a Google “podés rastrearme pero no me indexes”. Para que funcione, la URL tiene que ser rastreable — si está bloqueada en robots.txt, Google nunca lee el noindex y termina indexándola igual.

<!– En el HTML –> <meta name=”robots” content=”noindex,follow”>

El “follow” después del noindex importa: le dice a Google “no indexes esta página pero seguí los links salientes”. Útil para páginas de paginación profunda que pasan link equity a productos pero no querés que rankeen ellas mismas.

X-Robots-Tag: noindex para PDFs e imágenes

X-Robots-Tag hace lo mismo que meta robots pero a nivel de header HTTP. Es la única forma de declarar noindex en archivos no-HTML: PDFs, imágenes, videos. Se configura en el servidor (Apache, Nginx) o vía CDN.

# Apache: noindex para todos los PDFs <FilesMatch “\.pdf$”> Header set X-Robots-Tag “noindex, nofollow” </FilesMatch>

Caso típico: un sitio enterprise tiene cientos de PDFs históricos en el dominio que rankean para queries irrelevantes y canibalizan páginas reales. X-Robots-Tag con noindex resuelve el problema en una regla de servidor.

Sitemap.xml: la lista de lo que sí querés indexar

Sitemap.xml es un archivo XML que lista las URLs canónicas que querés que Google rastree e indexe. Es complementario a robots.txt — robots.txt dice qué bloquear, sitemap dice qué priorizar.

El sitemap NO garantiza indexación. Es una sugerencia. Pero ayuda en sitios grandes a que Google descubra páginas nuevas más rápido y entienda la estructura. La buena práctica: sitemap.xml solo con URLs canónicas, indexables, status 200, sin redirects ni errores. Si tu sitemap tiene URLs con noindex o 404, Google empieza a desconfiar del sitemap entero.

Hacer

Robots.txt + Sitemap

Robots.txt bloquea áreas no rastreables (admin, búsquedas internas con parámetros). Sitemap lista lo que querés que indexen. Los dos son complementarios.

Hacer

Noindex con crawl permitido

Para páginas que no querés en SERP pero pasan link equity (paginación, filtros), noindex,follow y NO bloquear en robots.txt.

Evitar

Bloquear en robots.txt + esperar desindexación

Si querés sacar una URL del índice, no la bloquees en robots.txt — Google nunca leerá el noindex. Permitir crawl + noindex, luego cuando esté fuera, bloquear.

Evitar

Bloquear /wp-content/ o assets

Google necesita CSS y JS para renderizar la página. Bloquear assets puede caer ranking porque Google no puede evaluar UX/mobile-friendliness.

Cómo se aplica en la práctica

El flujo en proyectos enterprise: auditar robots.txt actual (¿qué está bloqueado y por qué?), verificar X-Robots-Tag en assets sensibles (PDFs, sandbox subdomains), validar sitemap.xml contra index coverage de GSC, y construir un plan de desindexación para URLs legacy que están canibalizando. La metodología completa de auditoría está en /servicios/seo-tecnico/.