Free tools

Product Schema Checker

The Product Schema Checker is a free tool that reads the product structured data (JSON-LD) on a product page and shows which facts Google and AI shopping tools can read, what's missing, and where to fix it in Shopify.

Free · No sign-up · Results in seconds

ExampleThe kind of product data a standard Shopify theme adds (made-up product). Paste your own, or check a link above.

Ready

Ready for Google's product results: all required facts found

Found a ProductGroup with 2 variants in the JSON-LD you pasted.

Needed by Google

Google requires these for product results on pages where shoppers can buy.

Sources: Google's merchant listing guide, Google's product variants guide

  • Product name name

    Found

    Cedar Beard Oil

    Required: it's how Google and AI tools know what the product is.

  • Variant names hasVariant[].name

    Found

    Cedar Beard Oil - 30 ml, Cedar Beard Oil - 50 ml

    Required: Google asks for the same required facts on every variant, starting with its name.

  • Image image

    Found

    Required: Google needs at least one image to show the product.

  • Offer offers

    Found

    Required: the offer holds the price, currency and stock status.

  • Price offers.price

    Found

    24.00 to 34.00 USD

    Required: shoppers and AI tools compare products by price.

  • Currency offers.priceCurrency

    Found

    USD

    Required: a price needs its currency, as a 3-letter code like USD.

Not required, but Google recommends them, and they make your product easier to understand.

Source: Google's merchant listing guide

  • Brand brand.name

    Found

    Example Grooming Co

    Lets shoppers and AI tools match your product to searches for your brand.

  • Description description

    Found

    Beard oil with jojoba and argan oil for dry skin under short to medium beards.

    Tells machines who the product is for and what it does, in your words.

  • Stock status offers.availability

    Found

    In stock

    Shows whether shoppers can buy it now.

  • Barcode (GTIN) gtin

    Some variants only (1 of 2)

    0000000000017

    Shopping tools use barcodes to tell exactly which product it is.

    Where to fix it in Shopify: Products > the product > the variant > Barcode (ISBN, UPC, GTIN, etc.). Fill it in for every variant that has one.

  • SKU sku

    Found

    CBO-30, CBO-50

    Your own product code. Google uses a SKU or barcode to tell variants apart.

  • Part number (MPN) mpn

    Missing

    The maker's part number. Useful when a product has no barcode.

    Where to fix it in Shopify: Not in Shopify's standard product data. A developer or an SEO app can add it.

  • Condition offers.itemCondition

    Missing

    Says whether the product is new, used or refurbished.

    Where to fix it in Shopify: Not in Shopify's standard product data. A developer or an SEO app can add it.

  • Offer link offers.url

    Found

    https://example-store.com/products/cedar-beard-oil?variant=1

    The link that opens this exact product or variant, so shoppers land on the right one.

  • Product group ID productGroupID

    Found

    1000000001

    Tells Google that the variants belong to one product.

  • What the variants differ by variesBy

    Missing

    Tells Google what changes between variants, like size or colour.

    Where to fix it in Shopify: Not in Shopify's standard product data. A developer or an SEO app can add it.

  • Sale end date offers.priceValidUntil

    Not needed

    Only needed for a sale price that ends on a set date.

  • Shipping offers.shippingDetails

    Not on this page

    Shipping costs and times can show in Google's results. They can also be set for the whole store.

    Where to fix it in Shopify: Add them once for the whole store: in Google Merchant Center or Search Console's shipping and returns settings, or with store-wide markup on your home page. Google reads those too.

  • Returns offers.hasMerchantReturnPolicy

    Not on this page

    Your return policy can show in Google's results. It can also be set for the whole store.

    Where to fix it in Shopify: Add them once for the whole store: in Google Merchant Center or Search Console's shipping and returns settings, or with store-wide markup on your home page. Google reads those too.

  • Reviews aggregateRating

    None

    None in the product data.

    Only add ratings markup if real customer reviews show on the page.

Extra facts AI shopping tools can use

Our advice: OpenAI says ChatGPT shopping reads structured product data such as price and description. These extra facts make your product easier to match to a shopper's question.

Source: OpenAI Help: shopping in ChatGPT

  • Category category

    Found

    Beard Oil

    Says what kind of product it is, in your words or as a Google category.

  • Colour color

    Missing

    Helps match questions that name a colour.

    Where to fix it in Shopify: Use clear variant option names (Colour, Size) and fill in the product's category and metafields in Shopify admin.

  • Size size

    Missing

    Helps match questions that name a size.

    Where to fix it in Shopify: Use clear variant option names (Colour, Size) and fill in the product's category and metafields in Shopify admin.

  • Material material

    Missing

    Helps match questions that name a material, like cotton or leather.

    Where to fix it in Shopify: Use clear variant option names (Colour, Size) and fill in the product's category and metafields in Shopify admin.

  • Who it's for audience

    Missing

    Says who the product is for, like adults or children.

    Where to fix it in Shopify: Not in Shopify's standard product data. A developer or an SEO app can add it.

  • Certification hasCertification

    None

    Only if the product really has one, like an organic certification. Leave it out otherwise.

Fix it in Shopify

Most of these are fixed in Shopify admin, not in code: your theme turns your product's fields into product data. Fill in the fields above, then check again.

Show the product data we found

Product data (JSON-LD)

{
  "@context": "https://schema.org",
  "@type": "ProductGroup",
  "@id": "https://example-store.com/products/cedar-beard-oil#product",
  "name": "Cedar Beard Oil",
  "description": "Beard oil with jojoba and argan oil for dry skin under short to medium beards.",
  "url": "https://example-store.com/products/cedar-beard-oil",
  "brand": {
    "@type": "Brand",
    "name": "Example Grooming Co"
  },
  "category": "Beard Oil",
  "productGroupID": "1000000001",
  "hasVariant": [
    {
      "@type": "Product",
      "@id": "https://example-store.com/products/cedar-beard-oil?variant=1#variant",
      "name": "Cedar Beard Oil - 30 ml",
      "sku": "CBO-30",
      "gtin": "0000000000017",
      "image": "https://example-store.com/cdn/cedar-30.jpg",
      "offers": {
        "@type": "Offer",
        "price": "24.00",
        "priceCurrency": "USD",
        "availability": "https://schema.org/InStock",
        "url": "https://example-store.com/products/cedar-beard-oil?variant=1"
      }
    },
    {
      "@type": "Product",
      "@id": "https://example-store.com/products/cedar-beard-oil?variant=2#variant",
      "name": "Cedar Beard Oil - 50 ml",
      "sku": "CBO-50",
      "image": "https://example-store.com/cdn/cedar-50.jpg",
      "offers": {
        "@type": "Offer",
        "price": "34.00",
        "priceCurrency": "USD",
        "availability": "https://schema.org/InStock",
        "url": "https://example-store.com/products/cedar-beard-oil?variant=2"
      }
    }
  ]
}

GEO is a Shopify app that helps your products get recommended by AI, then counts the orders AI sends you.

See how GEO fixes your product pages for AI

What this tool checks

  • Google's required product facts: name, image, price and currency
  • Recommended facts like brand, barcode, SKU, stock status, shipping and returns
  • Variants grouped as a ProductGroup
  • Problems like two product blocks that disagree, or a price that doesn't match your store

How this tool works

  • We download the product page the way a crawler first sees it, before any JavaScript runs, and read every JSON-LD block (up to 20). Google recommends putting product data in the page's HTML, because data added later by JavaScript can make shopping crawls less reliable. Source: Google's merchant listing guide
  • On Shopify stores we also read the product's public data file (/products/{handle}.js) to compare price and stock.
  • We check the facts against Google's merchant listing and product variant guides (required and recommended). The extra facts group is our own advice. Source: Google's product variants guide
  • We read JSON-LD only, not microdata or RDFa.
  • Shipping and returns can be set for the whole store or in Google Merchant Center, so when they're not on the page we say 'not on this page', not 'missing'.
  • We don't run Google's Rich Results Test, and passing here doesn't guarantee a rich result.

Maintained by GEO. Updated .

Questions people ask

What is product schema?

Product schema is a small block of code on a product page that states the product's facts, like its name, price, currency, stock status and brand, in a format machines can read without guessing. Most stores add it as JSON-LD. Google uses it for product results in Search, and AI shopping tools can read the same facts.

Sources: Google's merchant listing guide, OpenAI Help: shopping in ChatGPT

Does Shopify add product schema automatically?

Shopify's own themes, like Dawn and Horizon, do. They use Shopify's structured_data filter, which outputs a Product for products without variants and a ProductGroup for products with variants, with the brand, description, price, currency, stock status and, when you've filled in the barcode field, the GTIN. Other themes vary, so check yours. Shipping, returns and ratings usually need extra setup.

Sources: Shopify's structured_data filter, Dawn's product section

Which product schema fields does Google require?

For product results on pages where shoppers can buy, Google requires the product name, an image, and an offer with a price and currency. It recommends many more, including brand, GTIN, SKU, stock status, shipping details and a return policy.

Source: Google's merchant listing guide

Does product schema help me get recommended by ChatGPT?

It helps AI tools read your facts correctly, but it won't get you recommended on its own. Google says its AI features need no special schema, and OpenAI says ChatGPT already gets Shopify product data through Shopify Catalog with no extra work from merchants. Clear facts on the page and mentions on sites AI trusts matter more.

Sources: Google's AI features guide, OpenAI Help: shopping in ChatGPT

Should I add review stars to my product schema?

Only if real customer reviews show on the page. Google's review guidelines don't allow fake or undisclosed incentivised reviews. If a reviews app adds ratings, check it puts them in the page's HTML: Google says data added later by JavaScript can make shopping crawls less reliable.

Sources: Google Search Central updates, Google's merchant listing guide

Why does my page have two product blocks?

Usually your theme adds one and an app, often a reviews or SEO app, adds another. If they disagree, for example on price or stock, machines can't tell which is right. Keep one complete block: turn off the app's product data if your theme already has it, or the other way round.

More free tools

  • FAQ Schema Generator

    Turn your questions and answers into FAQ markup and a ready Shopify section.

  • AI Bot Checker

    Check if your product copy sounds generic, and which facts shoppers and AI are missing.

  • AI Visibility Checker

    See if ChatGPT, Gemini and Perplexity recommend your product, and who they pick instead.

See all free tools

Updated · Made by GEO