Schema generators

Product schema markup: a complete guide

Product schema tells Google a page sells something, and what it costs, whether it's in stock and how it's rated. It's how shops get prices and stars in search results.

If you sell anything online, product schema is the structured data that matters most. It describes the product, its offer (price, currency, availability) and its reviews. Google uses it for product rich results, for Shopping tabs and for free product listings.

A product schema example

{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "Trail Runner 2 Waterproof Shoe",
  "image": ["https://example.com/img/trail-runner-2.webp"],
  "description": "Waterproof trail running shoe with a grippy rubber sole.",
  "sku": "TR2-BLU-42",
  "brand": { "@type": "Brand", "name": "Example" },
  "offers": {
    "@type": "Offer",
    "url": "https://example.com/trail-runner-2",
    "price": "129.00",
    "priceCurrency": "USD",
    "availability": "https://schema.org/InStock",
    "itemCondition": "https://schema.org/NewCondition"
  },
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.6",
    "reviewCount": "87"
  }
}

Google has two kinds of product results, with slightly different requirements.

Product snippets

The rich result with stars and price under a normal listing. Requires name, plus at least one of offers, review or aggregateRating.

Merchant listings

For pages where people can buy the product. Requires name, image and an offers block with price and priceCurrency. Recommended extras include:

  • availability and itemCondition
  • gtin, mpn or sku identifiers
  • brand
  • shippingDetails (delivery cost and time)
  • hasMerchantReturnPolicy (return window and cost)

The more of these you include, the more Google can show: shipping and returns now appear directly in some results.

Free tool

Product Schema Generator

Fill in your product's details and copy JSON-LD that can show price, stock and star ratings in Google.

Free, no sign-up. The code is built in your browser: nothing you type is sent anywhere.

Open the full Product Schema Generator page →

Product variants

For a product sold in several sizes or colours, Google supports ProductGroup with hasVariant, listing each variant as its own Product with its own offer. If each variant has its own URL, each page should carry its own markup.

Common product schema mistakes

  1. Price in the markup doesn't match the page. Google checks, and mismatches can get listings disapproved.
  2. Currency symbols in the price. Use "price": "129.00" and "priceCurrency": "USD", not "$129".
  3. Stale availability after something sells out.
  4. Fake or copied ratings. Ratings must come from real reviews shown on the page.
  5. Product markup on category pages describing many products as one. Use it on individual product pages.
  6. Duplicate blocks from a theme and an app, with different prices.

Does product schema help rankings?

Not directly. But product results with prices, ratings and stock status stand out, and shoppers comparing options are far more likely to click a result that shows the price they're looking for.

Add product schema in minutes

Fill in the generator on this page with your product's details and copy the JSON-LD. On Shopify, most themes add product schema automatically; check the output with the schema checker to see what's missing. On WordPress with WooCommerce, SEO plugins usually handle it, but often leave out shipping and returns.

Questions

What is product schema?

Structured data that describes a product, its price, availability and reviews so Google can show them in search results.

What fields does product schema require?

A name, plus at least one of offers, review or aggregateRating. Merchant listings also need an image and an offer with price and currency.

Can I use product schema on category pages?

Google wants product markup on pages about a single product. Category pages listing many products shouldn't describe them as one product.

Why aren't my product stars showing?

Ratings must come from genuine reviews visible on the page, the markup must be valid, and Google still decides per search whether to show them.

See what to fix on your website today.

Free plan, no credit card. Your first fixes in about a minute.