Use el marcado de datos estructurados en las páginas de destino de los productos para que Google recupere información actualizada sobre ellos directamente desde su sitio web. Para que Merchant Center admita el marcado de datos estructurados, se deben usar los valores aceptados y los atributos correspondientes, tal y como se indica en la especificación de datos de producto. Los datos estructurados deben coincidir con los valores y atributos pertinentes.
Atributos y anotaciones de schema.org
Los atributos sirven para organizar los datos de producto que envía a Merchant Center. Cada atributo incluye una información determinada sobre un artículo, como el título o la descripción. Si el valor de schema.org coincide de forma precisa con los atributos correspondientes de la especificación de datos de producto, se encontrarán menos errores al validar el feed.
Nota: Si utiliza las actualizaciones automáticas de artículos, asegúrese de especificar las propiedades de schema.org price, priceCurrency
y availability
para aumentar su precisión. Más información sobre las actualizaciones automáticas de artículos
Propiedad de schema.org |
Atributo de datos de producto |
Tipo y descripción | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Los siguientes atributos pertenecen al tipo Product de schema.org. | ||||||||||||||||||||||||
sku | id [id] |
Texto Código de mantenimiento en almacén (SKU) único que ha asignado al producto |
||||||||||||||||||||||
name | title [título] |
Texto | ||||||||||||||||||||||
description | description [descripción] |
Texto | ||||||||||||||||||||||
image | image_link [enlace_imagen] |
URL de imagen válida | ||||||||||||||||||||||
inProductGroupWithID | item_group_id [id_grupo_artículos] |
Texto SKU superior necesario para agrupar todos los productos con variantes que pertenecen al mismo grupo de productos |
||||||||||||||||||||||
gtin8 gtin12 gtin13 gtin14 isbn |
gtin [gtin] |
Texto El GTIN es un identificador exclusivo del producto. Especifique solo una de estas propiedades de schema.org. Si utiliza valores de GTIN, deben tener la longitud adecuada e incluir el dígito de control correcto. |
||||||||||||||||||||||
material | material [material] |
Texto | ||||||||||||||||||||||
pattern | pattern [diseño] |
Texto | ||||||||||||||||||||||
mpn | mpn [mpn] |
Texto | ||||||||||||||||||||||
brand | brand [marca] |
Texto | ||||||||||||||||||||||
audience.suggestedGender | gender [sexo] |
Texto Utilice la propiedad audience para especificar un objeto PeopleAudience que determine por sí mismo suggestedGender. Los valores válidos son los que define el atributo
|
||||||||||||||||||||||
audience.suggestedMinAge audience.suggestedMaxAge | age_group [edad] |
Número (en años) Utilice la propiedad audience para especificar un objeto PeopleAudience que determine por sí mismo suggestedMinAge y suggestedMaxAge. Los valores válidos son los que define el atributo
|
||||||||||||||||||||||
color | color [color] |
Texto | ||||||||||||||||||||||
size | size [talla] |
Texto | ||||||||||||||||||||||
energy_efficiency_class [nivel_eficiencia_energética], min_energy_efficiency_class [nivel_mínimo_eficiencia_energética] |
Los valores válidos de cada una de las dos propiedades pertenecen al tipo EUEnergyEfficiencyEnumeration. Se asignan a los valores del feed como se indica a continuación: | |||||||||||||||||||||||
hasEnergyConsumptionDetails. hasEnergyEfficiencyCategory hasEnergyConsumptionDetails. energyEfficiencyScaleMin hasEnergyConsumptionDetails. energyEfficiencyScaleMax
|
|
Los valores válidos de cada una de las tres propiedades pertenecen al tipo EUEnergyEfficiencyEnumeration. Se asignan a los valores del feed como se indica a continuación:
|
||||||||||||||||||||||
Los siguientes atributos pertenecen al tipo Offer de schema.org y deben anidarse dentro de un producto con la propiedad offers. Puede consultar algunos ejemplos a continuación. |
||||||||||||||||||||||||
link [enlace] |
URL válida para el producto | |||||||||||||||||||||||
o priceSpecification.priceCurrency
|
price [precio] |
price: número. Se debe indicar sin símbolos de moneda, separadores de millares ni espacios (por ejemplo, "1498.99"). priceCurrency: texto. La moneda se debe indicar con el formato ISO 4217 de tres letras (por ejemplo, "USD", "GBP" o "EUR") y debe cumplir los requisitos de idioma y moneda del país de destino. Nota: price y priceCurrency se pueden indicar directamente dentro de la instancia Offer o, de forma indirecta, a través de una propiedad priceSpecification del tipo PriceSpecification. Puede consultar algunos ejemplos a continuación. |
||||||||||||||||||||||
availability | availability [disponibilidad] |
Los valores válidos pertenecen al tipo ItemAvailability. Se asignan a los valores del feed como se indica a continuación:
|
||||||||||||||||||||||
availability_date [fecha_disponibilidad] |
Fecha o fecha y hora en el formato ISO 8601 | |||||||||||||||||||||||
itemCondition | condition [estado] |
Los valores válidos pertenecen al tipo OfferItemCondition. Se asignan a los valores del feed como se indica a continuación:
|
Ejemplos de uso de JSON‑LD
Un solo producto
{
"@context": "https://schema.org/",
"@type": "Product",
"sku": "trinket-12345",
"image": "https://www.example.com/abalorio.jpg",
"name": "Abalorio bonito",
"description": "Abalorio de diseño sencillo",
"gtin14": "12345678901234",
"brand": {
"@type": "Thing",
"name": "Mi marca"
},
"offers": {
"@type": "Offer",
"url": "http://www.example.com/oferta_abalorio",
"itemCondition": "https://schema.org/NewCondition",
"availability": "https://schema.org/InStock",
"price": "39.99",
"priceCurrency": "EUR"
}
}
Variantes agrupadas mediante "inProductGroupWithID"
Hay ciertos productos que pueden contener diversas variantes, como el color o el precio. Para que se muestren, debe añadir más datos estructurados que indiquen que hay varios productos en una determinada página. En el ejemplo que se muestra a continuación, un producto tiene distintos colores y tallas. Uno de los colores solo está disponible en una talla y el otro está disponible en dos tallas. Se debe usar la propiedad inProductGroupWithID para indicar que las tres variantes pertenecen al mismo grupo de productos.
Ejemplo
[
{
"@context": "https://schema.org/",
"@type": "Product",
"sku": "44E01-M11000",
"gtin14": "98766051104218",
"inProductGroupWithID": "44E01",
"image": "https://www.example.com/abrigo_pequeño_verde.jpg",
"name": "Abrigo verde pequeño",
"description": "Abrigo verde pequeño de lana para invierno",
"brand": {
"@type": "Thing",
"name": "Marca de calidad"
},
"audience": {
"@type": "PeopleAudience",
"suggestedGender": "unisex",
"suggestedMinAge": 13
},
"color": "verde",
"size": "pequeño",
"offers": {
"@type": "Offer",
"url": "https://www.example.com/abrigo?s=s&c=g",
"priceCurrency": "EUR",
"price": 39.99,
"itemCondition": "https://schema.org/NewCondition",
"availability": "https://schema.org/InStock"
}
},
{
"@context": "https://schema.org/",
"@type": "Product",
"sku": "44E01-K11000",
"gtin14": "98766051104201",
"inProductGroupWithID": "44E01",
"image": "https://www.example.com/abrigo_pequeño_azul_oscuro.jpg",
"name": "Abrigo azul oscuro pequeño",
"description": "Abrigo azul oscuro pequeño para invierno",
"brand": {
"@type": "Thing",
"name": "Marca de calidad"
},
"audience": {
"@type": "PeopleAudience",
"suggestedGender": "unisex",
"suggestedMinAge": 13
},
"color": "azul claro",
"size": "pequeño",
"offers": {
"@type": "Offer",
"url": "https://www.example.com/abrigo?s=s&c=lb",
"priceCurrency": "EUR",
"price": 39.99,
"itemCondition": "https://schema.org/NewCondition",
"availability": "https://schema.org/InStock"
}
},
{
"@context": "https://schema.org/",
"@type": "Product",
"sku": "44E01-X1100000",
"gtin14": "98766051104391",
"inProductGroupWithID": "44E01",
"image": "https://www.example.com/abrigo_grande_azul_oscuro.jpg",
"name": "Abrigo azul oscuro grande",
"description": "Abrigo azul oscuro grande para invierno",
"brand": {
"@type": "Thing",
"name": "Marca de calidad"
},
"audience": {
"@type": "PeopleAudience",
"suggestedGender": "unisex",
"suggestedMinAge": 13
},
"color": "azul claro",
"size": "grande",
"offers": {
"@type": "Offer",
"url": "https://www.example.com/abrigo?s=l&c=lb",
"priceCurrency": "EUR",
"price": 49.99,
"itemCondition": "https://schema.org/NewCondition",
"availability": "https://schema.org/InStock"
}
}
]
Variantes agrupadas mediante "ProductGroup"
El siguiente ejemplo es similar al anterior, pero contiene más estructura, ya que se indica de manera explícita el grupo de productos al que pertenecen las variantes.
Ejemplo
[
{
"@context": "http://schema.org/",
"@type": "ProductGroup",
"name": "Abrigo de la colección de invierno",
"url": "https://www.example.com/abrigo",
"brand": {
"@type": "Thing",
"name": "Marca de calidad"
},
"audience": {
"@type": "PeopleAudience",
"suggestedGender": "unisex",
"suggestedMinAge": 13
},
"productGroupID": "44E01",
"variesBy": [ "size", "color" ],
"hasVariant": [
{
"@context": "https://schema.org/",
"@type": "Product",
"sku": "44E01-M11000",
"gtin14": "98766051104218"
"image": "https://www.example.com/abrigo_pequeño_verde.jpg",
"name": "Abrigo verde pequeño",
"description": "Abrigo verde pequeño de lana para invierno",
"color": "verde",
"size": "pequeño",
"offers": {
"@type": "Offer",
"url": "https://www.example.com/abrigo?s=s&c=g",
"priceCurrency": "EUR",
"price": 39.99,
"itemCondition": "https://schema.org/NewCondition",
"availability": "https://schema.org/InStock"
}
},
{
"@context": "https://schema.org/",
"@type": "Product",
"sku": "44E01-K11000",
"gtin14": "98766051104201",
"image": "https://www.example.com/abrigo_pequeño_azul_oscuro.jpg",
"name": "Abrigo azul oscuro pequeño",
"description": "Abrigo azul oscuro pequeño para invierno",
"color": "azul claro",
"size": "pequeño",
"offers": {
"@type": "Offer",
"url": "https://www.example.com/abrigo?s=s&c=lb",
"priceCurrency": "EUR",
"price": 39.99,
"itemCondition": "https://schema.org/NewCondition",
"availability": "https://schema.org/InStock"
}
},
{
"@context": "https://schema.org/",
"@type": "Product",
"sku": "44E01-X1100000",
"gtin14": "98766051104391",
"image": "https://www.example.com/abrigo_grande_azul_oscuro.jpg",
"name": "Abrigo azul oscuro grande",
"description": "Abrigo azul oscuro grande para invierno",
"color": "azul claro",
"size": "grande",
"offers": {
"@type": "Offer",
"url": "https://www.example.com/abrigo?s=l&c=lb",
"priceCurrency": "EUR",
"price": 49.99,
"itemCondition": "https://schema.org/NewCondition",
"availability": "https://schema.org/InStock"
}
}
]
}
]
Varios productos sin relación en una página de destino
Si su página contiene varios productos que no están relacionados y cada uno de ellos tiene su propia anotación de datos estructurados, las anotaciones deberán contener información que identifique a qué producto hacen referencia. Por ejemplo, le recomendamos que proporcione el SKU (atributo id [id]
) o la propiedad GTIN14 (atributo gtin [gtin]
) en cada anotación. Si no facilita esta información, es posible que los productos de su página de destino no coincidan con sus datos de producto estructurados. Más información sobre cómo configurar datos estructurados en páginas de destino
Ejemplo
[
{
"@context": "https://schema.org/",
"@type": "Product",
"sku": "trinket-12345",
"image": "https://www.example.com/abalorio.jpg",
"name": "Abalorio bonito",
"description": "Abalorio de diseño sencillo",
"gtin14": "12345678901234",
"brand": {
"@type": "Thing",
"name": "Mi marca"
},
"offers": {
"@type": "Offer",
"url": "http://www.example.com/oferta_abalorio",
"itemCondition": "https://schema.org/NewCondition",
"availability": "https://schema.org/InStock",
"price": "39.99",
"priceCurrency": "EUR"
}
},
{
"@context": "https://schema.org/",
"@type": "Product",
"sku": "racket-12345",
"image": "https://www.example.com/raqueta.jpg",
"name": "Raqueta bonita",
"description": "Raqueta de tenis",
"gtin14": "12345678901235",
"brand": {
"@type": "Thing",
"name": "Mi marca"
},
"offers": {
"@type": "Offer",
"url": "http://www.example.com/oferta_raqueta",
"itemCondition": "https://schema.org/NewCondition",
"availability": "https://schema.org/InStock",
"price": "59.99",
"priceCurrency": "EUR"
}
}
]
Probar las etiquetas
Puede comprobar la implementación de Schema.org con la herramienta Prueba de resultados enriquecidos. Si necesita más información para usar esta herramienta, depurar los problemas o interpretar los resultados, consulte el Centro de Ayuda de Google Search Console.
Requisitos del marcado de datos estructurados
- El marcado de datos estructurados debe estar presente en el HTML obtenido del servidor web y no se puede generar con JavaScript después de cargar la página.
- La página de destino no puede cambiar según la información del usuario. Por ejemplo, no puede adaptar los precios en función de la dirección IP o del tipo de navegador que se utilice.
- Los datos estructurados deben coincidir con los valores que se muestran al usuario. Utilizar datos incorrectos en las páginas de destino de los productos supone una infracción de nuestras directrices para webmasters.
- Google recomienda usar JSON‑LD para facilitar datos estructurados.