Especificaciones de la metaetiqueta "robots" y los elementos "data-nosnippet" y "X-Robots-Tag"

Resumen

En este documento se explica cómo puedes ajustar la forma en que Google muestra tu contenido en los resultados de búsqueda mediante ajustes a nivel de página y de texto. Los ajustes a nivel de página se pueden configurar incluyendo una metaetiqueta en páginas HTML o en cabeceras HTTP; en cambio, los ajustes a nivel de texto deben especificarse añadiendo el atributo data- nosnippet a los elementos HTML de las páginas.

Uso de la metaetiqueta "robots"

La metaetiqueta "robots" permite utilizar un enfoque granular y a nivel de página para controlar cómo se deben indexar y servir a los usuarios páginas concretas en los resultados de la Búsqueda de Google. Incluye la metaetiqueta "robots" en la sección <head> de una página determinada. Por ejemplo:

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

La metaetiqueta "robots" del ejemplo anterior indica a los buscadores que no muestren esa página en los resultados de búsqueda. Como el atributo name tiene el valor robots, la directiva se aplica a todos los rastreadores. Para aplicarla a un rastreador específico, sustituya el valor robots del atributo name por el nombre del rastreador en cuestión. Los rastreadores específicos también se denominan user-agent (los rastreadores utilizan su user-agent para solicitar acceso a una página). El nombre de user-agent del rastreador web estándar de Google es Googlebot. Si quieres impedir que el robot de Google rastree tu página, modifica la etiqueta como se indica a continuación:

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

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

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

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

Para especificar varios rastreadores de forma individual, puedes utilizar varias metaetiquetas "robots":

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

Uso de la cabecera HTTP X-Robots-Tag

La cabecera X-Robots-Tag se puede incluir en la respuesta de cabecera HTTP de una URL determinada. Cualquier directiva que se pueda utilizar en una metaetiqueta "robots" también se puede especificar como X-Robots-Tag. A continuación, se muestra un ejemplo de una respuesta HTTP con una cabecera 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
(…)

Es posible combinar varias cabeceras X-Robots-Tag en la respuesta HTTP o especificar una lista de directivas separadas por comas. A continuación, se muestra un ejemplo de una respuesta de cabecera HTTP que incluye una cabecera X-Robots-Tag noarchive y una cabecera 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
(…)

En la cabecera X-Robots-Tag, se puede especificar de forma opcional un user-agent antes de las directivas. Por ejemplo, con el siguiente conjunto de cabeceras HTTP X-Robots-Tag, se puede permitir que se muestre una página en los resultados de búsqueda de diferentes buscadores de forma condicional:

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 sin user-agent son válidas para todos los rastreadores. La cabecera HTTP, el nombre de user-agent y los valores especificados no distinguen entre mayúsculas y minúsculas.

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

Se pueden utilizar las siguientes directivas para controlar el proceso de indexar y servir el contenido con la metaetiqueta "robots" y el elemento X-Robots-Tag. Cada valor representa una directiva. En la tabla que encontrarás a continuación, se muestran todas las directivas que Google reconoce y su significado. Se pueden combinar varias directivas en una lista separada por comas. En estas directivas no se distingue entre mayúsculas y minúsculas. En los resultados de búsqueda, un fragmento es un breve extracto de texto que se utiliza para demostrar la relevancia de un documento en relación con la consulta del usuario.

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 utiliza de forma explícita.
noindex
No se muestra la página en los resultados de búsqueda.
nofollow
No se siguen los enlaces de la página.
none
Equivalente a noindex, nofollow.
noarchive
No se muestra ningún enlace en caché en los resultados de búsqueda.
nosnippet
No se muestra ningún fragmento ni la vista previa de ningún vídeo en los resultados de búsqueda de la página. Es posible que se siga mostrando una miniatura de imagen estática (si está disponible) si permite obtener una mejor experiencia de usuario. Esto se aplica a todas las formas de resultados de búsqueda (en la Búsqueda web de Google, Google Imágenes o Discover).
max-snippet:[number]

Se usan un máximo de [number] caracteres como fragmento de texto para este resultado de búsqueda (ten en cuenta que una URL puede aparecer como varios resultados de búsqueda en una página de resultados de búsqueda). No afecta a las vistas previas de imágenes o vídeos y, además, se aplica a todas las formas de resultados de búsqueda (como la Búsqueda web de Google, Google Imágenes, Descubrir o el Asistente). Sin embargo, este límite no se aplica en los casos en los que un editor haya concedido permiso por separado para utilizar el contenido. Por ejemplo, si el editor proporciona contenido en forma de datos estructurados en la página o tiene un acuerdo de licencia con Google, esta configuración no interrumpe los usos permitidos más específicos. Esta directiva se ignora si no se especifica ningún elemento [number] que se pueda analizar.

Valores especiales:

  • 0: no se mostrará ningún fragmento. Equivalente a nosnippet.
  • -1: no hay límite de longitud de fragmentos.
  • Ejemplo:

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

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

    Valores setting aceptados:

  • none: no se mostrará ninguna vista previa de la imagen.
  • standard: es posible que se muestre una vista previa de la imagen predeterminada.
  • large: es posible que se muestre una vista previa más grande de una imagen, hasta el ancho de la ventana gráfica.
  • Se aplica a todo tipo de resultados de búsqueda (como la Búsqueda web de Google, Google Imágenes, Discover o el Asistente). Sin embargo, este límite no se aplica en los casos en los que un editor haya concedido permiso por separado para utilizar el contenido. Por ejemplo, si el editor proporciona contenido en forma de datos estructurados en la página o tiene un acuerdo de licencia con Google, esta configuración no interrumpirá los usos permitidos más específicos.

    Ejemplo:

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

    Utiliza fragmentos de vídeo de [number] segundos como máximo para los vídeos de esta página en los resultados de búsqueda.

    Otros valores admitidos:

  • 0: como máximo, se puede utilizar una imagen estática, de acuerdo con la configuración de "max-image-preview".
  • -1: no hay límite.
  • Se aplica a todo tipo de resultados de búsqueda (en la Búsqueda web de Google, Google Imágenes, Google Vídeos, Discover o el Asistente). Esta directiva se ignora si no se especifica ningún elemento [number] que se pueda analizar.

    Ejemplo:

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

    No se muestra esta página en los resultados de búsqueda después de la fecha y hora especificadas. La fecha y la hora deben especificarse en formatos ampliamente aceptados, como RFC 822, RFC 850 y ISO 8601. Esta directiva se ignora si no se especifica ningún valor [date/time] válido. De forma predeterminada, el contenido no tiene fecha de caducidad.

    Ejemplo:

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

    Uso conjunto de directivas para indexar y servir contenido

    Puedes crear una instrucción con varias directivas 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 y que no rastreen ninguno de los enlaces que contiene:

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

    A continuación, se muestra un ejemplo que incluye un fragmento de texto con límite de 20 caracteres y que permite obtener una vista previa de imagen grande:

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

    Cuando se especifiquen varios rastreadores y directivas, el buscador concatenará las directivas negativas. Por ejemplo:

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

    La página que contiene estas metaetiquetas se interpretará como si tuviera una directiva noindex, nofollow cuando el robot de Google la rastree.

    Usar el atributo HTML data-nosnippet

    Puedes indicar que haya partes de texto de una página HTML que no se utilicen en los fragmentos. Se puede hacer a nivel de elemento HTML con el atributo HTML data-nosnippet en los elementos span, div y section. data-nosnippet se considera un atributo booleano y es válido con o sin un valor. Para que los sistemas automatizados puedan interpretar correctamente las directivas, el código HTML de la sección debe ser válido y todas las etiquetas deben estar cerradas según corresponda.

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

    Normalmente, Google procesa las páginas para indexarlas, pero no se garantiza el renderizado. Por este motivo, la extracción de data-nosnippet puede producirse tanto antes como después del renderizado. Para evitar el renderizado ambiguo, no añadas ni elimines el atributo data-nosnippet de los nodos existentes a través de JavaScript. Al añadir elementos DOM a través de JavaScript, incluye el atributo data-nosnippet según sea necesario cuando añadas inicialmente el elemento al DOM de la página. Si vas a utilizar elementos personalizados, encapsúlalos o renderízalos con elementos div, span o section si tienes que usar data- nosnippet.

    Usar datos estructurados

    Las metaetiquetas "robots" controlan la cantidad de contenido que Google extrae automáticamente de las páginas web para mostrarlo como resultados de búsqueda. No obstante, muchos editores también utilizan los datos estructurados de schema.org para que la información específica aparezca en la presentación de búsqueda. Las limitaciones de las metaetiquetas "robots" no afectan al uso de los datos estructurados. Para administrar el uso de datos estructurados para tus páginas web, puedes modificar los tipos y valores de datos estructurados. Añade o elimina información para proporcionar solo los datos que quieres que estén disponibles. Ten en cuenta también que los resultados de búsqueda todavía pueden usar los datos estructurados cuando se declaran dentro de un elemento data-nosnippet.

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

    Puedes añadir X-Robots-Tag a las respuestas HTTP de un sitio a través de los archivos de configuración del software de servidor web de tu sitio web. Por ejemplo, en los servidores web Apache puedes utilizar archivos .htaccess y httpd.conf. La ventaja que ofrece el uso de una cabecera X-Robots-Tag con respuestas HTTP es que permite especificar las directivas de rastreo que se deben aplicar globalmente en un sitio. La posibilidad de utilizar expresiones regulares ofrece un gran nivel de flexibilidad.

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

    Apache:

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

    NGINX:

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

    Puedes utilizar X-Robots-Tag para archivos que no sean HTML, como archivos de imagen en los que no se puedan utilizar metaetiquetas "robots" en HTML. A continuación, se muestra un ejemplo de cómo añadir una directiva X-Robots-Tag noindex para archivos de imágenes (.png, .jpeg, .jpg, .gif) en 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";
    }
    

    Combinación del rastreo con las directivas para indexar y servir contenido

    Las metaetiquetas "robots" y las cabeceras HTTP X-Robots-Tag se descubren al rastrear una URL. Si no se permite rastrear una página a través del archivo robots.txt, no se podrá encontrar ninguna información sobre directivas para indexar y servir contenido, y la página se ignorará. Si se deben seguir directivas para indexar o servir contenido, no se debe impedir el rastreo de las URL que contengan esas directivas.