What is the Product type in Schema.org (product schema)?
Product is the Schema.org type that describes a specific product or service being offered: its name, its image, its brand, its identifiers and its features. In a store, the Product node is the center of the structured data on each product page, and the offer with the price and the customer ratings hang from it.
Key takeaways
- Product describes what the item is (name, image, brand, identifiers, features); the price and availability go in its offer.
- Google uses it for two experiences: product snippets, for pages where you cannot buy, and merchant listings, for pages that sell.
- To qualify for a merchant listing, Google requires at least a name, an image and an offer with a price above zero.
- A product with sizes or colors is described as a group of variants, and each variant needs its own identifier.
- Everything the node says has to be visible on the page, ratings included.
When someone searches for "product schema", they want to know what goes in the structured data of a product page, and the answer starts with a type: Product, from Schema.org. It is not the product in your platform or a row in your product feed; it is the markup node that tells a search engine which item is on the page. Its name is a vocabulary term, not a plain word. It matters because it is the first thing Google reads to decide whether your product page can qualify for rich results, with its price, availability or ratings.
How it works
Schema.org defines Product as any product or service that is offered, and gives examples as different as a pair of shoes, a concert ticket, a car rental or a haircut. It hangs directly from Thing, the root type.[1]Schema.org. Product Its properties fall into four families a store recognizes right away:
- Identity:
name,description,imageandbrand. - Identifiers:
sku(the store's reference number), and the standard codes such asgtin,gtin13ormpn. They have their own entries: SKU, GTIN and MPN. - Features:
color,materialorsize, among many others. - Relationships:
offers, which leads to the offer with the price;aggregateRatingandreview, for ratings;isVariantOfandinProductGroupWithID, for variants; andhasMerchantReturnPolicy, for the return policy.[1]Schema.org. Product
The offers property is what separates what the item is from the terms on which it is sold: Schema.org describes it as an offer to provide the item, for example to sell it, rent it or give away tickets.[1]Schema.org. Product The price, the currency and the availability live in that offer, the Offer type, not in the product.
Google uses Product for two different experiences. Product snippets are for pages where you cannot buy directly, such as an editorial review, and let you detail the rating with pros and cons. Merchant listings are for pages where the customer buys from you, and they allow more detail, such as clothing sizes, shipping and returns.[2]Google Search Central. Introduction to Product structured data What each one requires at minimum is not the same:
| What Google requires | Product snippet | Merchant listing |
|---|---|---|
| Page | No direct purchase | Direct purchase from you |
| Required properties | name and at least one of review, aggregateRating or offers[3]Google Search Central. Product snippet (Product, Review, Offer) structured data |
name, image and offers[4]Google Search Central. Merchant listing (Product, Offer) structured data |
| Offer | Offer or AggregateOffer |
Offer only, with a price above zero[4]Google Search Central. Merchant listing (Product, Offer) structured data |
A product with sizes or colors is not described as a single node. Google asks for a ProductGroup that groups the variants, with hasVariant for each one, variesBy for what changes between them (the size or the color) and productGroupID for the reference of the parent product. Each variant is a Product with its own offer, and each one needs a unique identifier, such as sku or gtin.[5]Google Search Central. Product variant (ProductGroup, Product) structured data
And one recommendation that changes the strategy: Google says that providing structured data on the page and also a feed in Google Merchant Center maximizes your chances of showing up and helps it understand and verify the data.[2]Google Search Central. Introduction to Product structured data
In a store
Every property of the node has to be something you can point at on the page. Fictional example: a linen shirt from a made-up store, with what the page shows and where it goes in the node.
| What the page shows | Product property | Rule |
|---|---|---|
| Title "Calella linen shirt, blue" | name |
Required in both Google experiences |
| Main photo | image |
Required for merchant listings |
| Brand Calella | brand |
Marked because it is visible |
| "Ref. CAL-BL" and the barcode | sku, gtin13 |
One per variant if there are sizes |
| Fabric: linen | material |
Only if the page says so |
| Size selector | ProductGroup with hasVariant |
Each size, its own Product and its own offer |
| No customer reviews | Neither aggregateRating nor review |
What is not visible is not marked |
The last row is the one most argued about. If the page shows no ratings, the node carries none: Google asks you not to mark up content the reader cannot see and for the data to be a faithful representation of the page.[6]Google Search Central. General structured data guidelines It is the same rule Clione follows: the ratings it adds to the Product node come from the store's own reviews, and a product with no reviews gets none.
What people often mix up
Believing that a correct Product node is enough to qualify for a merchant listing. Without image or without an offer with a price above zero it is not enough: those are requirements Google sets for that experience, and a node can be correct for the vocabulary without meeting them.[4]Google Search Central. Merchant listing (Product, Offer) structured data And if the page does not let you buy, what applies is the product snippet, not the merchant listing.[2]Google Search Central. Introduction to Product structured data
How to check it
- Run the URL of a product page through the Rich Results Test. It tells you which kinds of rich result it finds and with what errors or suggestions.[7]Search Console Help. Rich Results Test
- Look in the node for the three required properties of a merchant listing:
name,imageandoffers.[4]Google Search Central. Merchant listing (Product, Offer) structured data - Point to each property on the visible page. One you cannot find on screen is either surplus or missing from the page.[6]Google Search Central. General structured data guidelines
- If the product has variants, check that each one has its own
skuorgtinand that it is not repeated between sizes or colors.[5]Google Search Central. Product variant (ProductGroup, Product) structured data
Related concept: Offer
Product and Offer get confused because they travel together, but they answer different questions. Product says what the item is; Offer says on what terms it is sold: the price, the currency, the availability. Schema.org defines the offer as an offer to transfer some rights to an item or to provide a service, for example selling tickets or renting a movie.[8]Schema.org. Offer For merchant listings Google requires that the offer be yours: the merchant has to be the one selling the product.[4]Google Search Central. Merchant listing (Product, Offer) structured data
To keep going, the structured data reading path puts the other terms in order, and the guide to auditing the structured data of a product page walks through a product page property by property.
Synonyms
- English
- product schema, product structured data, product markup
- Español
- marcado de producto, datos estructurados de producto
Sources
- [1] Schema.org. Product. Accessed . ↑ ↑ ↑
- [2] Google Search Central. Introduction to Product structured data. Accessed . ↑ ↑ ↑
- [3] Google Search Central. Product snippet (Product, Review, Offer) structured data. Accessed . ↑
- [4] Google Search Central. Merchant listing (Product, Offer) structured data. Accessed . ↑ ↑ ↑ ↑ ↑
- [5] Google Search Central. Product variant (ProductGroup, Product) structured data. Accessed . ↑ ↑
- [6] Google Search Central. General structured data guidelines. Accessed . ↑ ↑
- [7] Search Console Help. Rich Results Test. Accessed . ↑
- [8] Schema.org. Offer. Accessed . ↑
Change history
- First English version, translated from the Spanish draft.
This definition is published under CC BY 4.0. Reuse this definition freely, crediting Clione with a link to this page.
Related terms
Offer
What the Schema.org Offer type is, how to write price, currency and availability, what Google requires, and how Offer differs from AggregateOffer.
JSON-LD
What JSON-LD is, what @context, @type, @id and @graph mean, why Google recommends it and how to find and check the block on your product page.
Schema.org
What Schema.org is, who maintains it, how its types and properties are organized, and why it is not the same as the format or as what Google requires.
Structured data
What structured data is, which pieces make it up, what a store gets from it according to Google, and how to check it matches the product page.
ProductGroup
What ProductGroup is in Schema.org, which properties Google asks for, how to mark it up on a single page or one page per variant, and how to check yours.
AggregateRating
What AggregateRating is in Schema.org, which properties Google asks for to show stars, which ratings you cannot mark up and how to check your product page.
Make your catalog easy for bots to read
Clione fills every product page with what bots read best: the JSON-LD graph with its structured data, the meta description and the FAQs. You review and press Push; then we check your live store so it all stays published.