Especificaciones de la metaetiqueta robots, data-nosnippet y X-Robots-Tag

En este documento se detalla cómo se pueden usar las configuraciones a nivel de página y de texto para ajustar la forma en la que Google presenta el contenido en los resultados de la búsqueda. Puedes especificar la configuración a nivel de página con una metaetiqueta en las páginas HTML o en un encabezado HTTP. Además, puedes especificar la configuración a nivel de texto con el atributo data-nosnippet en los elementos HTML dentro de una página.

Cómo usar la metaetiqueta robots

La metaetiqueta robots permite utilizar un enfoque preciso y específico para controlar la forma en la que se debe indexar una página en particular y cómo se debe mostrar a los usuarios en los resultados de la Búsqueda de Google. Coloca la metaetiqueta robots en la sección <head> de una página, como se muestra a continuación:

<!DOCTYPE html>
<html><head>
<meta name="robots" content="noindex" />
(…)
</head>
<body>(…)</body>
</html>

En el ejemplo anterior, la metaetiqueta robots indica a los motores de búsqueda que no muestren la página en los resultados de la búsqueda. El valor del atributo name (robots) especifica que se aplica la directiva a todos los rastreadores. Para enfocarte en un rastreador específico, reemplaza el valor robots del atributo name por el nombre del rastreador en cuestión. A los rastreadores específicos también se los llama "usuarios-agentes" (un rastreador utiliza su usuario-agente para solicitar acceso a una página). El nombre del usuario-agente del rastreador web estándar de Google es Googlebot. Para impedir que Googlebot (únicamente) indexe tu página, actualiza la etiqueta de la siguiente manera:

<meta name="googlebot" content="noindex" />

La etiqueta ahora indica a Google específicamente que no muestre esta página en los resultados de la búsqueda. Los atributos name y content no distinguen entre mayúsculas y minúsculas.

Los motores de búsqueda pueden tener distintos rastreadores para diferentes fines. Consulta la lista completa de rastreadores de Google. Por ejemplo, para mostrar una página en los resultados de la búsqueda web de Google, pero no en Google Noticias, usa la siguiente metaetiqueta:

<meta name="googlebot-news" content="noindex" />

Para especificar varios rastreadores por separado, usa varias metaetiquetas robots:

<meta name="googlebot" content="noindex">
<meta name="googlebot-news" content="nosnippet">

Cómo usar el encabezado HTTP X-Robots-Tag

Se puede usar X-Robots-Tag como elemento del encabezado de la respuesta HTTP para una URL determinada. Las directivas que se pueden usar en una metaetiqueta robots también se pueden especificar como X-Robots-Tag. A continuación se incluye un ejemplo de una respuesta HTTP con X-Robots-Tag que indica a los rastreadores que no indexen una página:

HTTP/1.1 200 OK
Date: Tue, 25 May 2010 21:42:43 GMT
(…)
X-Robots-Tag: noindex
(…)

Se pueden combinar varios encabezados X-Robots-Tag dentro de la respuesta HTTP o puedes especificar una lista de directivas separadas por comas. A continuación se muestra un ejemplo de encabezado en una respuesta HTTP que tiene un elemento noarchive X-Robots-Tag combinado con una X-Robots-Tag unavailable_after.

HTTP/1.1 200 OK
Date: Tue, 25 May 2010 21:42:43 GMT
(…)
X-Robots-Tag: noarchive
X-Robots-Tag: unavailable_after: 25 Jun 2010 15:00:00 PST
(…)

De manera opcional, X-Robots-Tag puede especificar un usuario-agente antes de las directivas. Por ejemplo, se puede utilizar el siguiente grupo de encabezados HTTP X-Robots-Tag para permitir que se muestre de forma condicional una página en los resultados de la búsqueda de diferentes motores de búsqueda:

HTTP/1.1 200 OK
Date: Tue, 25 May 2010 21:42:43 GMT
(…)
X-Robots-Tag: googlebot: nofollow
X-Robots-Tag: otherbot: noindex, nofollow
(…)

Las directivas que se especifican sin un usuario-agente son válidas para todos los rastreadores. El encabezado HTTP, el nombre del usuario-agente y los valores especificados no distinguen entre mayúsculas y minúsculas.

Directivas de indexación y publicación válidas

Las siguientes directivas se pueden utilizar para controlar la indexación y la publicación de un fragmento con la metaetiqueta robots y la X-Robots-Tag. En los resultados de la búsqueda, un fragmento es un extracto breve de texto que se usa a fin de demostrar la relevancia de un documento para la búsqueda que realiza un usuario. En la siguiente tabla, se muestran todas las directivas que distingue Google, así como su significado. Cada valor representa una directiva específica. Se pueden combinar varias directivas en una lista separada por comas. Estas directivas no distinguen entre mayúsculas y minúsculas.

Directivas

all

No hay restricciones de indexación ni de publicación. Esta directiva es el valor predeterminado y no tiene ningún efecto si se muestra de forma explícita.

noindex

No se mostrará esta página en los resultados de la búsqueda. Si no especificas esta directiva, es posible que se indexe la página y aparezca en los resultados de la búsqueda.

nofollow

No sigue los vínculos de esta página. Si no especificas esta directiva, Google podrá usar los vínculos de la página para descubrirlas. Obtén más información sobre nofollow.

none

Equivale a noindex, nofollow.

noarchive

No se mostrará un vínculo en caché en los resultados de la búsqueda. Si no especificas esta directiva, Google podrá generar una página en caché y los usuarios podrán acceder a ella a través de los resultados de la búsqueda.

nosnippet

No muestra un fragmento de texto ni una vista previa de video en los resultados de la búsqueda de esta página. Una miniatura de imagen estática aún puede ser visible (si está disponible), cuando proporciona una mejor experiencia del usuario. Esto se aplica a todos los tipos de resultados de la búsqueda (como en la Búsqueda web de Google, Google Imágenes y Descubre).

Si no especificas esta directiva, Google podrá generar un fragmento de texto y una vista previa de video con la información que encuentre en la página.

max-snippet: [número]

Usa un máximo de [número] caracteres para el fragmento de texto del resultado de la búsqueda (ten en cuenta que una URL puede aparecer como varios resultados de la búsqueda en una página de resultados de búsqueda). Esto no afecta las vistas previas de imágenes ni videos, y se aplica a todos los tipos de resultados de la búsqueda (como en la Búsqueda web de Google, Google Imágenes, Descubre y Asistente). Sin embargo, este límite no se aplica si un publicador otorgó permiso por separado para que se use el contenido. Por ejemplo, si el publicador proporciona contenido en forma de datos estructurados in-page o tiene un contrato de licencia con Google, este parámetro de configuración no interfiere con los usos permitidos más específicos. Si no se especifica un [número] analizable, se ignora esa directiva.

Si no especificas esta directiva, Google elegirá la longitud del fragmento.

Valores especiales:

  • 0: No se mostrará ningún fragmento. Equivale a nosnippet.
  • -1: Google elegirá la longitud del fragmento que considere más efectiva para ayudar a los usuarios a descubrir tu contenido y dirigirlos a tu sitio.

Ejemplos:

Para impedir que un fragmento aparezca en los resultados de la búsqueda, incluye lo siguiente:


<meta name="robots" content="max-snippet:0">

Para permitir que se muestren hasta 20 caracteres en el fragmento, incluye lo siguiente:


<meta name="robots" content="max-snippet:20">

Para especificar que no haya un límite de caracteres en el fragmento, incluye lo siguiente:


<meta name="robots" content="max-snippet:-1">

max-image-preview: [parámetro de configuración]

Establece el tamaño máximo de una vista previa de imagen para esta página en los resultados de la búsqueda.

Si no especificas la directiva max-image-preview, Google podrá mostrar una vista previa de la imagen del tamaño predeterminado.

Valores aceptados de [parámetro de configuración]:

  • none: No se mostrará ninguna vista previa de imagen.
  • standard: Se puede mostrar una vista previa de la imagen predeterminada.
  • large: Se puede mostrar una vista previa más grande de la imagen, de hasta el ancho del viewport.

Esto se aplica a todos los tipos de resultados de la búsqueda (como en la Búsqueda web de Google, Google Imágenes, Descubre y Asistente). Sin embargo, este límite no se aplica si un publicador otorgó permiso por separado para que se use el contenido. Por ejemplo, si el publicador proporciona contenido en forma de datos estructurados in-page (como versiones canónicas y AMP de un artículo) o tiene un contrato de licencia con Google, este parámetro de configuración no interferirá con los usos permitidos más específicos.

Si no quieres que Google utilice imágenes en miniatura más grandes cuando sus páginas de AMP y la versión canónica de un artículo se muestran en la Búsqueda o Descubre, especifica un valor max-image-preview de standard o none.

Ejemplo:


<meta name="robots" content="max-image-preview:standard">

max-video-preview: [número]

Usa fragmentos de video de un máximo de [número] segundos para los videos de esta página en los resultados de la búsqueda.

Si no especificas la directiva max-video-preview, Google podrá mostrar un fragmento de video en los resultados de la búsqueda y se encargará de determinar la duración de la vista previa.

Valores especiales:

  • 0: Como máximo, se puede usar una imagen estática, según el parámetro de configuración max-image-preview.
  • -1: No hay límite.

Se aplica a todos los tipos de resultados de la búsqueda (en la Búsqueda web de Google, Google Imágenes, Google Videos, Descubre y Asistente). Si no se especifica un [número] analizable, se ignora esa directiva.

Ejemplo:


<meta name="robots" content="max-video-preview:-1">

notranslate

No se ofrecerá una versión traducida de esta página en los resultados de la búsqueda. Si no especificas esta directiva, Google podrá mostrar un vínculo junto al resultado para permitir que los usuarios vean contenido traducido en tu página.

noimageindex

No indexa las imágenes de esta página. Si no especificas este valor, es posible que las imágenes de la página se indexen y aparezcan en los resultados de la búsqueda.

unavailable_after: [fecha/hora]

No se mostrará esta página en los resultados de la búsqueda después de la fecha y hora indicadas. Ambos datos deben especificarse en un formato que se haya adoptado ampliamente, incluidos, entre otros, los formatos RFC 822, RFC 850 y ISO 8601. Si no se especifica una hora o fecha válida, se ignora la directiva. De forma predeterminada, el contenido no tiene fecha de vencimiento.

Si no especificas esta directiva, es posible que esta página aparezca en los resultados de la búsqueda de forma indefinida.

Ejemplo:


<meta name="robots" content="unavailable_after: 2020-09-21">

Cómo administrar las directivas de indexación y publicación combinadas

Puedes crear una instrucción con varios elementos que combine directivas de metaetiquetas robots con comas. A continuación se muestra un ejemplo de una metaetiqueta robots que indica a los rastreadores web que no indexen la página ni rastreen ninguno de los vínculos que contiene:

<meta name="robots" content="noindex, nofollow">

En el ejemplo siguiente, se limita el fragmento de texto a 20 caracteres y se permite una vista previa grande de una imagen:

<meta name="robots" content="max-snippet:20, max-image-preview:large">

Cuando se especifiquen varios rastreadores y diferentes directivas, el motor de búsqueda utilizará la suma de las directivas negativas. Por ejemplo:

<meta name="robots" content="nofollow">
<meta name="googlebot" content="noindex">

Durante el rastreo, Googlebot interpretará una página que contenga estas metaetiquetas como si tuviera una directiva noindex, nofollow.

Cómo usar el atributo HTML data-nosnippet

Puedes designar partes textuales de una página HTML para que no se usen como fragmento. Esto se puede hacer a nivel de los elementos HTML con el atributo HTML data-nosnippet en los elementos span, div y section. El elemento data-nosnippet se considera un atributo booleano. Como con todos los atributos booleanos, se ignora cualquier valor especificado. Para garantizar que los rastreadores puedan leer la sección HTML, el código HTML que contenga debe ser válido y todas las etiquetas apropiadas deben estar cerradas correctamente.

Ejemplos:

<p>This text can be shown in a snippet
<span data-nosnippet>and this part would not be shown</span>.</p>

<div data-nosnippet>not in snippet</div>
<div data-nosnippet="true">also not in snippet</div>
<div data-nosnippet="false">also not in snippet</div>
<!-- all values are ignored -->

<div data-nosnippet>some text</html>
<!-- unclosed "div" will include all content afterwards -->

<mytag data-nosnippet>some text</mytag>
<!-- NOT VALID: not a span, div, or section -->

En general, aunque Google procesa páginas para indexarlas, no se garantiza el procesamiento. Debido a esto, la extracción de data-nosnippet puede ocurrir tanto antes como después del procesamiento. Para evitar un procesamiento dudoso, no agregues ni quites el atributo data-nosnippet de los nodos existentes con JavaScript. Cuando agregues elementos DOM por medio de JavaScript, incluye el atributo data-nosnippet según sea necesario en el momento en que agregues por primera vez el elemento al DOM de la página. Si se usan elementos personalizados, únelos o procésalos con elementos div, span o section si tienes que usar data-nosnippet.

Cómo usar datos estructurados

Las metaetiquetas robots rigen la cantidad de contenido que Google extrae automáticamente de las páginas web para mostrarlas como resultados de la búsqueda. Sin embargo, muchos publicadores también utilizan los datos estructurados de schema.org para que haya información específica disponible en la presentación de la búsqueda. Las limitaciones de metaetiquetas robots no afectan el uso de esos datos estructurados, con la excepción de article.description y los valores de description para datos estructurados especificados en otros trabajos creativos. Para especificar la longitud máxima de una vista previa según estos valores de description, usa la metaetiqueta de robots max-snippet. Por ejemplo, los datos estructurados de recipe en una página se pueden incluir en el carrusel de recetas, incluso si la vista previa del texto estuviera limitada. Puedes limitar la longitud de una vista previa de texto con max-snippet, pero esa metaetiqueta robots no se aplica cuando se proporciona la información con datos estructurados para resultados enriquecidos.

Si quieres administrar el uso de datos estructurados en tus páginas web, modifica los tipos y valores de datos estructurados, y agrega o quita información para proporcionar solo los datos que deseas que estén disponibles. También ten en cuenta que se pueden seguir usando los datos estructurados para los resultados de la búsqueda cuando se declaran en un elemento data-nosnippet.

Implementación práctica de X-Robots-Tag

Puedes agregar X-Robots-Tag a las respuestas HTTP de un sitio en los archivos de configuración del software del servidor web en tu sitio. Por ejemplo, en los servidores web basados en Apache, puedes usar archivos .htaccess y httpd.conf. La ventaja de utilizar un elemento X-Robots-Tag con las respuestas HTTP es que puedes especificar directivas de rastreo que se aplican globalmente en un sitio. La posibilidad de utilizar expresiones regulares ofrece un gran nivel de flexibilidad.

Por ejemplo, a fin de agregar una directiva X-Robots-Tag con noindex, nofollow a la respuesta HTTP para todos los archivos .PDF de un sitio, agrega el siguiente fragmento en el archivo .htaccess raíz del sitio, o en el archivo httpd.conf, en Apache, o en el archivo .conf del sitio, en NGINX.

Apache:

<Files ~ "\.pdf$">
  Header set X-Robots-Tag "noindex, nofollow"
</Files>

NGINX:

location ~* \.pdf$ {
  add_header X-Robots-Tag "noindex, nofollow";
}

Puedes usar X-Robots-Tag para los archivos que no estén en formato HTML, como los de imagen, en los que no es posible utilizar metaetiquetas robots de HTML. A continuación, se muestra un ejemplo para agregar la directiva X-Robots-Tag con noindex en los archivos de imagen (.png, .jpeg, .jpg o .gif) de todo un sitio:

Apache:

<Files ~ "\.(png|jpe?g|gif)$">
  Header set X-Robots-Tag "noindex"
</Files>

NGINX:

location ~* \.(png|jpe?g|gif)$ {
  add_header X-Robots-Tag "noindex";
}

También puedes configurar los encabezados X-Robots-Tag para los archivos estáticos individuales:

Apache:

# the htaccess file must be placed in the directory of the matched file.
<Files "unicorn.pdf">
  Header set X-Robots-Tag "noindex, nofollow"
</Files>

NGINX:

location = /secrets/unicorn.pdf {
  add_header X-Robots-Tag "noindex, nofollow";
}

Cómo combinar el rastreo con las directivas de indexación y publicación

Cuando se rastrea una URL, se descubren las metaetiquetas robots y los encabezados HTTP X-Robots-Tag. Si no está permitido rastrear una página a través del archivo robots.txt, no se encontrará ninguna instrucción sobre directivas de indexación o publicación y, en consecuencia, se ignorará la página. Si se deben seguir directivas de indexación o publicación, no se puede impedir el rastreo de las URL que contengan esas directivas.