Structured Data fix

How to add Product schema markup

Product schema is what turns a plain product listing into a search result with a price, star rating, and “In stock” badge — and it's what Google Merchant Center reads to validate your items.

Product schema is a block of JSON-LD structured data describing a product: its name, image, description, and an offer with price, currency, and availability. Google uses it for product rich results and to cross-check your Merchant Center feed.

The required fields are strict. Google needs at least a name and an offer (with price, priceCurrency, and availability) before it will show product rich results or accept the data for Shopping.

Why it matters

Product rich results — price, availability, and review stars right in the search result — take up more space and win more clicks than a plain listing. For anyone selling through Google Shopping, valid Product schema is also a prerequisite: Merchant Center flags items with missing or mismatched structured data.

How to tell if this is you

Abby flags “Merchant Center” when product pages lack Product schema or are missing required fields (price, currency, availability). The fix is one well-formed JSON-LD block per product with all required properties.

Not sure if your site has this?

Run Abby's free scan — it checks this and 25 other on-page, technical, and structured-data signals in about 60 seconds, no signup.

Scan my site free

The fix

Add Product schema markup with required fields: name, image, description, offers (price, priceCurrency, availability). Use JSON-LD format. Verify with Google's Rich Results Test.

Before

<!-- Product page with no Product schema: no price / availability rich result -->

After

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "Handmade Blue Suede Shoes",
  "image": "https://example.com/shoes.jpg",
  "offers": {
    "@type": "Offer",
    "price": "129.00",
    "priceCurrency": "USD",
    "availability": "https://schema.org/InStock"
  }
}
</script>

Fix it on your platform

Shopify

Most Shopify themes include Product schema. Ensure your products have images, prices, and descriptions filled in. Use the JSON-LD for SEO app for enhanced markup.

WooCommerce

Install a schema plugin like Yoast WooCommerce SEO or Schema Pro. Ensure all products have: title, image, price, stock status, and description.

Magento

Install a Product Schema extension or add JSON-LD to your product template. Ensure all required Google Merchant Center fields are populated.

BigCommerce

BigCommerce includes basic Product schema. Ensure products have complete details: title, images, price, availability, brand, and SKU.

When this doesn’t apply

Only applies if you sell physical products via Google Shopping. Skip entirely for non-commerce sites — adding Product schema to a service or content site is a misrepresentation that can trigger manual penalties.

Fix every issue at once.

Abby's free scan finds which of 26 checks your site fails. The $8.99 fix guide turns each one into a copy-ready fix for your exact pages — prioritized, with code — or bundle it with a security fix guide for $19.99.

Get my fix plan

FAQ

What are the required Product schema fields for Google?

At minimum: name, and an offers block containing price, priceCurrency, and availability. Adding image, description, brand, sku, and aggregateRating (real reviews only) unlocks more of the rich result.

Do I need Product schema if I only sell services?

No — and you shouldn't add it. Product schema is for physical goods sold online. Applying it to a service or content page misrepresents the page and can trigger a manual penalty.

My store theme already outputs Product schema — am I done?

Often, but verify it. Many themes emit incomplete markup (missing availability or currency). Run a product URL through Google's Rich Results Test and fill any gaps in your product data.