In beta, with limited placesOpen to everyone in Q1 2027

↑↓ to move · Enter to open · Esc to close

Structured data

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.

Written by
Reviewed by
Reviewed by
Published 6 min read
Takeaway:

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, image and brand.
  • Identifiers: sku (the store's reference number), and the standard codes such as gtin, gtin13 or mpn. They have their own entries: SKU, GTIN and MPN.
  • Features: color, material or size, among many others.
  • Relationships: offers, which leads to the offer with the price; aggregateRating and review, for ratings; isVariantOf and inProductGroupWithID, for variants; and hasMerchantReturnPolicy, 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.

Warning:

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

  1. 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
  2. Look in the node for the three required properties of a merchant listing: name, image and offers.⁠[4]Google Search Central. Merchant listing (Product, Offer) structured data
  3. 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
  4. If the product has variants, check that each one has its own sku or gtin and that it is not repeated between sizes or colors.⁠[5]Google Search Central. Product variant (ProductGroup, Product) structured data

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. [1] Schema.org. Product. Accessed . ↑ ↑ ↑
  2. [2] Google Search Central. Introduction to Product structured data. Accessed . ↑ ↑ ↑
  3. [3] Google Search Central. Product snippet (Product, Review, Offer) structured data. Accessed . ↑
  4. [4] Google Search Central. Merchant listing (Product, Offer) structured data. Accessed . ↑ ↑ ↑ ↑ ↑
  5. [5] Google Search Central. Product variant (ProductGroup, Product) structured data. Accessed . ↑ ↑
  6. [6] Google Search Central. General structured data guidelines. Accessed . ↑ ↑
  7. [7] Search Console Help. Rich Results Test. Accessed . ↑
  8. [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.

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.