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

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.
Las experiencias de fichas de comercio son las siguientes:
Productos popularesPresentación visual de productos en venta |
![]() |
Panel de conocimiento de ShoppingInformación detallada de los productos con una lista de vendedores (con detalles como los identificadores de productos) |
![]() |
Google ImágenesImágenes anotadas de los productos disponibles para la venta |
![]() |
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.
- Devoluciones: Comparte información relacionada con las devoluciones, como tu política, tarifas y la cantidad de días que tienen los clientes para devolver un producto.
Cómo proporcionar datos de productos a la Búsqueda de Google
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.
- 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.
- Sigue los lineamientos.
- Valida tu código con la Prueba de resultados enriquecidos y corrige cualquier error crítico. Procura también corregir los problemas no críticos que puedan marcarse en la herramienta, ya que pueden ayudar a mejorar la calidad de los datos estructurados (sin embargo, esto no es necesario para que se muestren los resultados enriquecidos).
- Implementa algunas páginas que incluyan tus datos estructurados y utiliza la Herramienta de inspección de URLs 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 URLs. - 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.

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, "unitCode": "DAY" }, "transitTime": { "@type": "QuantitativeValue", "minValue": 1, "maxValue": 5, "unitCode": "DAY" } } } }, "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 property="schema:unitCode" content="DAY"></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 property="schema:unitCode" content="DAY"></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" /> <meta itemprop="unitCode" content="DAY" /> </div> <div itemprop="transitTime" itemtype="https://schema.org/QuantitativeValue" itemscope> <meta itemprop="minValue" content="1" /> <meta itemprop="maxValue" content="5" /> <meta itemprop="unitCode" content="DAY" /> </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 especificar 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, especifica el precio dentro de 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" } }
Producto con una oferta y detalles de envío
Este es un ejemplo de una página de producto con detalles de devolución. El lenguaje de marcado coincide con una política de devoluciones que requiere que los productos se devuelvan en un plazo de 60 días, se envíen a EE.UU. y no se cobren tarifas por devolución.
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", "priceSpecification": { "@type": "PriceSpecification", "price": 39.99, "priceCurrency": "CHF" }, "hasMerchantReturnPolicy": { "@type": "MerchantReturnPolicy", "applicableCountry": "CH", "returnPolicyCategory": "https://schema.org/MerchantReturnFiniteReturnWindow", "merchantReturnDays": 60, "returnMethod": "https://schema.org/ReturnByMail", "returnFees": "https://schema.org/FreeReturn" } } } </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="CHF"></div> <div property="schema:priceValidUntil" datatype="xsd:date" content="2020-11-20"></div> <div rel="schema:hasMerchantReturnPolicy"> <div typeof="schema:MerchantReturnPolicy"> <div property="schema:applicableCountry" content="US"></div> <div property="schema:returnPolicyCategory" content="https://schema.org/MerchantReturnFiniteReturnWindow"></div> <div property="schema:merchantReturnDays" content="60"></div> <div property="schema:returnMethod" content="https://schema.org/ReturnByMail"></div> <div property="schema:returnFees" content="https://schema.org/FreeReturn"></div> </div> </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="CHF" /> <meta itemprop="priceValidUntil" content="2020-11-20" /> <div itemprop="hasMerchantReturnPolicy" itemtype="https://schema.org/MerchantReturnPolicy" itemscope> <meta itemprop="applicableCountry" content="US" /> <meta itemprop="returnPolicyCategory" content="https://schema.org/MerchantReturnFiniteReturnWindow" /> <meta itemprop="merchantReturnDays" content="60" /> <meta itemprop="returnMethod" content="https://schema.org/ReturnByMail" /> <meta itemprop="returnFees" content="https://schema.org/FreeReturn" /> </div> </div> </div> </div> </body> </html>
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 generales de datos estructurados
- Conceptos básicos sobre la Búsqueda
- Lineamientos técnicos
- Lineamientos de contenido
- Lineamientos de las fichas gratuitas (para las experiencias relacionadas con las fichas de comercios)
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.
- 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
:
Las siguientes propiedades se aplican a los fragmentos de producto.
Propiedades obligatorias | |
---|---|
name |
Es el nombre del producto. |
Los fragmentos de producto requieren review , aggregateRating o offers . |
Debes incluir una de las siguientes propiedades:
|
Propiedades recomendadas | |
---|---|
aggregateRating |
Corresponde a un objeto |
offers |
Corresponde a un objeto Usa |
review |
Corresponde a un objeto 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 ( 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 |
Las siguientes propiedades se aplican a las fichas de comercios.
Propiedades obligatorias | |
---|---|
name |
Es el nombre del producto. |
image |
Es un valor repetido de 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). Directrices de imágenes adicionales:
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 |
Corresponde a un objeto Los fragmentos de producto aceptan una |
Propiedades recomendadas | |
---|---|
aggregateRating |
Corresponde a un objeto |
audience |
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 |
brand.name |
Incluye la marca del producto en la propiedad |
color |
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 |
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 |
Incluye todos los identificadores globales correspondientes que se describen en schema.org/Product.
Si bien puedes usar la propiedad genérica |
hasEnergyConsumptionDetails |
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 |
inProductGroupWithID |
Es el ID de un grupo de productos al que pertenece esta variante. Consulta también |
material |
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 |
mpn |
Es el número de pieza del fabricante. Esta propiedad identifica de forma única el producto de un fabricante determinado. |
pattern |
El diseño del producto, como "con lunares" o "con rayas". También consulta |
review |
Corresponde a un objeto 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 ( 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 |
El tamaño del producto, como "XL" o "mediano". También consulta |
sku |
Corresponde al identificador específico del comercio para el producto. Especifica un valor como máximo. |
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.
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 | |
---|---|
Dos sentencias sobre el producto | Debes proporcionar al menos dos sentencias sobre el producto en cualquier combinación de positivas o negativas (por ejemplo, el lenguaje de marcado de ItemList con dos snetencias positivas es válido):
|
Propiedades recomendadas | |
---|---|
negativeNotes |
Una lista anidada opcional de declaraciones negativas sobre el producto (desventajas).
Para enumerar varias declaraciones negativas, especifica varias propiedades "review": { "@type": "Review", "negativeNotes": { "@type": "ItemList", "itemListElement": [ { "@type": "ListItem", "position": 1, "name": "No child protection" }, { "@type": "ListItem", "position": 2, "name": "Lacking advanced features" } ] } } |
positiveNotes |
Una lista anidada opcional de declaraciones positivas sobre el producto (ventajas).
Para enumerar varias declaraciones positivas, especifica varias propiedades "review": { "@type": "Review", "positiveNotes": { "@type": "ItemList", "itemListElement": [ { "@type": "ListItem", "position": 1, "name": "Consistent results" }, { "@type": "ListItem", "position": 2, "name": "Still sharp after many uses" } ] } } |
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.
Las siguientes propiedades se usan para capturar las ventajas y desventajas de una opinión.
Propiedades obligatorias | |
---|---|
itemListElement |
Una lista de declaraciones sobre el producto, ordenadas de manera específica.
Especifica cada declaración con un |
itemListElement.name |
Es la declaración clave de la opinión. |
Propiedades recomendadas | |
---|---|
itemListElement.position |
Es la posición de la opinión. La posición 1 representa la primera declaración de la lista. |
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
.
Las siguientes propiedades se aplican a los fragmentos de producto.
Propiedades obligatorias | |
---|---|
price o priceSpecification.price |
Es el precio de oferta de un producto. Sigue los lineamientos de uso de schema.org.
Este es un ejemplo de la propiedad "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 "offers": { "@type": "Offer", "priceSpecification": { "@type": "PriceSpecification", "price": 9.99, "priceCurrency": "AUD" } } |
Propiedades recomendadas | |
---|---|
availability |
Usa la opción de disponibilidad de productos más adecuada de la siguiente lista.
También se admiten los nombres cortos sin el prefijo de la URL (por ejemplo, |
priceCurrency o priceSpecification.priceCurrency |
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 |
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 |
Las siguientes propiedades se aplican a las experiencias de las fichas de comercios.
Propiedades obligatorias | |
---|---|
price o priceSpecification.price |
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 "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 |
priceCurrency o priceSpecification.priceCurrency |
Corresponde a la moneda utilizada para describir el precio del producto con el formato ISO 4217 de tres letras.
|
priceSpecification |
Los precios complejos se pueden especificar con Los precios se pueden especificar con Los precios con medidas de precio por unidad pueden especificar una propiedad |
Propiedades recomendadas | |
---|---|
availability |
Son las posibles opciones de disponibilidad del producto. También se admiten los nombres cortos sin el prefijo de la URL (por ejemplo,
No especifiques más de un valor. |
hasMerchantReturnPolicy |
Información anidada sobre las políticas de devoluciones asociadas con un |
itemCondition |
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,
No especifiques más de un valor. |
shippingDetails |
Información anidada sobre las políticas y las opciones de envío asociadas a un objeto |
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.
Las siguientes propiedades se aplican a los fragmentos de producto.
Propiedades obligatorias | |
---|---|
price |
Es el precio de oferta de un producto. Consulta también la propiedad |
Propiedades recomendadas | |
---|---|
priceCurrency |
Corresponde a la moneda utilizada para describir el precio del producto con el formato ISO 4217 de tres letras.
Consulta también la propiedad 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. |
Las siguientes propiedades se aplican a las experiencias de las fichas de comercios.
Propiedades obligatorias | |
---|---|
price |
Es el precio de oferta de un producto. Consulta también la propiedad |
priceCurrency |
Corresponde a la moneda utilizada para describir el precio del producto con el formato ISO 4217 de tres letras.
Consulta también la propiedad |
Propiedades recomendadas | |
---|---|
referenceQuantity |
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
.
Los fragmentos de producto no usan este tipo.
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 |
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 |
Valor numérico de la unidad vendida. |
Propiedades recomendadas | |
---|---|
valueReference |
El |
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
:
Las siguientes propiedades se aplican a los fragmentos de producto.
Propiedades obligatorias | |
---|---|
lowPrice |
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 |
Corresponde a la moneda utilizada para describir el precio del producto con el formato ISO 4217 de tres letras. |
Propiedades recomendadas | |
---|---|
highPrice |
Es el precio más alto de todas las ofertas disponibles. Si es necesario, usa un número de punto flotante. |
offerCount |
Es la cantidad de ofertas del producto. |
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
.
Los fragmentos de producto no usan este tipo.
Las siguientes propiedades se aplican a las experiencias de las fichas de comercios.
Propiedades recomendadas | |
---|---|
name |
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 |
El grupo de tallas sugerido para el producto, si corresponde. La propiedad
También se admiten los nombres cortos sin el prefijo de la URL (por ejemplo, Consulta también |
sizeSystem |
El sistema de tallas del producto, si corresponde. Los valores admitidos son los que se detallan a continuación:
También se admiten los nombres cortos sin el prefijo de la URL (por ejemplo, Consulta también |
PeopleAudience
La definición completa de PeopleAudience
está disponible en schema.org/PeopleAudience
.
Los fragmentos de producto no usan este tipo.
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 |
El género sugerido para el que es adecuado el producto. Debe ser uno de los siguientes valores:
Consulta Ten en cuenta que Google completará los valores de |
suggestedMinAge y suggestedMaxAge |
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).
|
EnergyConsumptionDetails
La definición completa de EnergyConsumptionDetails
está disponible en schema.org/EnergyConsumptionDetails
.
Los fragmentos de producto no usan este tipo.
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 |
Es la categoría de eficiencia energética del producto. Actualmente, solo se admiten las clasificaciones de eficiencia energética de la UE:
También se admiten los nombres cortos sin el prefijo de URL (por ejemplo, |
Propiedades recomendadas | |
---|---|
energyEfficiencyScaleMin y energyEfficiencyScaleMax |
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 La propiedad { "@type": "EnergyConsumptionDetails", "hasEnergyEfficiencyCategory": "https://schema.org/EUEnergyEfficiencyCategoryC", "energyEfficiencyScaleMin": "https://schema.org/EUEnergyEfficiencyCategoryD", "energyEfficiencyScaleMax": "https://schema.org/EUEnergyEfficiencyCategoryA3Plus" } Si no se proporciona |
Envío
OfferShippingDetails
Los fragmentos de producto no usan el tipo OfferShippingDetails
.
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.
Si quieres 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 utilizar OfferShippingDetails
, las siguientes propiedades son obligatorias si desea que sus detalles de envío sean aptos para la mejora.
La definición completa de OfferShippingDetails
está disponible en schema.org/OfferShippingDetails.
Propiedades obligatorias | |
---|---|
deliveryTime |
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
No proporciones más de un |
shippingDestination |
Indica cuáles son los destinos de envío. Especifica la información de |
shippingRate |
Es la información sobre el costo del envío al destino especificado.
Se debe especificar al menos uno de los valores Solo puedes especificar una |
shippingRate.currency |
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 |
El costo de envío a Para indicar que el envío es gratis, establece el valor en |
DefinedRegion
Los fragmentos de producto no usan este tipo.
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 |
Corresponde al código de país de dos letras en el formato ISO 3166-1 alpha-2. |
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 |
addressRegion |
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 |
Corresponde al código postal, por ejemplo, 94043. Por el momento, se admiten los códigos postales para Australia, Canadá y EE.UU. |
ShippingDeliveryTime
Los fragmentos de producto no usan este tipo.
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 |
Es el tiempo típico de demora desde que se recibe la orden hasta que los productos salen del almacén. |
transitTime |
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)
Los fragmentos de producto no usan este tipo.
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 |
La cantidad máxima de días. El valor debe ser un número entero no negativo. |
minValue |
La cantidad mínima de días. El valor debe ser un número entero no negativo. |
unitCode |
Unidades de los valores mínimos y máximos. El valor debe ser |
Resultado que se muestra
MerchantReturnPolicy
Los fragmentos de producto no usan este tipo.
Las siguientes propiedades se aplican a las experiencias de las fichas de comercios.
Usa las siguientes propiedades para que tu ficha del comercio sea apta para mostrar información sobre la política de devoluciones, como las tarifas por devolución y el período para devolver un producto.
Propiedades obligatorias | |
---|---|
applicableCountry |
Es el código de país al que se aplica la política de devoluciones mediante el formato de código de país de dos letras ISO 3166-1 alpha-2. Puedes especificar hasta 50 países. |
returnPolicyCategory |
Es el tipo de política de devoluciones. Usa uno de los siguientes valores:
Si usas |
Propiedades recomendadas | |
---|---|
merchantReturnDays |
Es la cantidad de días posteriores a la fecha de entrega en que se puede devolver un producto. Esta propiedad solo es obligatoria si configuras |
returnFees |
Es el tipo de tarifas de devolución. Esta propiedad solo es obligatoria si no hay costo para devolver el producto. Si usas esta propiedad, debes establecer el valor en |
returnMethod |
Es el tipo de método de devolución que se ofrece. Esto solo se recomienda si configuras
|
returnShippingFeesAmount |
El costo de envío de las devoluciones de productos. Esta propiedad solo es obligatoria si hay un costo de envío para devolver un producto. Si el costo es cero, usa la propiedad |
Enfoque alternativo para configurar las opciones de envío y devolución con Google
Las políticas de envío de los minoristas pueden complicarse y cambiar con frecuencia. Si cuentas con una cuenta de Google Merchant Center y tienes problemas para crear los detalles de envío y devolución y mantenerlos actualizados con lenguaje de marcado, te recomendamos que ajustes la configuración de envío y la política de devoluciones 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:
- Después de implementar datos estructurados por primera vez
- Después de lanzar plantillas nuevas o actualizar código
- 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 los elementos válidos y no de los elementos no válidos. Si encuentras problemas en los datos estructurados, haz lo siguiente:
- Corrige los elementos no válidos.
- Inspecciona una URL publicada para verificar si persiste el problema.
- 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 los elementos no válidos de datos estructurados.- Si notas un aumento en la cantidad de elementos no válidos, 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 elementos no válidos), es posible que ya no estés incorporando datos estructurados en tus páginas. Usa la Herramienta de inspección de URLs 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

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.
- Si usas un sistema de administración de contenido (CMS), o si alguien más se encarga de tu sitio, pídele que te ayude. Asegúrate de reenviarle cualquier mensaje de Search Console que detalle el problema.
- Google no garantiza que se muestren en los resultados de la búsqueda las funciones que consumen datos estructurados. Para obtener una lista de los motivos comunes por los que Google podría no mostrar tu contenido en un resultado enriquecido, consulta los Lineamientos generales de datos estructurados.
- Es posible que haya un error en los datos estructurados. Consulta la lista de errores de datos estructurados.
- Si recibiste una acción manual de datos estructurados en tu página, estos datos se ignorarán (aunque la página puede seguir apareciendo en los resultados de la Búsqueda de Google). Para solucionar los problemas con datos estructurados, usa el Informe de acciones manuales.
- Vuelve a consultar los lineamientos para determinar si tu contenido no cumple con ellos. El problema puede deberse a contenido generador de spam o a un uso fraudulento del lenguaje de marcado. Sin embargo, es posible que no sea un problema de sintaxis, por lo que la prueba de resultados enriquecidos no podrá identificar estos problemas.
- Soluciona problemas de resultados enriquecidos faltantes o disminución del total de resultados enriquecidos.
- Espera un tiempo suficiente para que se vuelvan a realizar el rastreo y la indexación. No olvides que pueden transcurrir varios días después de publicar una página para que Google la encuentre y la rastree. Si tienes preguntas generales sobre el rastreo y la indexación, consulta las Preguntas frecuentes sobre el rastreo y la indexación de la Búsqueda de Google.
- Publica una pregunta en el foro de la Central de la Búsqueda de Google.