Organiza tus páginas con colecciones Guarda y categoriza el contenido según tus preferencias.

Datos estructurados de producto (Product, Review, Offer)

Si agregas datos estructurados a las páginas de productos, los resultados de la Búsqueda de Google (incluidos los de Google Imágenes y Google Lens) pueden mostrar información del producto de una forma más completa. Los usuarios pueden ver el precio, la disponibilidad, las calificaciones por opiniones, la información de envío y mucho más directamente en los resultados de la búsqueda.

Experiencias de compra

A continuación, te mostramos cómo se pueden mostrar las experiencias de compra en los resultados de la Búsqueda de Google. Ten en cuenta que esta lista no es exhaustiva; la Búsqueda de Google explora constantemente nuevas y mejores formas de ayudar a las personas a encontrar lo que buscan, y las experiencias pueden cambiar con el tiempo.

Tipos de resultados

Existen dos clases de tipos de resultados: fragmentos de productos y experiencias de fichas de comercios.

Fragmentos de productos en los resultados de la búsqueda

presentación de fragmentos de producto en los resultados de la búsqueda

Los fragmentos de producto son una forma más completa de presentar fragmentos en los resultados de búsqueda, con algo más que texto. Se usan con productos y opiniones sobre productos, y pueden incluir información adicional, como calificaciones, información de las opiniones, precio y disponibilidad.

Experiencias de fichas de comercios

Las experiencias de fichas de comercios se basan en datos más específicos sobre un producto, como el precio y la disponibilidad. Solo pueden aparecer en páginas en las que los usuarios pueden comprar un producto, no en páginas que incluyan vínculos a otros sitios en los que se vende. Google puede intentar verificar los datos de productos de la ficha de comercio antes de mostrar la información en los resultados de la búsqueda.

Presentación visual de productos en venta

presentación de productos populares en los resultados de la búsqueda
Panel de conocimiento de Shopping

Información detallada de los productos con una lista de vendedores (con detalles como los identificadores de productos)

presentación del panel de conocimiento de Shopping en los resultados de la búsqueda
Google Imágenes

Imágenes anotadas de los productos disponibles para la venta

presentación de Google Imágenes en los resultados de la búsqueda

Mejoras en los resultados

Si proporcionas información adicional del producto más allá de las propiedades requeridas, es posible que tu contenido reciba mejoras visuales adicionales, lo que ayuda a que se destaque en los resultados de la búsqueda. Consulta las definiciones de tipos de datos estructurados para obtener toda la información obligatoria y recomendada sobre los productos.

Las mejoras en los resultados de la búsqueda se muestran a discreción de cada experiencia y pueden cambiar con el tiempo. Por este motivo, te recomendamos que proporciones toda la información del producto que sea posible, sin preocuparte por las experiencias concretas que la usarán. Estos son algunos ejemplos de cómo se pueden mejorar las experiencias de fichas de comercios:

  • Calificaciones: Proporciona calificaciones y opiniones de los clientes para mejorar la apariencia de los resultados de la búsqueda.
  • Ventajas y desventajas: Identifica las ventajas y desventajas en la descripción de las opiniones sobre el producto para que se puedan destacar en los resultados de la búsqueda.
  • Envío: Comparte los costos de envío, especialmente si el envío gratuito, para que los compradores sepan cuál será el costo total.
  • Disponibilidad: Proporciona datos de disponibilidad para que los clientes sepan cuándo tienes un producto en stock.
  • Descuento: Para calcular los descuentos, Google observa los cambios de precio del producto a lo largo del tiempo. No se garantiza que se muestren los descuentos.

Para proporcionar datos de productos enriquecidos a la Búsqueda de Google, puedes agregar datos estructurados de Product a tus páginas web, subir feeds de datos a través de Google Merchant Center y habilitar las fichas gratuitas en la consola de Merchant Center. En esta página nos centraremos en la primera opción.

Proporcionar datos estructurados en páginas web y un feed de Merchant Center maximizará tu elegibilidad para las experiencias y ayudará a Google a comprender y verificar tus datos correctamente. Algunas experiencias combinan datos de datos estructurados y de feeds de Google Merchant Center si ambos están disponibles. Por ejemplo, los fragmentos de producto pueden usar datos sobre el precio de tu feed de Merchant Center si no están presentes en los datos estructurados de la página. La documentación de feeds de Google Merchant Center incluye recomendaciones y requisitos adicionales sobre los atributos del feed.

Además de la Búsqueda de Google, puedes obtener más información sobre la elegibilidad para la pestaña de Google Shopping en los requisitos de elegibilidad y datos de Google Merchant Center.

Cómo agregar datos estructurados

Los datos estructurados son un formato estandarizado para proporcionar información sobre una página y clasificar su contenido. Si aún no estás familiarizado con los datos estructurados, obtén más información sobre su funcionamiento.

A continuación, presentamos una descripción general para aprender a compilar, probar y actualizar datos estructurados. Si quieres obtener una guía paso a paso para agregar datos estructurados a una página web, consulta el codelab de datos estructurados.

  1. Agrega las propiedades obligatorias. Según el formato que uses, obtén información sobre las ubicaciones donde puedes insertar datos estructurados en la página.
  2. Sigue los lineamientos.
  3. Valida tu código con la Prueba de resultados enriquecidos.
  4. Implementa algunas páginas que incluyan tus datos estructurados y utiliza la Herramienta de inspección de URL para probar el modo en el que Google ve la página. Asegúrate de que Google pueda acceder a la página y que no esté bloqueada por un archivo robots.txt, una etiqueta noindex ni requisitos de acceso. Si la página se ve bien, puedes pedirle a Google que vuelva a rastrear tus URL.
  5. Para mantener informado a Google sobre los cambios futuros, te recomendamos que envíes un mapa del sitio. Puedes automatizar este proceso con la API de Search Console Sitemap.

Ejemplos

Los siguientes ejemplos ilustran cómo incluir datos estructurados en páginas web para diferentes situaciones.

Página de opiniones sobre productos

A continuación se incluye un ejemplo de los datos estructurados en una página de opiniones sobre productos para tratar fragmentos de producto en los resultados de la búsqueda.

JSON-LD


 <html>
  <head>
    <title>Executive Anvil</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org/",
      "@type": "Product",
      "name": "Executive Anvil",
      "description": "Sleeker than ACME's Classic Anvil, the Executive Anvil is perfect for the business traveler looking for something to drop from a height.",
      "review": {
        "@type": "Review",
        "reviewRating": {
          "@type": "Rating",
          "ratingValue": "4",
          "bestRating": "5"
        },
        "author": {
          "@type": "Person",
          "name": "Fred Benson"
        }
      },
      "aggregateRating": {
        "@type": "AggregateRating",
        "ratingValue": "4.4",
        "reviewCount": "89"
      }
    }
    </script>
  </head>
  <body>
  </body>
</html>

RDFa


 <html>
  <head>
    <title>Executive Anvil</title>
  </head>
  <body>
    <div typeof="schema:Product">
        <div rel="schema:review">
          <div typeof="schema:Review">
            <div rel="schema:reviewRating">
              <div typeof="schema:Rating">
                <div property="schema:ratingValue" content="4"></div>
                <div property="schema:bestRating" content="5"></div>
              </div>
            </div>
            <div rel="schema:author">
              <div typeof="schema:Person">
                <div property="schema:name" content="Fred Benson"></div>
              </div>
            </div>
          </div>
        </div>
        <div property="schema:name" content="Executive Anvil"></div>
        <div property="schema:description" content="Sleeker than ACME's Classic Anvil, the Executive Anvil is perfect for the business traveler looking for something to drop from a height."></div>
        <div rel="schema:aggregateRating">
          <div typeof="schema:AggregateRating">
            <div property="schema:reviewCount" content="89"></div>
            <div property="schema:ratingValue" content="4.4"></div>
          </div>
        </div>
      </div>
  </body>
</html>

Microdatos


 <html>
  <head>
    <title>Executive Anvil</title>
  </head>
  <body>
  <div>
    <div itemtype="https://schema.org/Product" itemscope>
      <meta itemprop="name" content="Executive Anvil" />
      <meta itemprop="description" content="Sleeker than ACME's Classic Anvil, the Executive Anvil is perfect for the business traveler looking for something to drop from a height." />
      <div itemprop="aggregateRating" itemtype="https://schema.org/AggregateRating" itemscope>
        <meta itemprop="reviewCount" content="89" />
        <meta itemprop="ratingValue" content="4.4" />
      </div>
      <div itemprop="review" itemtype="https://schema.org/Review" itemscope>
        <div itemprop="author" itemtype="https://schema.org/Person" itemscope>
          <meta itemprop="name" content="Fred Benson" />
        </div>
        <div itemprop="reviewRating" itemtype="https://schema.org/Rating" itemscope>
          <meta itemprop="ratingValue" content="4" />
          <meta itemprop="bestRating" content="5" />
        </div>
      </div>
    </div>
  </div>
  </body>
</html>

Página de agregador de compras

Aquí tienes un ejemplo de una página de agregador de compras para tratar fragmentos de producto en los resultados de la búsqueda.

JSON-LD


<html>
  <head>
    <title>Executive Anvil</title>
    <script type="application/ld+json">
      {
        "@context": "https://schema.org/",
        "@type": "Product",
        "name": "Executive Anvil",
        "image": [
          "https://example.com/photos/1x1/photo.jpg",
          "https://example.com/photos/4x3/photo.jpg",
          "https://example.com/photos/16x9/photo.jpg"
         ],
        "description": "Sleeker than ACME's Classic Anvil, the Executive Anvil is perfect for the business traveler looking for something to drop from a height.",
        "sku": "0446310786",
        "mpn": "925872",
        "brand": {
          "@type": "Brand",
          "name": "ACME"
        },
        "review": {
          "@type": "Review",
          "reviewRating": {
            "@type": "Rating",
            "ratingValue": "4",
            "bestRating": "5"
          },
          "author": {
            "@type": "Person",
            "name": "Fred Benson"
          }
        },
        "aggregateRating": {
          "@type": "AggregateRating",
          "ratingValue": "4.4",
          "reviewCount": "89"
        },
        "offers": {
          "@type": "AggregateOffer",
          "offerCount": "5",
          "lowPrice": "119.99",
          "highPrice": "199.99",
          "priceCurrency": "USD"
        }
      }
    </script>
  </head>
  <body>
  </body>
</html>

RDFa


 <html>
  <head>
    <title>Executive Anvil</title>
  </head>
  <body>
    <div typeof="schema:Product">
      <div rel="schema:review">
        <div typeof="schema:Review">
          <div rel="schema:reviewRating">
            <div typeof="schema:Rating">
              <div property="schema:ratingValue" content="4"></div>
              <div property="schema:bestRating" content="5"></div>
            </div>
          </div>
          <div rel="schema:author">
            <div typeof="schema:Person">
              <div property="schema:name" content="Fred Benson"></div>
            </div>
          </div>
        </div>
      </div>
      <div rel="schema:aggregateRating">
        <div typeof="schema:AggregateRating">
          <div property="schema:reviewCount" content="89"></div>
          <div property="schema:ratingValue" content="4.4"></div>
        </div>
      </div>
      <div rel="schema:image" resource="https://example.com/photos/4x3/photo.jpg"></div>
      <div property="schema:mpn" content="925872"></div>
      <div property="schema:name" content="Executive Anvil"></div>
      <div property="schema:description" content="Sleeker than ACME's Classic Anvil, the Executive Anvil is perfect for the business traveler looking for something to drop from a height."></div>
      <div rel="schema:image" resource="https://example.com/photos/1x1/photo.jpg">
      </div>
      <div rel="schema:brand">
        <div typeof="schema:Brand">
          <div property="schema:name" content="ACME"></div>
        </div>
      </div>
      <div rel="schema:offers">
        <div typeof="schema:AggregateOffer">
          <div property="schema:offerCount" content="5"></div>
          <div property="schema:lowPrice" content="119.99"></div>
          <div property="schema:highPrice" content="199.99"></div>
          <div property="schema:priceCurrency" content="USD"></div>
          <div rel="schema:url" resource="https://example.com/anvil"></div>
        </div>
      </div>
      <div rel="schema:image" resource="https://example.com/photos/16x9/photo.jpg"></div>
      <div property="schema:sku" content="0446310786"></div>
    </div>
  </body>
</html>

Microdatos


 <html>
  <head>
    <title>Executive Anvil</title>
  </head>
  <body>
  <div>
    <div itemtype="https://schema.org/Product" itemscope>
      <meta itemprop="mpn" content="925872" />
      <meta itemprop="name" content="Executive Anvil" />
      <link itemprop="image" href="https://example.com/photos/16x9/photo.jpg" />
      <link itemprop="image" href="https://example.com/photos/4x3/photo.jpg" />
      <link itemprop="image" href="https://example.com/photos/1x1/photo.jpg" />
      <meta itemprop="description" content="Sleeker than ACME's Classic Anvil, the Executive Anvil is perfect for the business traveler looking for something to drop from a height." />
      <div itemprop="offers" itemtype="https://schema.org/AggregateOffer" itemscope>
        <meta itemprop="lowPrice" content="119.99" />
        <meta itemprop="highPrice" content="199.99" />
        <meta itemprop="offerCount" content="6" />
        <meta itemprop="priceCurrency" content="USD" />
      </div>
      <div itemprop="aggregateRating" itemtype="https://schema.org/AggregateRating" itemscope>
        <meta itemprop="reviewCount" content="89" />
        <meta itemprop="ratingValue" content="4.4" />
      </div>
      <div itemprop="review" itemtype="https://schema.org/Review" itemscope>
        <div itemprop="author" itemtype="https://schema.org/Person" itemscope>
          <meta itemprop="name" content="Fred Benson" />
        </div>
        <div itemprop="reviewRating" itemtype="https://schema.org/Rating" itemscope>
          <meta itemprop="ratingValue" content="4" />
          <meta itemprop="bestRating" content="5" />
        </div>
      </div>
      <meta itemprop="sku" content="0446310786" />
      <div itemprop="brand" itemtype="https://schema.org/Brand" itemscope>
        <meta itemprop="name" content="ACME" />
      </div>
    </div>
  </div>
  </body>
</html>

Pros y contras

Este es un ejemplo de una página de opiniones sobre un producto editorial con ventajas y desventajas para el tratamiento de fragmentos de producto en los resultados de la búsqueda.

Ejemplo de la apariencia visual de las ventajas y desventajas en los resultados de la búsqueda

JSON-LD


 <html>
  <head>
    <title>Cheese Knife Pro review</title>
    <script type="application/ld+json">
      {
        "@context": "https://schema.org",
        "@type": "Product",
        "name": "Cheese Grater Pro",
        "review": {
          "@type": "Review",
          "name": "Cheese Knife Pro review",
          "author": {
            "@type": "Person",
            "name": "Pascal Van Cleeff"
          },
          "positiveNotes": {
            "@type": "ItemList",
            "itemListElement": [
              {
                "@type": "ListItem",
                "position": 1,
                "name": "Consistent results"
              },
              {
                "@type": "ListItem",
                "position": 2,
                "name": "Still sharp after many uses"
              }
            ]
          },
          "negativeNotes": {
            "@type": "ItemList",
            "itemListElement": [
              {
                "@type": "ListItem",
                "position": 1,
                "name": "No child protection"
              },
              {
                "@type": "ListItem",
                "position": 2,
                "name": "Lacking advanced features"
              }
            ]
          }
        }
      }
    </script>
  </head>
  <body>
  </body>
</html>

RDFa


 <html>
  <head>
    <title>Cheese Knife Pro review</title>
  </head>
  <body>
    <div typeof="schema:Product">
      <div property="schema:name" content="Cheese Knife Pro review"></div>
        <div rel="schema:review">
          <div typeof="schema:Review">
            <div rel="schema:positiveNotes">
              <div typeof="schema:ItemList">
                <div rel="schema:itemListElement">
                  <div typeof="schema:ListItem">
                    <div property="schema:position" content="1"></div>
                    <div property="schema:name" content="Consistent results"></div>
                  </div>
                  <div typeof="schema:ListItem">
                    <div property="schema:position" content="2"></div>
                    <div property="schema:name" content="Still sharp after many uses"></div>
                  </div>
                </div>
              </div>
            </div>
            <div rel="schema:negativeNotes">
              <div typeof="schema:ItemList">
                <div rel="schema:itemListElement">
                  <div typeof="schema:ListItem">
                    <div property="schema:position" content="1"></div>
                    <div property="schema:name" content="No child protection"></div>
                  </div>
                  <div typeof="schema:ListItem">
                    <div property="schema:position" content="2"></div>
                    <div property="schema:name" content="Lacking advanced features"></div>
                  </div>
                </div>
              </div>
            </div>
            <div rel="schema:author">
              <div typeof="schema:Person">
                <div property="schema:name" content="Pascal Van Cleeff"></div>
              </div>
            </div>
          </div>
        </div>
      </div>
  </body>
</html>

Microdatos


 <html>
  <head>
    <title>Cheese Knife Pro review</title>
  </head>
  <body>
    <div itemtype="https://schema.org/Product" itemscope>
      <meta itemprop="name" content="Cheese Knife Pro" />
      <div itemprop="review" itemtype="https://schema.org/Review" itemscope>
        <div itemprop="author" itemtype="https://schema.org/Person" itemscope>
          <meta itemprop="name" content="Pascal Van Cleeff" />
        </div>
        <div itemprop="positiveNotes" itemtype="https://schema.org/ItemList" itemscope>
          <div itemprop="itemListElement" itemtype="https://schema.org/ListItem" itemscope>
            <meta itemprop="position" content="1" />
            <meta itemprop="name" content="Consistent results" />
          </div>
          <div itemprop="itemListElement" itemtype="https://schema.org/ListItem" itemscope>
            <meta itemprop="position" content="2" />
            <meta itemprop="name" content="Still sharp after many uses" />
          </div>
        </div>
        <div itemprop="negativeNotes" itemtype="https://schema.org/ItemList" itemscope>
          <div itemprop="itemListElement" itemtype="https://schema.org/ListItem" itemscope>
            <meta itemprop="position" content="1" />
            <meta itemprop="name" content="No child protection" />
          </div>
          <div itemprop="itemListElement" itemtype="https://schema.org/ListItem" itemscope>
            <meta itemprop="position" content="2" />
            <meta itemprop="name" content="Lacking advanced features" />
          </div>
        </div>
      </div>
    </div>
  </body>
</html>

Página del producto con una oferta

Este es un ejemplo de una página de venta de un producto, con opiniones sobre él. Este extiende el ejemplo anterior de la página de opiniones sobre productos con datos estructurados relevantes para las fichas de comercios. Es posible que la página sea apta para todas las experiencias relacionadas con fichas de comercio, ya que incluye una Offer.

JSON-LD


 <html>
  <head>
    <title>Executive Anvil</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org/",
      "@type": "Product",
      "name": "Executive Anvil",
      "image": [
        "https://example.com/photos/1x1/photo.jpg",
        "https://example.com/photos/4x3/photo.jpg",
        "https://example.com/photos/16x9/photo.jpg"
       ],
      "description": "Sleeker than ACME's Classic Anvil, the Executive Anvil is perfect for the business traveler looking for something to drop from a height.",
      "sku": "0446310786",
      "mpn": "925872",
      "brand": {
        "@type": "Brand",
        "name": "ACME"
      },
      "review": {
        "@type": "Review",
        "reviewRating": {
          "@type": "Rating",
          "ratingValue": "4",
          "bestRating": "5"
        },
        "author": {
          "@type": "Person",
          "name": "Fred Benson"
        }
      },
      "aggregateRating": {
        "@type": "AggregateRating",
        "ratingValue": "4.4",
        "reviewCount": "89"
      },
      "offers": {
        "@type": "Offer",
        "url": "https://example.com/anvil",
        "priceCurrency": "USD",
        "price": "119.99",
        "priceValidUntil": "2020-11-20",
        "itemCondition": "https://schema.org/UsedCondition",
        "availability": "https://schema.org/InStock"
      }
    }
    </script>
  </head>
  <body>
  </body>
</html>

RDFa


 <html>
  <head>
    <title>Executive Anvil</title>
  </head>
  <body>
    <div typeof="schema:Product">
        <div rel="schema:review">
          <div typeof="schema:Review">
            <div rel="schema:reviewRating">
              <div typeof="schema:Rating">
                <div property="schema:ratingValue" content="4"></div>
                <div property="schema:bestRating" content="5"></div>
              </div>
            </div>
            <div rel="schema:author">
              <div typeof="schema:Person">
                <div property="schema:name" content="Fred Benson"></div>
              </div>
            </div>
          </div>
        </div>
        <div rel="schema:image" resource="https://example.com/photos/4x3/photo.jpg"></div>
        <div property="schema:mpn" content="925872"></div>
        <div property="schema:name" content="Executive Anvil"></div>
        <div property="schema:description" content="Sleeker than ACME's Classic Anvil, the Executive Anvil is perfect for the business traveler looking for something to drop from a height."></div>
        <div rel="schema:image" resource="https://example.com/photos/1x1/photo.jpg"></div>
        <div rel="schema:brand">
          <div typeof="schema:Brand">
            <div property="schema:name" content="ACME"></div>
          </div>
        </div>
        <div rel="schema:aggregateRating">
          <div typeof="schema:AggregateRating">
            <div property="schema:reviewCount" content="89"></div>
            <div property="schema:ratingValue" content="4.4"></div>
          </div>
        </div>
        <div rel="schema:offers">
          <div typeof="schema:Offer">
            <div property="schema:price" content="119.99"></div>
            <div property="schema:availability" content="https://schema.org/InStock"></div>
            <div property="schema:priceCurrency" content="USD"></div>
            <div property="schema:priceValidUntil" datatype="xsd:date" content="2020-11-20"></div>
            <div rel="schema:url" resource="https://example.com/anvil"></div>
            <div property="schema:itemCondition" content="https://schema.org/UsedCondition"></div>
          </div>
        </div>
        <div rel="schema:image" resource="https://example.com/photos/16x9/photo.jpg"></div>
        <div property="schema:sku" content="0446310786"></div>
      </div>
  </body>
</html>

Microdatos


 <html>
  <head>
    <title>Executive Anvil</title>
  </head>
  <body>
  <div>
    <div itemtype="https://schema.org/Product" itemscope>
      <meta itemprop="mpn" content="925872" />
      <meta itemprop="name" content="Executive Anvil" />
      <link itemprop="image" href="https://example.com/photos/16x9/photo.jpg" />
      <link itemprop="image" href="https://example.com/photos/4x3/photo.jpg" />
      <link itemprop="image" href="https://example.com/photos/1x1/photo.jpg" />
      <meta itemprop="description" content="Sleeker than ACME's Classic Anvil, the Executive Anvil is perfect for the business traveler looking for something to drop from a height." />
      <div itemprop="offers" itemtype="https://schema.org/Offer" itemscope>
        <link itemprop="url" href="https://example.com/anvil" />
        <meta itemprop="availability" content="https://schema.org/InStock" />
        <meta itemprop="priceCurrency" content="USD" />
        <meta itemprop="itemCondition" content="https://schema.org/UsedCondition" />
        <meta itemprop="price" content="119.99" />
        <meta itemprop="priceValidUntil" content="2020-11-20" />
      </div>
      <div itemprop="aggregateRating" itemtype="https://schema.org/AggregateRating" itemscope>
        <meta itemprop="reviewCount" content="89" />
        <meta itemprop="ratingValue" content="4.4" />
      </div>
      <div itemprop="review" itemtype="https://schema.org/Review" itemscope>
        <div itemprop="author" itemtype="https://schema.org/Person" itemscope>
          <meta itemprop="name" content="Fred Benson" />
        </div>
        <div itemprop="reviewRating" itemtype="https://schema.org/Rating" itemscope>
          <meta itemprop="ratingValue" content="4" />
          <meta itemprop="bestRating" content="5" />
        </div>
      </div>
      <meta itemprop="sku" content="0446310786" />
      <div itemprop="brand" itemtype="https://schema.org/Brand" itemscope>
        <meta itemprop="name" content="ACME" />
      </div>
    </div>
  </div>
  </body>
</html>

Producto con una oferta y detalles de envío

Este es un ejemplo de una página de un producto con detalles de envío. En este ejemplo, se generaría una tarifa de envío de $3.49 para todos los usuarios que se encuentren en EE.UU. Para obtener más ejemplos, consulta la sección Envío.

JSON-LD


 <html>
  <head>
    <title>Nice trinket</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org/",
      "@type": "Product",
      "sku": "trinket-12345",
      "gtin14": "12345678901234",
      "image": [
        "https://example.com/photos/16x9/trinket.jpg",
        "https://example.com/photos/4x3/trinket.jpg",
        "https://example.com/photos/1x1/trinket.jpg"
      ],
      "name": "Nice trinket",
      "description": "Trinket with clean lines",
      "brand": {
        "@type": "Brand",
        "name": "MyBrand"
      },
      "offers": {
        "@type": "Offer",
        "url": "https://www.example.com/trinket_offer",
        "itemCondition": "https://schema.org/NewCondition",
        "availability": "https://schema.org/InStock",
        "price": "39.99",
        "priceCurrency": "USD",
        "priceValidUntil": "2020-11-20",
        "shippingDetails": {
          "@type": "OfferShippingDetails",
          "shippingRate": {
            "@type": "MonetaryAmount",
            "value": "3.49",
            "currency": "USD"
          },
          "shippingDestination": {
            "@type": "DefinedRegion",
            "addressCountry": "US"
          },
          "deliveryTime": {
            "@type": "ShippingDeliveryTime",
            "handlingTime": {
              "@type": "QuantitativeValue",
              "minValue": "0",
              "maxValue": "1"
            },
            "transitTime": {
              "@type": "QuantitativeValue",
              "minValue": "1",
              "maxValue": "5"
            }
          }
        }
      },
      "review": {
        "@type": "Review",
          "reviewRating": {
            "@type": "Rating",
            "ratingValue": "4",
            "bestRating": "5"
          },
          "author": {
            "@type": "Person",
            "name": "Fred Benson"
          }
        },
        "aggregateRating": {
          "@type": "AggregateRating",
          "ratingValue": "4.4",
          "reviewCount": "89"
        }
      }
    </script>
  </head>
  <body>
  </body>
</html>

RDFa


 <html>
  <head>
    <title>Nice trinket</title>
  </head>
  <body>
    <div typeof="schema:Product">
      <div property="schema:sku" content="trinket-12345"></div>
      <div property="schema:gtin14" content="12345678901234"></div>
      <div property="schema:name" content="Nice trinket"></div>
      <div rel="schema:image" resource="https://example.com/photos/16x9/trinket.jpg"></div>
      <div rel="schema:image" resource="https://example.com/photos/4x3/trinket.jpg"></div>
      <div rel="schema:image" resource="https://example.com/photos/1x1/trinket.jpg"></div>
      <div property="schema:description" content="Trinket with clean lines"></div>
      <div rel="schema:brand">
        <div typeof="schema:Brand">
          <div property="schema:name" content="MyBrand"></div>
        </div>
      </div>
      <div rel="schema:offers">
        <div typeof="schema:Offer">
          <div rel="schema:url" resource="https://example.com/trinket_offer"></div>
          <div property="schema:itemCondition" content="https://schema.org/NewCondition"></div>
          <div property="schema:availability" content="https://schema.org/InStock"></div>
          <div property="schema:price" content="39.99"></div>
          <div property="schema:priceCurrency" content="USD"></div>
          <div property="schema:priceValidUntil" datatype="xsd:date" content="2020-11-20"></div>
          <div rel="schema:shippingDetails">
            <div typeof="schema:OfferShippingDetails">
              <div rel="schema:shippingRate">
                <div typeof="schema:MonetaryAmount">
                  <div property="schema:value" content="3.49"></div>
                  <div property="schema:currency" content="USD"></div>
                </div>
              </div>
              <div rel="schema:shippingDestination">
                <div typeof="schema:DefinedRegion">
                  <div property="schema:addressCountry" content="US"></div>
                </div>
              </div>
              <div rel="schema:deliveryTime">
                <div typeof="schema:ShippingDeliveryTime">
                  <div rel="schema:handlingTime">
                    <div typeof="schema:QuantitativeValue">
                      <div property="schema:minValue" content="0"></div>
                      <div property="schema:maxValue" content="1"></div>
                    </div>
                  </div>
                  <div rel="schema:transitTime">
                    <div typeof="schema:QuantitativeValue">
                      <div property="schema:minValue" content="1"></div>
                      <div property="schema:maxValue" content="5"></div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </div>
      </div>
      <div rel="schema:review">
        <div typeof="schema:Review">
          <div rel="schema:reviewRating">
            <div typeof="schema:Rating">
              <div property="schema:ratingValue" content="4"></div>
              <div property="schema:bestRating" content="5"></div>
            </div>
          </div>
          <div rel="schema:author">
            <div typeof="schema:Person">
              <div property="schema:name" content="Fred Benson"></div>
            </div>
          </div>
        </div>
      </div>
      <div rel="schema:aggregateRating">
        <div typeof="schema:AggregateRating">
          <div property="schema:reviewCount" content="89"></div>
          <div property="schema:ratingValue" content="4.4"></div>
        </div>
      </div>
    </div>
  </body>
</html>

Microdatos


 <html>
  <head>
    <title>Nice trinket</title>
  </head>
  <body>
  <div>
    <div itemtype="https://schema.org/Product" itemscope>
      <meta itemprop="sku" content="trinket-12345" />
      <meta itemprop="gtin14" content="12345678901234" />
      <meta itemprop="name" content="Nice trinket" />
      <link itemprop="image" href="https://example.com/photos/16x9/trinket.jpg" />
      <link itemprop="image" href="https://example.com/photos/4x3/trinket.jpg" />
      <link itemprop="image" href="https://example.com/photos/1x1/trinket.jpg" />
      <meta itemprop="description" content="Trinket with clean lines" />
      <div itemprop="brand" itemtype="https://schema.org/Brand" itemscope>
        <meta itemprop="name" content="MyBrand" />
      </div>
      <div itemprop="offers" itemtype="https://schema.org/Offer" itemscope>
        <link itemprop="url" href="https://www.example.com/trinket_offer" />
        <meta itemprop="itemCondition" content="https://schema.org/NewCondition" />
        <meta itemprop="availability" content="https://schema.org/InStock" />
        <meta itemprop="price" content="39.99" />
        <meta itemprop="priceCurrency" content="USD" />
        <meta itemprop="priceValidUntil" content="2020-11-20" />
        <div itemprop="shippingDetails" itemtype="https://schema.org/OfferShippingDetails" itemscope>
          <div itemprop="shippingRate" itemtype="https://schema.org/MonetaryAmount" itemscope>
            <meta itemprop="value" content="3.49" />
            <meta itemprop="currency" content="USD" />
          </div>
          <div itemprop="shippingDestination" itemtype="https://schema.org/DefinedRegion" itemscope>
            <meta itemprop="addressCountry" content="US" />
          </div>
          <div itemprop="deliveryTime" itemtype="https://schema.org/ShippingDeliveryTime" itemscope>
            <div itemprop="handlingTime" itemtype="https://schema.org/QuantitativeValue" itemscope>
              <meta itemprop="minValue" content="0" />
              <meta itemprop="maxValue" content="1" />
            </div>
            <div itemprop="transitTime" itemtype="https://schema.org/QuantitativeValue" itemscope>
              <meta itemprop="minValue" content="1" />
              <meta itemprop="maxValue" content="5" />
            </div>
          </div>
        </div>
      </div>
      <div itemprop="review" itemtype="https://schema.org/Review" itemscope>
        <div itemprop="author" itemtype="https://schema.org/Person" itemscope>
          <meta itemprop="name" content="Fred Benson" />
        </div>
        <div itemprop="reviewRating" itemtype="https://schema.org/Rating" itemscope>
          <meta itemprop="ratingValue" content="4" />
          <meta itemprop="bestRating" content="5" />
        </div>
      </div>
      <div itemprop="aggregateRating" itemtype="https://schema.org/AggregateRating" itemscope>
        <meta itemprop="reviewCount" content="89" />
        <meta itemprop="ratingValue" content="4.4" />
      </div>
    </div>
  </div>
  </body>
</html>

Cómo indicar envíos gratis

Este es un ejemplo de cómo brindar envíos gratis a compradores en el estado de Nueva York (EE.UU).

"shippingDetails": {
  "@type": "OfferShippingDetails",
  "shippingRate": {
    "@type": "MonetaryAmount",
    "value": "0",
    "currency": "USD"
  },
  "shippingDestination": [
    {
      "@type": "DefinedRegion",
      "addressCountry": "US",
      "addressRegion": ["NY"]
    }
  ]
}

Precios

Aquí tienes dos ejemplos de codificación de precios en JSON-LD.

Los precios se pueden especificar con la propiedad price de la siguiente manera:

"offers": {
  "@type": "Offer",
  "price": 10.00,
  "priceCurrency": "USD",
  ...
}

Como alternativa, se puede especificar un precio con la propiedad priceSpecification.

"offers": {
  "@type": "Offer",
  "priceSpecification": {
    "@type": "UnitPriceSpecification",
    "price": 10.00,
    "priceCurrency": "USD"
  },
  ...
}

Precios con medidas de precio por unidad

A continuación, se muestra un ejemplo de cómo codificar un precio para 4.5 l de un producto que siempre se vende en múltiplos de 750 ml. Esta forma de fijar precios es particularmente importante en la UE para los productos que se venden por volumen o peso.

Cuando están presentes la medida de precio por unidad y la medida base de precio por unidad, el precio se codifica en un UnitPriceSpecification.

"priceSpecification": {
  "@type": "UnitPriceSpecification",
  "price": 81.00,
  "priceCurrency": "EUR",
  "referenceQuantity": {
    "@type": "QuantitativeValue",
    "value": "4.5",
    "unitCode": "LTR",
    "valueReference": {
      "@type": "QuantitativeValue",
      "value": "750",
      "unitCode": "MLT"
    }
  }
}

Calificaciones de eficiencia energética

En el siguiente ejemplo, se muestra cómo especificar información de eficiencia energética mediante datos estructurados. En él, se especifica el nivel de eficiencia energética "C" de la UE, en una escala que va de "A+" a "F", para un calentador de agua.

Ten en cuenta que el nivel mínimo de eficiencia energética especifica el nivel de eficiencia energética más bajo en la escala de consumo de energía (en este caso, "F"), mientras que el nivel máximo de eficiencia energética especifica el nivel más eficiente (en este caso, "A+").

{
  "@context": "https://schema.org/",
  "@type": "Product",
  "sku": "1234-5678",
  "image": "https://www.example.com/waterheater.jpg",
  "name": "Water heater",
  "description": "Large capacity water heater",
  "gtin14": "12345678901231",
  "mpn": "WH1234",
  "brand": {
    "@type": "Brand",
    "name": "ExampleWaterHeaterBrand"
  },
  "hasEnergyConsumptionDetails": {
    "@type": "EnergyConsumptionDetails",
    "hasEnergyEfficiencyCategory": "https://schema.org/EUEnergyEfficiencyCategoryC",
    "energyEfficiencyScaleMin": "https://schema.org/EUEnergyEfficiencyCategoryF",
    "energyEfficiencyScaleMax": "https://schema.org/EUEnergyEfficiencyCategoryA1Plus"
  },
  "offers": {
    "@type": "Offer",
    "url": "https://www.example.com/hotwaterheater",
    "itemCondition": "https://schema.org/NewCondition",
    "availability": "https://schema.org/InStock",
    "price": 1799.00,
    "priceCurrency": "EUR"
  }
}

Lineamientos

Los resultados de productos enriquecidos proporcionan a los usuarios información sobre un producto específico, como precio, disponibilidad y opiniones de usuarios. A fin de que tu lenguaje de marcado de Product sea apto para el tratamiento enriquecido, debes seguir estos lineamientos:

Lineamientos técnicos

  • Usa lenguaje de marcado para un producto específico, no para categorías ni para listas de productos. Por ejemplo, "calzado de nuestra tienda" no es un producto específico. Actualmente, los resultados enriquecidos de productos solo admiten páginas que se centran en un solo producto. Se incluyen variantes de productos en las que cada variante de producto tiene una URL diferente. Te recomendamos que te enfoques en agregar lenguaje de marcado a las páginas de productos, en lugar de a las páginas que enumeran productos o una categoría de productos.
  • Cuando ofrezcas productos para la venta en varias monedas, ten una URL diferente para cada una. Por ejemplo, si un producto está disponible para la venta en dólares canadienses y estadounidenses, usa dos URLs distintas, una por moneda.
  • Si agregas datos estructurados de ventajas y desventajas, debes seguir estos lineamientos:
    • Actualmente, solo las páginas de opiniones editoriales sobre productos son aptas para la mejora de ventajas y desventajas en la Búsqueda, y no las páginas de productos de comercios ni las opiniones sobre productos de clientes.
    • Debe haber al menos dos declaraciones sobre el producto. Puede ser cualquier combinación de enunciados positivos o negativos (por ejemplo, el lenguaje de marcado de ItemList con dos declaraciones positivas es válido).
    • Los usuarios deben poder ver las ventajas y desventajas en la página.

Lineamientos de contenido

  • No permitimos contenido que promocione productos, servicios ni información ampliamente prohibidos o regulados que puedan facilitar daños graves, inmediatos o a largo plazo a las personas. Esto incluye contenido relacionado con armas de fuego y armas blancas, drogas recreativas, productos de tabaco y cigarrillos electrónicos, y productos relacionados con juegos de apuestas.

Definiciones de tipos de datos estructurados

En esta sección, se enumeran los requisitos para las experiencias de fragmentos de producto y las fichas de comercios en los resultados de la búsqueda. Selecciona la pestaña correspondiente a fin de ver las propiedades de datos estructurados obligatorias y recomendadas para cada uno de los casos.

Para las páginas donde los clientes pueden comprar tus productos, haz lo siguiente:

  • Sigue los requisitos de datos estructurados de comercios para maximizar la elegibilidad de las páginas que venden productos en las experiencias de compra en los resultados de la búsqueda.
  • Usa el Informe de fichas de comercios de Search Console para identificar errores en el lenguaje de marcado.

Para páginas de productos en las que los usuarios no pueden comprar el producto directamente, haz lo siguiente:

  • Sigue los requisitos de datos estructurados para fragmentos de producto a fin de maximizar la elegibilidad de tus páginas para los fragmentos de productos en los resultados de la búsqueda de las páginas que no venden productos.
  • Usa el Informe de fragmentos de producto de Search Console para identificar errores en el lenguaje de marcado.

Información del producto

Product

La definición completa de Product está disponible en schema.org/Product. Cuando incluyas lenguaje de marcado en el contenido de la información del producto, usa las siguientes propiedades del tipo Product:

Fragmentos de productos

Las siguientes propiedades se aplican a los fragmentos de producto.

Propiedades obligatorias
name

Text

Es el nombre del producto.

Los fragmentos de producto requieren review, aggregateRating o offers.

Debes incluir una de las siguientes propiedades:

  • review
  • aggregateRating
  • offers
Propiedades recomendadas
aggregateRating

AggregateRating

Corresponde a un objeto aggregateRating anidado del producto. Sigue los lineamientos para los fragmentos de opiniones y la lista de propiedades AggregateRating obligatorias y recomendadas.

offers

Offer o AggregateOffer

Corresponde a un objeto Offer o AggregateOffer anidado para vender el producto. Incluye las propiedades obligatorias y recomendadas para Offer o AggregateOffer (la que se aplique a tu contenido).

Usa Offer, no AggregateOffer, a fin de ser apto para la aparición del precio.

review

Review

Corresponde a un objeto Review anidado del producto. Sigue los lineamientos para los fragmentos de opiniones, así como la lista de propiedades de opiniones obligatorias y recomendadas.

Si agregas una opinión sobre el producto, el nombre del autor de la opinión debe ser un nombre válido de una persona (Person) o de un equipo (Team).

No se recomienda: 50% de descuento durante Black Friday

Se recomienda: "Juan Pérez" o "Revisores de CNET"

Para informar a Google de forma manual sobre las ventajas y desventajas de una página de opiniones editoriales sobre productos, agrega las propiedades positiveNotes o negativeNotes a la opinión sobre producto anidada.

Fichas de comercios

Las siguientes propiedades se aplican a las fichas de comercios.

Propiedades obligatorias
name

Text

Es el nombre del producto.

image

Es un valor repetido de ImageObject o URL.

Es la URL de una foto del producto. Se recomienda el uso de imágenes que muestren claramente el producto (por ejemplo, con un fondo blanco).

Lineamientos adicionales sobre imágenes:

  • Cada página debe contener al menos una imagen (independientemente de si se incluye lenguaje de marcado o no). Google elegirá la mejor para mostrar en los resultados de la Búsqueda según la relación de aspecto y resolución.
  • Las URL de las imágenes se deben poder rastrear e indexar. Para comprobar si Google puede acceder a tus URL, usa la Herramienta de inspección de URL.
  • Deben representar el contenido con lenguaje de marcado.
  • Las imágenes deben estar en un formato de archivo compatible con Google Imágenes.
  • Para obtener mejores resultados, proporciona varias imágenes en alta resolución (mínimo de 50,000 píxeles al multiplicar el ancho por el alto) con las siguientes relaciones de aspecto: 16 × 9, 4 × 3 y 1 × 1.

Por ejemplo:

"image": [
  "https://example.com/photos/1x1/photo.jpg",
  "https://example.com/photos/4x3/photo.jpg",
  "https://example.com/photos/16x9/photo.jpg"
]
offers

Offer

Corresponde a un objeto Offer anidado para vender el producto.

Los fragmentos de producto aceptan una Offer o AggregateOffer, pero las fichas de comercios requieren unaOffer dado que el comercio debe ser el vendedor del producto para poder ofrecer experiencias mediante la ficha de comercio.

Propiedades recomendadas
aggregateRating

AggregateRating

Corresponde a un objeto aggregateRating anidado del producto. Sigue los lineamientos para los fragmentos de opiniones y la lista de propiedades AggregateRating obligatorias y recomendadas.

audience

PeopleAudience

Información adicional sobre el público sugerido al que se ofrece el producto (como el género y la edad). Solo se admite el tipo PeopleAudience. Consulta la lista de propiedades PeopleAudience compatibles con Google.

brand.name

Text

Incluye la marca del producto en la propiedad name del tipo Brand, si la conoces. Incluye, como máximo, un nombre de marca.

color

Text

El color o la combinación de colores del producto, por ejemplo, "rojo" o "amarillo/azul cielo". Consulta también el atributo Color en la Ayuda de Google Merchant Center.

description

Text

Es la descripción del producto.

Si bien la descripción del producto no es obligatoria, se recomienda proporcionarla en esta propiedad.

gtin | gtin8 | gtin12 | gtin13 | gtin14 | isbn

Text

Incluye todos los identificadores globales correspondientes que se describen en schema.org/Product. Si bien puedes usar la propiedad genérica gtin para todos los GTINs, te recomendamos que uses el GTIN más específico que se aplique a tu producto, ya que esta es la representación más precisa del producto. Asegúrate de que el valor de GTIN tenga formato numérico; no admitimos el formato URL para GTIN.

hasEnergyConsumptionDetails

EnergyConsumptionDetails

Incluye información sobre el consumo energético de los productos (por ejemplo, los eléctricos). Esta propiedad es especialmente importante en los países europeos. Consulta también la lista de propiedades de EnergyConsumptionDetails compatibles con Google.

inProductGroupWithID

Text

Es el ID de un grupo de productos al que pertenece esta variante. Consulta también Item Group Id en la Ayuda de Google Merchant Center. Se debe especificar como máximo un valor.

material

Text

Indica el material o la combinación de materiales con la que está hecho el producto, como "Cuero" o "Algodón/Poliéster". Consulta también Material en la Ayuda de Google Merchant Center.

mpn

Text

Es el número de pieza del fabricante. Esta propiedad identifica de forma única el producto de un fabricante determinado.

pattern

Text

El diseño del producto, como "con lunares" o "con rayas". También consulta Pattern en la página de especificaciones de datos de productos de Google Merchant Center.

review

Review

Corresponde a un objeto Review anidado del producto. Sigue los lineamientos para los fragmentos de opiniones, así como la lista de propiedades de opiniones obligatorias y recomendadas. Consulta también la lista de propiedades Review adicionales específicas del tipo de schema.org Product.

Si agregas una opinión sobre el producto, el nombre del autor de la opinión debe ser un nombre válido de una persona (Person) o de un equipo (Team).

No se recomienda: 50% de descuento durante Black Friday

Se recomienda: "Juan Pérez" o "Revisores de CNET"

Las ventajas y desventajas solo se admiten en las páginas de opiniones sobre productos editoriales, no en las de fichas de comercios.

size

Text o SizeSpecification

El tamaño del producto, como "XL" o "mediano". También consulta size en la página de especificaciones de datos de productos de Google Merchant Center. Consulta la lista de propiedades SizeSpecification compatibles con Google. Se debe especificar como máximo un valor.

sku

Text

Corresponde al identificador específico del comercio para el producto. Se debe especificar como máximo un valor.

Opiniones sobre productos

Review

Como las opiniones se comparten mediante varios tipos de datos estructurados (como Recipe y Movie), el tipo Review se describe por separado en las propiedades de opiniones. También puedes consultar los Lineamientos para los fragmentos de opiniones. Las siguientes propiedades también están disponibles para las opiniones sobre productos.

Fragmentos de productos

Las siguientes propiedades son adicionales para el tipo Review a fin de ayudar a las personas a ver un resumen de alto nivel de las ventajas y desventajas de una opinión editorial. La apariencia de las ventajas y desventajas está disponible en alemán, español, francés, holandés, inglés, italiano, japonés, polaco, portugués y turco en todos los países donde está disponible la Búsqueda de Google.

Si bien Google intenta comprender automáticamente las ventajas y desventajas de una opinión editorial, puedes agregar las propiedades positiveNotes o negativeNotes para proporcionar esta información de forma explícita a la opinión sobre producto anidada. Asegúrate de seguir los lineamientos sobre ventajas y desventajas.

Propiedades obligatorias
negativeNotes

ItemList (consulta ItemList para ver notas positivas y negativas sobre el uso de ItemList en este contexto)

Una lista anidada opcional de declaraciones negativas sobre el producto (desventajas).

Para enumerar varias declaraciones negativas, especifica varias propiedades ListItem en un array itemListElement. Por ejemplo:


"review": {
  "@type": "Review",
  "negativeNotes": {
    "@type": "ItemList",
    "itemListElement": [
      {
        "@type": "ListItem",
        "position": 1,
        "name": "No child protection"
      },
      {
        "@type": "ListItem",
        "position": 2,
        "name": "Lacking advanced features"
      }
    ]
  }
}
positiveNotes

ItemList (consulta ItemList para ver notas positivas y negativas sobre el uso de ItemList en este contexto)

Una lista anidada opcional de declaraciones positivas sobre el producto (ventajas).

Para enumerar varias declaraciones positivas, especifica varias propiedades ListItem en un array itemListElement. Por ejemplo:


"review": {
  "@type": "Review",
  "positiveNotes": {
    "@type": "ItemList",
    "itemListElement": [
      {
        "@type": "ListItem",
        "position": 1,
        "name": "Consistent results"
      },
      {
        "@type": "ListItem",
        "position": 2,
        "name": "Still sharp after many uses"
      }
    ]
  }
}
Fichas de comercios

Mientras que el tipo Review se usa en las experiencias de las fichas de comercios, no se incluyen las notas positivas ni negativas (ventajas y desventajas). Por lo tanto, no se incluyen propiedades adicionales para las opiniones específicas sobre productos.

ItemList para notas positivas y negativas

Las notas positivas y negativas (ventajas y desventajas) del tipo Review usan los tipos genéricos ItemList y ListItem. En esta sección, se describe cómo usar estos tipos de notas positivas y negativas.

Fragmentos de productos

Las siguientes propiedades se usan para capturar las ventajas y desventajas de una opinión.

Propiedades obligatorias
itemListElement

ListItem

Una lista de declaraciones sobre el producto, ordenadas de manera específica. Especifica cada declaración con un ListItem.

itemListElement.name

Text

Es la declaración clave de la opinión.

Propiedades recomendadas
itemListElement.position

Integer

Es la posición de la opinión. La posición 1 representa la primera declaración de la lista.

Fichas de comercios

Mientras que el tipo Review se usa en las experiencias de las fichas de comercios, no se incluyen las notas positivas ni negativas (ventajas y desventajas).

Detalles de la oferta

Offer

La definición completa de Offer está disponible en schema.org/Offer. Cuando incluyas lenguaje de marcado en ofertas en un producto, usa las siguientes propiedades del tipo schema.org Offer.

Fragmentos de productos

Las siguientes propiedades se aplican a los fragmentos de producto.

Propiedades obligatorias
price o priceSpecification.price

Number

Es el precio de oferta de un producto. Sigue los lineamientos de uso de schema.org.

Este es un ejemplo de la propiedad price (el valor puede ser una string o un número JSON):


"offers": {
  "@type": "Offer",
  "price": 39.99,
  "priceCurrency": "USD"
}

A continuación, se muestra un ejemplo de cómo especificar que un producto está disponible sin pago:


"offers": {
  "@type": "Offer",
  "price": 0,
  "priceCurrency": "EUR"
}

Como alternativa, el precio de la oferta se puede anidar dentro de una propiedad priceSpecification en lugar de proporcionarse en el nivel Offer.


"offers": {
  "@type": "Offer",
  "priceSpecification": {
    "@type": "PriceSpecification",
    "price": 9.99,
    "priceCurrency": "AUD"
  }
}
Propiedades recomendadas
availability

ItemAvailability

Son las posibles opciones de disponibilidad del producto.

  • https://schema.org/BackOrder
  • https://schema.org/Discontinued
  • https://schema.org/InStock
  • https://schema.org/InStoreOnly
  • https://schema.org/LimitedAvailability
  • https://schema.org/OnlineOnly
  • https://schema.org/OutOfStock
  • https://schema.org/PreOrder
  • https://schema.org/PreSale
  • https://schema.org/SoldOut

También se admiten los nombres cortos sin el prefijo de la URL (por ejemplo, BackOrder).

priceCurrency o priceSpecification.priceCurrency

Text

Corresponde a la moneda utilizada para describir el precio del producto con el formato ISO 4217 de tres letras.

Actualmente, esta propiedad se recomienda para fragmentos de productos a fin de ayudar a Google a determinar la moneda con mayor precisión, pero es obligatorio para las experiencias en las fichas de comercios. Por lo tanto, es mejor proporcionar siempre esta propiedad.

priceValidUntil

Date

Corresponde a la fecha (con el formato de fecha ISO 8601) después de la cual el precio dejará de estar disponible, si corresponde. Es posible que el fragmento del producto no aparezca si la propiedad priceValidUntil indica una fecha pasada.

Fichas de comercios

Las siguientes propiedades se aplican a las experiencias de las fichas de comercios.

Propiedades obligatorias
price o priceSpecification.price

Number

Es el precio de oferta de un producto. Sigue los lineamientos de uso de schema.org.

A continuación, se muestra un ejemplo de la propiedad price:


"offers": {
  "@type": "Offer",
  "price": 39.99,
  "priceCurrency": "USD"
}

A diferencia de los fragmentos de producto, las experiencias de las fichas de comercios requieren un precio superior a cero.

El precio de oferta es obligatorio, pero se puede anidar dentro de una propiedad priceSpecification en lugar de proporcionarse en el nivel de Offer.

priceCurrency o priceSpecification.priceCurrency

Text

Corresponde a la moneda utilizada para describir el precio del producto con el formato ISO 4217 de tres letras.

priceCurrency es obligatorio si se especifica price; de lo contrario, se requiere priceSpecification.priceCurrency si se especifica priceSpecification.price.

priceSpecification

UnitPriceSpecification

Los precios complejos se pueden especificar con priceSpecification en lugar de con la propiedad price. Consulta la lista de propiedades compatibles de UnitPriceSpecification y los ejemplos para ver ejemplos de cómo agregar lenguaje de marcado a diversas formas de fijación de precios.

Los precios se pueden especificar con price y priceCurrency a nivel de Offer o dentro de la propiedad priceSpecification.

Los precios con medidas de precio por unidad pueden especificar una propiedad referenceQuantity dentro de un UnitPriceSpecification.

Propiedades recomendadas
availability

ItemAvailability

Son las posibles opciones de disponibilidad del producto. También se admiten los nombres cortos sin el prefijo de la URL (por ejemplo, BackOrder).

  • https://schema.org/BackOrder
  • https://schema.org/Discontinued
  • https://schema.org/InStock
  • https://schema.org/InStoreOnly
  • https://schema.org/LimitedAvailability
  • https://schema.org/OnlineOnly
  • https://schema.org/OutOfStock
  • https://schema.org/PreOrder
  • https://schema.org/PreSale
  • https://schema.org/SoldOut

No especifiques más de un valor.

itemCondition

OfferItemCondition

Estado del artículo que se ofrece para la venta. También se admiten los nombres cortos sin el prefijo de la URL (por ejemplo, NewCondition).

  • https://schema.org/NewCondition
  • https://schema.org/RefurbishedCondition
  • https://schema.org/UsedCondition

No especifiques más de un valor.

shippingDetails

OfferShippingDetails

Información anidada sobre las políticas y las opciones de envío asociadas a un objeto Offer. Si decides agregar shippingDetails, agrega las propiedades de OfferShippingDetails obligatorias y recomendadas.

url

URL

Una URL de la página web del producto en la que un usuario puede comprar el producto. Esta URL puede ser la URL preferida de la página actual con todas las opciones de variantes seleccionadas de forma adecuada. Se puede omitir la URL. No proporciones varias URLs.

UnitPriceSpecification

La definición completa de UnitPriceSpecification está disponible en schema.org/UnitPriceSpecification. Usa las siguientes propiedades para capturar esquemas de precios más complejos.

Fragmentos de productos

Las siguientes propiedades se aplican a los fragmentos de producto.

Propiedades obligatorias
price

Number

Es el precio de oferta de un producto. Consulta también la propiedad price de Offer.

Propiedades recomendadas
priceCurrency

Text

Corresponde a la moneda utilizada para describir el precio del producto con el formato ISO 4217 de tres letras. Consulta también la propiedad priceCurrency de Offer.

Si bien esta propiedad es opcional para los fragmentos de productos, es obligatoria para las experiencias de fichas de comercios y, por lo tanto, se recomienda proporcionarla.

Fichas de comercios

Las siguientes propiedades se aplican a las experiencias de las fichas de comercios.

Propiedades obligatorias
price

Number

Es el precio de oferta de un producto. Consulta también la propiedad price de Offer.

priceCurrency

Text

Corresponde a la moneda utilizada para describir el precio del producto con el formato ISO 4217 de tres letras. Consulta también la propiedad priceCurrency de Offer.

Propiedades recomendadas
referenceQuantity

QuantitativeValue (para el precio unitario)

La cantidad de referencia se usa para los precios que especifican un valor de referencia. Consulta también los ejemplos Precios con medidas de precio por unidad y medidas de precio por unidad en la Ayuda de Google Merchant Center para obtener un análisis detallado sobre el precio por unidad.

QuantitativeValue (para el precio unitario)

En esta sección, se explica el uso de QuantitativeValue para la propiedad referenceQuantity de una especificación de precio por unidad. (QuantitativeValue también se usa para la duración del envío, pero con diferentes reglas). La definición completa de QuantitativeValue está disponible en schema.org/QuantitativeValue.

Fragmentos de productos

Los fragmentos de producto no usan este tipo.

Fichas de comercios

Las siguientes propiedades se aplican a las experiencias de las fichas de comercios.

QuantitativeValue se puede usar para fijar precios en función de una medida de unidad, como comprar pisos por metro cuadrado o líquidos por litro. Consulta la medida de precio por unidad en la Ayuda de Google Merchant Center para obtener un análisis detallado del precio unitario.

Este es un ejemplo de un precio de venta por 4.5 l de un producto que se puede comprar en múltiplos de 750 ml.

"priceSpecification": {
  "@type": "UnitPriceSpecification",
  "price": 81.00,
  "priceCurrency": "EUR",
  "referenceQuantity": {
    "@type": "QuantitativeValue",
    "value": "4.5",
    "unitCode": "LTR",
    "valueReference": {
      "@type": "QuantitativeValue",
      "value": "750",
      "unitCode": "MLT"
    }
  }
}

Usa las siguientes propiedades para capturar los detalles de los precios por unidad.

Propiedades obligatorias
unitCode

Text o URL

La unidad de medida. Se admiten los códigos UN/CEFACT o sus equivalentes legibles, como se indica en la medida de precio por unidad de la Ayuda de Google Merchant Center.

value

Text

Valor numérico de la unidad vendida.

Propiedades recomendadas
valueReference

QuantitativeValue

El QuantitativeValue de la propiedad referenceQuantity de un UnitPriceSpecification debe incluir un QuantitativeValue anidado en esta propiedad valueReference.

AggregateOffer

La definición completa de AggregateOffer está disponible en schema.org/AggregateOffer. AggregateOffer es un tipo de Offer que representa una agregación de otras ofertas. Por ejemplo, se puede usar para un producto que venden varios comerciantes. (No uses AggregateOffer para describir un conjunto de variantes de productos). Cuando incluyas lenguaje de marcado en ofertas agregadas en un producto, usa las siguientes propiedades del tipo schema.org AggregateOffer:

Fragmentos de productos

Las siguientes propiedades se aplican a los fragmentos de producto.

Propiedades obligatorias
lowPrice

Number

Es el precio más bajo de todas las ofertas disponibles. Usa un número de punto flotante cuando expreses fracciones de una unidad monetaria, como 1.23 para USD 1.23.

priceCurrency

Text

Corresponde a la moneda utilizada para describir el precio del producto con el formato ISO 4217 de tres letras.

Propiedades recomendadas
highPrice

Number

Es el precio más alto de todas las ofertas disponibles. Si es necesario, usa un número de punto flotante.

offerCount

Number

Es la cantidad de ofertas del producto.

Fichas de comercios

Para las experiencias de las fichas de comercios, usa Offer y no AggregateOffer

SizeSpecification

El tipo SizeSpecification se usa para indicar el tamaño de un producto. La definición completa del tipo está disponible en schema.org/SizeSpecification.

Fragmentos de productos

Los fragmentos de producto no usan este tipo.

Fichas de comercios

Las siguientes propiedades se aplican a las experiencias de las fichas de comercios.

Propiedades recomendadas
name

Text

Un nombre legible para el tamaño, como "XL". Consulta el atributo de tamaño en la Ayuda de Google Merchant Center para obtener más detalles.

sizeGroup

WearableSizeGroupEnumeration o Text

El grupo de tallas sugerido para el producto, si corresponde. La propiedad sizeGroup define la interpretación del grupo. Se pueden proporcionar dos grupos de tamaños como máximo. Los valores admitidos son los que se detallan a continuación:

  • https://schema.org/WearableSizeGroupRegular
  • https://schema.org/WearableSizeGroupPetite
  • https://schema.org/WearableSizeGroupPlus
  • https://schema.org/WearableSizeGroupTall
  • https://schema.org/WearableSizeGroupBig
  • https://schema.org/WearableSizeGroupMaternity

También se admiten los nombres cortos sin el prefijo de la URL (por ejemplo, WearableSizeGroupRegular).

Consulta también size_type en la Ayuda de Google Merchant Center y los valores y tipos de datos estructurados admitidos en la Ayuda de Google Merchant Center para obtener más información sobre los siguientes temas: sistemas de tallas compatibles. Google también comprende los valores de texto de size_type (regular, petite, plus, tall, big y maternity) , pero es posible que otros motores de búsqueda no lo hagan, por lo que se recomienda usar los valores de enumeración schema.org estándar.

sizeSystem

WearableSizeSystemEnumeration o Text

El sistema de tallas del producto, si corresponde. Los valores admitidos son los que se detallan a continuación:

  • https://schema.org/WearableSizeSystemAU
  • https://schema.org/WearableSizeSystemBR
  • https://schema.org/WearableSizeSystemCN
  • https://schema.org/WearableSizeSystemDE
  • https://schema.org/WearableSizeSystemEurope
  • https://schema.org/WearableSizeSystemFR
  • https://schema.org/WearableSizeSystemIT
  • https://schema.org/WearableSizeSystemJP
  • https://schema.org/WearableSizeSystemMX
  • https://schema.org/WearableSizeSystemUK
  • https://schema.org/WearableSizeSystemUS

También se admiten los nombres cortos sin el prefijo de la URL (por ejemplo, WearableSizeSystemAU).

Consulta también size_system en la Ayuda de Google Merchant Center. Google también comprende los valores de texto de size_system (UR, BR, CN, DE, EU, etc.), pero es posible que otros motores de búsqueda no lo hagan, por lo que se recomienda usar los valores de enumeración estándar schema.org.

PeopleAudience

La definición completa de PeopleAudience está disponible en schema.org/PeopleAudience.

Fragmentos de productos

Los fragmentos de producto no usan este tipo.

Fichas de comercios

Usa las siguientes propiedades cuando indiques el público recomendado para un producto. Consulta también Atributos y valores de datos estructurados admitidos en la Ayuda de Google Merchant Center.

Propiedades recomendadas
suggestedGender

Text

El género sugerido para el que es adecuado el producto. Debe ser uno de los siguientes valores que no distinguen entre mayúsculas y minúsculas:

  • Male
  • Female
  • Unisex

Consulta Gender en la Ayuda de Google Merchant Center para obtener más detalles.

Ten en cuenta que, si bien schema.org también admite la enumeración Gender para esta propiedad, Google no lo hace (Unisex no es un género). Esto significa que los prefijos https://schema.org/ no deben usarse para estos valores (a diferencia de la mayoría de las otras enumeraciones).

suggestedMinAge y suggestedMaxAge

Number

Indica el rango de edad sugerido para el producto. Google asigna las edades mínimas y máximas sugeridas para los productos a un conjunto fijo de valores (recién nacido, 3-12 meses, 1-5 años, niños y adultos).

  • Una edad máxima de 0.25 (es decir, 3 meses) o menos para un recién nacido
  • 1 o menos corresponde a un bebé
  • 5 o menos corresponde a un niño pequeño
  • 13 o menos corresponde a niños
  • Una edad mínima de 13 años corresponde a adultos.

EnergyConsumptionDetails

La definición completa de EnergyConsumptionDetails está disponible en schema.org/EnergyConsumptionDetails.

Fragmentos de productos

Los fragmentos de producto no usan este tipo.

Fichas de comercios

Usa las siguientes propiedades para indicar el consumo de energía de un producto, como los productos eléctricos. Actualmente, solo se admiten calificaciones de eficiencia energética de la UE.

Propiedades obligatorias
hasEnergyEfficiencyCategory

EUEnergyEfficiencyEnumeration

Es la categoría de eficiencia energética del producto. Actualmente, solo se admiten las clasificaciones de eficiencia energética de la UE:

  • https://schema.org/EUEnergyEfficiencyCategoryA3Plus
  • https://schema.org/EUEnergyEfficiencyCategoryA2Plus
  • https://schema.org/EUEnergyEfficiencyCategoryA1Plus
  • https://schema.org/EUEnergyEfficiencyCategoryA
  • https://schema.org/EUEnergyEfficiencyCategoryB
  • https://schema.org/EUEnergyEfficiencyCategoryC
  • https://schema.org/EUEnergyEfficiencyCategoryD
  • https://schema.org/EUEnergyEfficiencyCategoryE
  • https://schema.org/EUEnergyEfficiencyCategoryF
  • https://schema.org/EUEnergyEfficiencyCategoryG

También se admiten los nombres cortos sin el prefijo de URL (por ejemplo, EUEnergyEfficiencyCategoryA).

Propiedades recomendadas
energyEfficiencyScaleMin y energyEfficiencyScaleMax

EUEnergyEfficiencyEnumeration

Es el nivel de eficiencia energética más bajo y el más alto en la escala regulada del consumo de energía de la UE para la categoría a la que pertenece un producto.

Consulta hasEnergyEfficiencyCategory para obtener una lista de los valores admitidos.

La propiedad energyEfficiencyScaleMin especifica la clase menos eficiente en la escala de consumo de energía, mientras que energyEfficiencyScaleMax especifica la clase más eficiente. Por ejemplo, para un producto con un nivel de eficiencia energética "C" en una escala de "A+++" a "D", usa lo siguiente:


{
  "@type": "EnergyConsumptionDetails",
  "hasEnergyEfficiencyCategory":  "https://schema.org/EUEnergyEfficiencyCategoryC",
  "energyEfficiencyScaleMin": "https://schema.org/EUEnergyEfficiencyCategoryD",
  "energyEfficiencyScaleMax": "https://schema.org/EUEnergyEfficiencyCategoryA3Plus"
}

Si no se proporciona energyEfficiencyScaleMin, se supone que tiene el valor https://schema.org/EUEnergyEfficiencyCategoryG. Si no se proporciona energyEfficiencyScaleMax, se supone que tiene el valor https://schema.org/EUEnergyEfficiencyCategoryA3Plus.

Envío

OfferShippingDetails

Fragmentos de productos

Los fragmentos de producto no usan el tipo OfferShippingDetails.

Fichas de comercios

Las siguientes propiedades se aplican a las experiencias de las fichas de comercios.

OfferShippingDetails permite que las personas vean los costos de envío y los plazos de entrega estimados en función de su ubicación y las políticas de envío de la empresa. A fin de que tus productos sean aptos para la mejora en los detalles de envío, agrega las siguientes propiedades de OfferShippingDetails y datos estructurados de Product a la página del producto.

A veces, los comercios pueden ofrecer varias opciones para que los usuarios seleccionen cuando envíen un producto a un destino (por ejemplo, Expreso en una noche, Urgente en 2 días y estándar). Puedes indicar cada una de ellas utilizando varias propiedades shippingDetails, cada una con diferentes combinaciones de las propiedades shippingRate y deliveryTime.

Si bien no es obligatorio incluir OfferShippingDetails, usa las siguientes propiedades si quieres que los detalles de envío de tu producto sean aptos para la mejora.

La definición completa de OfferShippingDetails está disponible en schema.org/OfferShippingDetails.

Propiedades recomendadas
deliveryTime

ShippingDeliveryTime

El tiempo total de demora desde que se recibe la orden hasta que los productos llegan al cliente final. Las siguientes propiedades se pueden anidar en la propiedad deliveryTime:

  • handlingTime
  • transitTime

No proporciones más de un deliveryTime. Consulta también la lista de propiedades de ShippingDeliveryTime compatibles con Google.

shippingDestination

DefinedRegion

Indica cuáles son los destinos de envío. Especifica la información de shippingDestination.addressCountry. Consulta también la lista de propiedades de DefinedRegion compatibles con Google.

shippingRate

MonetaryAmount

Es la información sobre el costo del envío al destino especificado. Se debe especificar al menos uno de los valores shippingRate.value o shippingRate.maxValue, junto con shippingRate.currency.

Solo puedes especificar una shippingRate por propiedad OfferShippingDetails. Si quieres asignar varias tarifas para un producto, especifica varias propiedades OfferShippingDetail.

shippingRate.currency

Text

La moneda del costo de envío en formato ISO 4217 de 3 letras. La moneda debe ser la misma que se especificó en la oferta.

shippingRate.value o shippingRate.maxValue

Number

El costo de envío a shippingDestination. Si se usa una string para proporcionar el valor, no incluyas símbolos de moneda, separadores de miles ni espacios.

Para indicar que el envío es gratis, establece el valor en 0.

DefinedRegion

Fragmentos de productos

Los fragmentos de producto no usan este tipo.

Fichas de comercios

Las siguientes propiedades se aplican a las experiencias de las fichas de comercios.

DefinedRegion se usa para crear áreas personalizadas, de manera que se establezcan tiempos en tránsito y costos de envío exactos en varios servicios de envío. Actualmente, esta función solo está disponible para un conjunto de países restringido, como se indica en la sección sobre cómo configurar regiones de la Ayuda de Google Merchant Center.

Propiedades obligatorias
addressCountry

Text

Corresponde al código de país de 2 dígitos, en formato ISO 3166-1.

Propiedades recomendadas
Elige addressRegion o postalCode

Identifica la región del área de entrega del cliente. Si se omite, el país completo es la región definida. Se pueden enumerar varias regiones, pero no puedes mezclar diferentes maneras de especificar las regiones en una instancia DefinedRegion.

addressRegion

Text

Si incluyes esta propiedad, la región debe ser un código de subdivisión de 2 o 3 dígitos, sin prefijo del país, en formato ISO 3166-2. Actualmente, la Búsqueda de Google solo admite EE.UU., Australia y Japón. Ejemplos: "NY" (para EE.UU., estado de Nueva York), "NSW" (para Australia, estado de Nueva Gales del Sur) o "03" (para Japón, prefectura de Iwate).

No proporcione información sobre la región y el código postal.

postalCode

Text

Corresponde al código postal, por ejemplo, 94043. Por el momento, se admiten los códigos postales para Australia, Canadá y EE.UU.

ShippingDeliveryTime

Fragmentos de productos

Los fragmentos de producto no usan este tipo.

Fichas de comercios

Las siguientes propiedades se aplican a las experiencias de las fichas de comercios.

ShippingDeliveryTime se usa para compartir la demora total entre la recepción de un pedido y la mercadería que llega al cliente final.

Propiedades recomendadas
handlingTime

QuantitativeValue (para tiempos de envío)

Es el tiempo típico de demora desde que se recibe la orden hasta que los productos salen del almacén.

transitTime

QuantitativeValue (para tiempos de envío)

El tiempo típico de demora desde que se envía el pedido hasta la entrega y el momento en que la mercadería llega al cliente final.

QuantitativeValue (para tiempos de envío)

Fragmentos de productos

Los fragmentos de producto no usan este tipo.

Fichas de comercios

Las siguientes propiedades se aplican a las experiencias de las fichas de comercios.

QuantitativeValue se usa aquí para representar los tiempos de envío. Se debe especificar una cantidad mínima y máxima de días. (QuantitativeValue también se usa para el precio por unidad, con diferentes reglas de validación para las propiedades).

Propiedades obligatorias
maxValue

Number

La cantidad máxima de días. El valor debe ser un número entero no negativo.

minValue

Number

La cantidad mínima de días. El valor debe ser un número entero no negativo.

unitCode

Text

Unidades de los valores mínimos y máximos. El valor debe ser d o day.

Enfoque alternativo para configurar las opciones de envío con Google

Las políticas de envío de los minoristas pueden complicarse y cambiar con frecuencia. Si tienes problemas para crear detalles de envío y mantenerlos actualizados con lenguaje de marcado y tienes una cuenta de Google Merchant Center, te recomendamos que consultes Cómo configurar las opciones de envío en la Ayuda de Google Merchant Center.

Cómo supervisar resultados enriquecidos con Search Console

Search Console es una herramienta que te ayuda a supervisar el rendimiento de tus páginas en la Búsqueda de Google. Si bien no es necesario que te registres en Search Console para que se incluya tu contenido en los resultados de la Búsqueda de Google, puede ayudarte a comprender y mejorar la forma en que Google ve tu sitio. Te recomendamos que revises Search Console en los siguientes casos:

  1. Después de implementar datos estructurados por primera vez
  2. Después de lanzar plantillas nuevas o actualizar código
  3. Para analizar tráfico periódicamente

Después de implementar datos estructurados por primera vez

Después de que Google haya indexado tus páginas, busca problemas con el informe de estado de resultados enriquecidos relevante. Lo ideal es que haya un aumento de las páginas válidas, y no de los errores ni las advertencias. Si encuentras problemas en los datos estructurados, haz lo siguiente:

  1. Corrige los errores.
  2. Inspecciona una URL publicada para verificar si el problema persiste.
  3. Solicita una validación desde el informe de estado.

Después de lanzar plantillas nuevas o actualizar código

Cuando realices cambios significativos en tu sitio web, supervisa los aumentos en las advertencias y los errores de los datos estructurados.
  • Si notas un aumento en la cantidad de errores, tal vez se deba a que implementaste una plantilla que no funciona o a que tu sitio interactúa con la plantilla actual de una forma diferente e incorrecta.
  • Si notas una disminución de los elementos válidos (que no coincide con un aumento en la cantidad de errores), es posible que ya no estés incorporando datos estructurados en tus páginas. Usa la Herramienta de inspección de URL para saber cuál es la causa del problema.

Cómo analizar el tráfico periódicamente

Analiza el tráfico de la Búsqueda de Google con el Informe de rendimiento. Los datos te mostrarán con qué frecuencia tu página aparece como resultado enriquecido en la Búsqueda, con qué frecuencia los usuarios hacen clic en ella y cuál es la posición promedio en la que apareces en los resultados de la búsqueda. También puedes extraer esos resultados automáticamente con la API de Search Console.

Hay dos informes de Search Console relacionados con los datos estructurados del producto en la sección Shopping de la barra de navegación:

  • Fichas de comercios: Para las páginas en las que los usuarios pueden comprar productos
  • Fragmentos de productos: Para otras páginas relacionadas con productos, como opiniones sobre productos y sitios agregadores
Menú de navegación de Shopping para informes

Ambos informes brindan advertencias y errores relacionados con los datos estructurados del producto, pero son independientes debido a los diferentes requisitos de las experiencias asociadas. Por ejemplo, el informe de fichas de comercios incluye verificaciones de fragmentos de productos que incluyen datos estructurados de Offer, por lo que los fragmentos de producto solo se deben consultar para las páginas de fichas que no pertenecen al comercio.

Solución de problemas

Si tienes problemas para implementar o depurar datos estructurados, te brindamos algunos recursos que podrían resultarte útiles.