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

Resumen

En este documento, se detalla cómo se pueden usar las configuraciones de nivel de página y texto para ajustar la forma en la que Google presenta el contenido en los resultados de la búsqueda. Puedes especificar la configuración en el nivel de la página con una metaetiqueta en páginas HTML o en un encabezado HTTP. Puedes especificar la configuración en el nivel del texto con el atributo data- nosnippet en 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 el robot de Google rastree una página, modifica la etiqueta como se muestra a continuación:

<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 ni minúsculas.

Los motores de búsqueda pueden tener distintos rastreadores con propiedades y objetivos diferentes. 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 el X-Robots-Tag como elemento de la respuesta de encabezado 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 un 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 separada por comas. A continuación, hay un ejemplo de una respuesta de encabezado HTTP que tiene un noarchive X-Robots-Tag combinado con un unavailable_after X-Robots-Tag.

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 ni 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 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 consulta de 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 ni 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 muestra esta página en los resultados de la búsqueda.
nofollow
No sigue los vínculos de esta página.
none
Equivale a noindex, nofollow.
noarchive
No muestra un vínculo en caché en 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 (si está disponible) aún puede ser visible, cuando proporciona una mejor experiencia del usuario. Esto se aplica a todos los tipos de resultados de la búsqueda (en Google: búsqueda web, Google Imágenes, Descubre).
max-snippet:[number]

Usa un máximo de [number] caracteres como fragmento de texto de la búsqueda para este resultado. (Ten en cuenta que una URL puede aparecer como varios resultados de la búsqueda en una página de resultados de la búsqueda). Esto no afecta las vistas previas de imágenes ni videos. Se aplica a todos los tipos de resultados de la búsqueda (como Búsqueda web de Google, Google Imágenes, Descubre, Asistente). Sin embargo, este límite no se aplica en los casos en los que 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 acuerdo de licencia con Google, esta configuración no interfiere con los usos permitidos más específicos. Si no se especifica un [number] analizable, se ignora esa directiva.

Valores especiales:

  • 0: No se mostrará ningún fragmento. Equivale a nosnippet.
  • -1: No hay límite de longitud para los fragmentos.
  • Ejemplo:

    <meta name="robots" content="max-snippet:20">
    max-image-preview:[setting]

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

    Valores de setting aceptados:

  • none: No se mostrará ninguna vista previa de imagen.
  • standard: Se puede mostrar una vista previa de imagen predeterminada.
  • large: Se puede mostrar una vista previa de imagen más grande, de hasta el ancho del viewport.
  • Se aplica a todos los tipos de resultados de la búsqueda (como Búsqueda web de Google, Google Imágenes, Descubre y el Asistente). Sin embargo, este límite no se aplica en los casos en los que 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 AMP y versiones canónicas de un artículo) o tiene un acuerdo de licencia con Google, esta configuración no interferirá con los usos permitidos más específicos.

    Los publicadores que no deseen 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 deben especificar un valor max-image-preview de standard o none.

    Ejemplo:

    <meta name="robots" content="max-image-preview:standard">
    max-video-preview:[number]

    Usa un máximo de [number] segundos como un fragmento de video para los videos en esta página en los resultados de la búsqueda.

    Otros valores admitidos:

  • 0: Como máximo, se puede usar una imagen estática, de acuerdo con la configuración del tamaño máximo de vista previa de imagen.
  • -1: No hay límites.
  • Se aplica a todos los tipos de resultados de la búsqueda (en Google: búsqueda web, Google Imágenes, Google Videos, Descubre y el Asistente). Si no se especifica un [number] analizable, se ignora esa directiva.

    Ejemplo:

    <meta name="robots" content="max-video-preview:-1">
    notranslate
    No ofrece una versión traducida de esta página en los resultados de la búsqueda.
    noimageindex
    No indexa las imágenes de esta página.
    unavailable_after: [date/time]

    No muestra esta página en los resultados de la búsqueda después de la fecha y la hora especificadas. 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 un [date/time] válido, se ignorará la directiva. De forma predeterminada, no hay fecha de vencimiento para el contenido.

    Ejemplo:

    <meta name="robots" content="unavailable_after: Sunday, 01-Sep-24 01:00:00 PDT">

    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">
    

    A continuación, se incluye un ejemplo que limita el fragmento de texto a 20 caracteres y permite una vista previa de imagen grande:

    <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, el robot de Google interpretará una página que contenga estas metaetiquetas como si tuviera una directiva noindex, nofollow.

    Cómo usar el atributo HTML data-nosnippet

    El atributo data-nosnippet entra en vigencia más adelante en 2019.

    Puede designar partes textuales de una página HTML para que no se usen como fragmento. Esto se puede hacer en el nivel del elemento HTML con el atributo HTML data-nosnippet en los elementos span, div y section. El data-nosnippet se considera un atributo booleano; es válido con o sin un valor. Para garantizar que los rastreadores puedan leer la sección HTML, esta debe tener código HTML 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>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, Google procesa páginas para indexarlas. Sin embargo, no se garantiza la renderización. Debido a esto, la extracción de data-nosnippet puede ocurrir tanto antes como después del procesamiento. Para evitar la incertidumbre del procesamiento, no agregues ni quites el atributo data-nosnippet de los nodos existentes mediante JavaScript. Cuando agregues elementos DOM por medio de JavaScript, incluye el atributo data-nosnippet según sea necesario cuando 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 mediante 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 por medio de los archivos de configuración del software de servidor web de tu sitio. Por ejemplo, en los servidores web basados en Apache, puedes usar archivos .htaccess y httpd.conf. La ventaja de utilizar un X-Robots-Tag con 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 un noindex, nofollow X-Robots-Tag 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 en HTML. A continuación, se muestra un ejemplo para agregar la directiva noindex X-Robots-Tag 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";
    }
    

    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 podrá impedir el rastreo de las URL que contengan esas directivas.