Los rastreadores
automatizados de Google
admiten elRobots Exclusion Protocol (REP)
.
Esto significa que, antes de rastrear un sitio, los rastreadores de Google descargan y analizan el archivo robots.txt del sitio para extraer información sobre qué partes del sitio se pueden rastrear. El REP no es aplicable a los rastreadores de Google controlados por usuarios (por ejemplo, suscripciones a feeds) o rastreadores utilizados para aumentar la seguridad del usuario (por ejemplo, análisis de malware).
Esta página describe la interpretación del REP por parte de Google. Para ver el estándar original, consulte.

RFC 9309
Qué es un archivo robots.txt
Si no desea que los rastreadores accedan a secciones de su sitio, puede crear un archivo robots.txt con las reglas apropiadas. Un archivo robots.txt es un archivo de texto que contiene reglas sobre qué rastreadores pueden acceder a qué partes de un sitio. Por ejemplo, el archivo robots.txt para example.com puede tener este aspecto:
Si es nuevo en robots.txt, comience con nuestraintroducción a robots.txt
. También puede encontrar.
consejos para crear un archivo robots.txt
Ubicación del archivo y rango de validez Debe colocar el archivo robots.txt en el directorio de nivel superior de un sitio, en un protocolo compatible. La URL del archivo robots.txt distingue entre mayúsculas y minúsculas (como otras URL). En el caso de Google Search, los protocolos compatibles son HTTP, HTTPS y FTP. En HTTP y HTTPS, los rastreadores obtienen el archivo robots.txt con una solicitud GET HTTP no condicional; en FTP, los rastreadores utilizan un comando RETR (RETRIEVE)

estándar, mediante inicio de sesión anónimo.
Las reglas enumeradas en el archivo robots.txt se applycan solo al host, protocolo y número de puerto donde se aloja el archivo robots.txt.
Ejemplos de URL de robots.txt válidas
| La siguiente tabla contiene ejemplos de URL de robots.txt y las rutas de URL para las cuales son válidas. La columna uno contiene la URL de un archivo robots.txt y la columna dos contiene los dominios a los que se aplicaría y no se aplicaría ese archivo robots.txt. | |
|---|---|
Ejemplos de URL de robots.txt | https://example.com/robots.txt Este es el caso general. No es válido para otros subdominios, protocolos o números de puerto. Es válido para todos los archivos en todos los subdirectorios en el mismo host, protocolo y número de puerto.
https://example.com/folder/file
|
https://example.com:8181/ | https://www.example.com/robots.txt Un robots.txt en un subdominio solo es válido para ese subdominio. https://www.example.com/
|
https://example.com/folder/robots.txt | No es un archivo robots.txt válido. Los crawlers no buscan archivos robots.txt en subdirectorios. |
https://www.exämple.com/robots.txt | Los IDN son equivalentes a sus versiones en punycode. Véase también Válido para:
No válido para: |
ftp://example.com/robots.txt | Válido para: No válido para: |
https://212.96.82.21/robots.txt | Un archivo robots.txt con una dirección IP como nombre de host solo es válido para el rastreo de esa dirección IP como nombre de host. No es válido automáticamente para todos los sitios web alojados en esa dirección IP (aunque es posible que el archivo robots.txt se comparta, en cuyo caso también estaría disponible bajo el nombre de host compartido). Válido para: No válido para: |
https://example.com:443/robots.txt | Los números de puerto estándar ( Válido para:
No válido para: |
https://example.com:8181/robots.txt | Los archivos robots.txt en números de puerto no estándar solo son válidos para el contenido disponible a través de esos números de puerto. Válido para: No válido para: |
Gestión de errores y códigos de estado HTTP
Al solicitar un archivo robots.txt, el código de estado HTTP de la respuesta del servidor afecta a cómo el archivo robots.txt será utilizado por los rastreadores de Google. La siguiente tabla resume cómo Googlebot trata los archivos robots.txt para diferentes códigos de estado HTTP.
| Gestión de errores y códigos de estado HTTP | |
|---|---|
2xx (éxito) | Los códigos de estado HTTP que indican éxito hacen que los rastreadores de Google procesen el archivo robots.txt tal y como lo proporciona el servidor. |
3xx (redirección) | Google sigue al menos cinco saltos de redirección según lo definido por Google no sigue redirecciones lógicas en archivos robots.txt (marcos, JavaScript o |
4xx (errores del cliente) | Los rastreadores de Google tratan todos los |
5xx (errores del servidor) | Si Google encuentra un archivo robots.txt pero no puede recuperarlo, Google sigue este comportamiento:
|
| Otros errores | Un archivo robots.txt que no se puede recuperar debido a problemas de DNS o de red, como tiempos de espera agotados, respuestas no válidas, conexiones restablecidas o interrumpidas y errores de fragmentación HTTP, se trata como un error de servidor. |
Almacenamiento en caché
Google generalmente almacena en caché el contenido del archivo robots.txt durante un máximo de 24 horas, pero puede almacenarlo en caché durante más tiempo en situaciones en las que actualizar la versión en caché no sea posible (por ejemplo, debido a tiempos de espera o 5xx errores). La respuesta en caché puede ser compartida por diferentes rastreadores.
Google puede aumentar o disminuir la duración de la caché basándose en
max-age Cache-Control
Cabeceras HTTP.
Formato de archivo
El archivo robots.txt debe ser un
UTF-8 archivo de texto plano codificado y las líneas deben estar separadas por CR, CR/LF, o
LF.
Google ignora las líneas no válidas en los archivos robots.txt, incluido el
Marca de Orden de Bytes
(BOM) al principio del archivo robots.txt, y utiliza solo líneas válidas. Por ejemplo, si el contenido descargado es HTML en lugar de reglas de robots.txt, Google intentará analizar el contenido y extraer las reglas, ignorando todo lo demás.
Del mismo modo, si la codificación de caracteres del archivo robots.txt no es UTF-8, Google puede ignorar los caracteres que no formen parte del rango UTF-8, lo que podría invalidar las reglas de robots.txt.
Google aplica un límite de tamaño de archivo robots.txt de 500
kibibytes (KiB). El contenido que se encuentra después del tamaño máximo de archivo se ignora. Puede reducir el tamaño del archivo robots.txt consolidando reglas que darían lugar a un archivo robots.txt demasiado grande. Por ejemplo, coloque el material excluido en un directorio separado.
Sintaxis
Una línea de robots.txt válida consta de un campo, dos puntos y un valor. Los nombres de los campos no distinguen entre mayúsculas y minúsculas (por ejemplo, User-agent y user-agent se tratan igual). Los espacios son opcionales, pero se recomiendan para mejorar la legibilidad. Los espacios al principio y al final de la línea se ignoran. Para incluir comentarios, anteponga a su comentario el carácter
# carácter. Tenga en cuenta que todo lo que esté después del # carácter será ignorado. El formato general es
<field>:<value><#optional-comment>.
Google admite los siguientes campos (otros campos como crawl-delay no son compatibles):
user-agent: identifica a qué rastreador se aplican las reglas.allow: una ruta de URL que se puede rastrear.disallow: una ruta de URL que no se puede rastrear.sitemap: la URL completa de un sitemap.
El allow y disallow los campos también se llaman reglas (también conocidas como
directivas). Estas reglas siempre se especifican en la forma de
regla: [path] donde [path] es opcional. De forma predeterminada, no hay restricciones de rastreo para los rastreadores designados. Los rastreadores ignoran las reglas sin un
[path].
El [path] valor, si se especifica, es relativo a la raíz del sitio web desde donde se recuperó el archivo robots.txt (utilizando el mismo protocolo, número de puerto, host y nombres de dominio). El valor de la ruta debe comenzar con / para designar la raíz y el valor distingue entre mayúsculas y minúsculas. Obtenga más información sobre
coincidencia de URL basada en valores de ruta.
user-agent
La user-agent línea identifica a qué reglas de rastreador se aplica. Ver
Los rastreadores y cadenas de user-agent de Google
para obtener una lista completa de cadenas de user-agent que puede utilizar en su archivo robots.txt.
Tanto el user-agent nombre de campo como su valor no distinguen entre mayúsculas y minúsculas.
disallow
La disallow regla especifica las rutas a las que no deben acceder los rastreadores identificados por la user-agent línea con la que la disallow regla está agrupada.
Los rastreadores ignoran la regla sin una ruta.
Google no puede indexar el contenido de las páginas que no pueden ser rastreadas, pero aún puede indexar la URL y mostrarla en los resultados de búsqueda sin un fragmento. Aprenda cómo
bloquear la indexación.
El nombre del campo (disallow) no distingue entre mayúsculas y minúsculas, pero su valor sí.
Uso:
allow
La allow regla especifica las rutas a las que pueden acceder los rastreadores designados. Cuando no se especifica ninguna ruta, la regla se ignora.
El nombre del campo (allow) no distingue entre mayúsculas y minúsculas, pero su valor sí distingue entre mayúsculas y minúsculas.
Uso:
sitemap
Google, Bing y otros motores de búsqueda principales admiten el campo sitemap en
robots.txt, tal como lo define sitemaps.org.
El nombre del campo (sitemap) no distingue entre mayúsculas y minúsculas, pero su valor sí distingue entre mayúsculas y minúsculas.
Uso:
La línea [absoluteURL] apunta a la ubicación de un archivo de sitemap o índice de sitemaps. Debe ser una URL totalmente calificada, incluido el protocolo y el host, y no tiene por qué estar codificada en URL. La URL no tiene por qué estar en el mismo host que el archivo robots.txt. Puede especificar múltiples campos sitemap sin límite en el número de sitemaps que puede incluir. El campo sitemap no está vinculado a ningún agente de usuario específico y puede ser seguido por todos los rastreadores, siempre que no esté deshabilitado para el rastreo.
Por ejemplo:
Agrupación de líneas y reglas
Puede agrupar reglas que se aplican a múltiples agentes de usuario repitiendo las líneas
user-agent para cada rastreador.
Por ejemplo:
En este ejemplo hay cuatro grupos de reglas distintos:
- Un grupo para el agente de usuario “a”.
- Un grupo para el agente de usuario “b”.
- Un grupo para ambos agentes de usuario “e” y “f”.
- Un grupo para el agente de usuario “h”.
Para obtener la descripción técnica de un grupo, consulte
la sección 2.1 del REP.
Orden de precedencia para agentes de usuario
Solo un grupo es válido para un rastreador en particular. Los rastreadores de Google determinan el grupo correcto de reglas encontrando en el archivo robots.txt el grupo con el agente de usuario más específico que coincida con el agente de usuario del rastreador. Los demás grupos se ignoran. Todo el texto que no coincida se ignora (por ejemplo, tanto googlebot/1.2 como googlebot* son
equivalentes a googlebot). El orden de los grupos dentro del archivo robots.txt es irrelevante.
Si se declara más de un grupo específico para un agente de usuario, todas las reglas de los grupos aplicables al agente de usuario específico se combinan internamente en un solo grupo. Los grupos específicos de agentes de usuario y los grupos globales (*) no se combinan.
Ejemplos
Coincidencia de los campos de user-agent
Así es como los rastreadores elegirían el grupo relevante:
| Grupo seguido por rastreador | |
|---|---|
| Googlebot News | googlebot-news sigue al grupo 1, porque el grupo 1 es el grupo más específico. |
| Googlebot (web) | googlebot sigue al grupo 3. |
| Googlebot Storebot | Storebot-Google sigue al grupo 2, porque no hay ningúnStorebot-Google grupo específico. |
| Googlebot News (al rastrear imágenes) | Al rastrear imágenes, googlebot-news sigue al grupo 1.googlebot-news no rastrea las imágenes para Google Imágenes, por lo que solosigue al grupo 1. |
| Otherbot (web) | Otros rastreadores de Google siguen al grupo 2. |
| Otherbot (noticias) | Otros rastreadores de Google que rastrean contenido de noticias, pero no se identifican comogooglebot-news siguen al grupo 2. Incluso si hay una entrada para un rastreador relacionado, solo es válida si coincide específicamente. |
Agrupación de reglas
Si hay varios grupos en un archivo robots.txt que son relevantes para un user-agent específico,
los rastreadores de Google fusionan internamente los grupos. Por ejemplo:
Los rastreadores agrupan internamente las reglas según el user-agent, por ejemplo:
Las reglas distintas de allow, disallowy user-agent son
ignoradas por el analizador de robots.txt. Esto significa que el siguiente fragmento de robots.txt se trata
como un solo grupo y, por lo tanto, tanto user-agent a como b se ven afectados por disallow: / rule:
Cuando los rastreadores procesan las reglas de robots.txt, ignoran la sitemap línea.
Por ejemplo, así es como los rastreadores entenderían el fragmento anterior de robots.txt:
Coincidencia de URL basada en valores de ruta
Google utiliza el valor de ruta en las reglas allow y disallow como base para determinar si una regla se aplica o no a una URL específica en un sitio. Esto funciona comparando la regla con el componente de ruta de la URL que el rastreador intenta recuperar.
La ruta en las reglas puede ser caracteres UTF-8 en bruto o cadenas UTF-8 codificadas por porcentaje
(según RFC 3986).
Tal como se define en RFC 9309 Section 2.2.2,
los rastreadores de Google comparan las reglas con las URL utilizando sus formas codificadas por porcentaje y canonizan automáticamente las rutas de reglas UTF-8 en bruto en formas codificadas por porcentaje. Esto significa que, por ejemplo,
Disallow: /foo/bar/ツ y Disallow: /foo/bar/%E3%83%84 son tratados de forma idéntica por el analizador.
Google, Bing y otros motores de búsqueda importantes admiten una forma limitada de wildcards para los valores de ruta. Estos caracteres comodín son:
*designa 0 o más instancias de cualquier carácter válido.$designa el final de la URL.
La siguiente tabla muestra cómo los diferentes caracteres comodín afectan al análisis sintáctico:
| Ejemplos de coincidencias de ruta | |
|---|---|
/ | Coincide con la raíz y cualquier URL de nivel inferior. |
/* | Equivalente a /. El comodín final se ignora. |
/$ | Coincide solo con la raíz. Se permite el rastreo de cualquier URL de nivel inferior. |
/fish | Coincide con cualquier ruta que comience con Coincide con:
No coincide:
|
/fish* | Equivalente a: Coincide:
No coincide:
|
/fish/ | Coincide con cualquier elemento en la carpeta Coincide:
No coincide:
|
/*.php | Coincide con cualquier ruta que contenga Coincide:
No coincide:
|
/*.php$ | Coincide con cualquier ruta que termine en Coincide:
No coincide:
|
/fish*.php | Coincide con cualquier ruta que contenga Coincide:
No coincide:
|
Orden de preferencia para las reglas
Al hacer coincidir las reglas de robots.txt con las URL, los rastreadores utilizan la regla más específica según la longitud de la ruta de la regla. En caso de reglas contradictorias, incluidas aquellas con comodines, Google utiliza la regla menos restrictiva.
Los siguientes ejemplos demuestran qué regla aplicarán los rastreadores de Google en una URL determinada.
| Situaciones de muestra | |
|---|---|
https://example.com/page | Regla aplicable: |
https://example.com/folder/page | Regla aplicable: |
https://example.com/page.htm | Regla aplicable: |
https://example.com/page.php5 | Regla aplicable: |
https://example.com/ | Regla aplicable: |
https://example.com/page.htm | Regla aplicable: |
Cómo lo aplicamos
The formal specification resolves the arguments that the introductory guide leaves open, particularly around precedence and wildcards. We cite it directly when a developer and an SEO disagree about whether a rule applies.
Servicios relacionados