How to fix missing schema product on WooCommerce

Add Product schema (JSON-LD structured data) to every product page so search engines can display rich results like price, availability, and ratings directly in search listings.

Steps for WooCommerce

  1. Install and activate a structured data plugin — the most widely used free option is 'Rank Math SEO' or 'Yoast SEO'; both auto-generate Product schema on WooCommerce product pages when WooCommerce is detected.
  2. For Rank Math: go to Rank Math → Titles & Meta → WooCommerce → verify 'Schema Type' is set to 'Product'. Rank Math will pull price, availability, and rating data automatically.
  3. For Yoast SEO Premium (or Yoast WooCommerce SEO plugin): Settings → Yoast SEO → Schema → confirm product pages output 'Product' schema type.
  4. If you prefer manual control: add a code snippet via a plugin like 'Code Snippets' that uses the woocommerce_single_product_summary action hook to echo a <script type='application/ld+json'> block, using WooCommerce's $product object to populate fields dynamically.
  5. Validate a product page URL with Google's Rich Results Test to confirm Product schema is present and error-free.
Official WooCommerce documentation ↗
{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "{{ product.title }}",
  "description": "{{ product.description | strip_html }}",
  "image": "{{ product.featured_image | img_url: 'master' }}",
  "sku": "{{ product.selected_variant.sku }}",
  "brand": {
    "@type": "Brand",
    "name": "{{ product.vendor }}"
  },
  "offers": {
    "@type": "Offer",
    "url": "{{ canonical_url }}",
    "priceCurrency": "{{ cart.currency.iso_code }}",
    "price": "{{ product.selected_variant.price | money_without_currency }}",
    "availability": "{% if product.available %}https://schema.org/InStock{% else %}https://schema.org/OutOfStock{% endif %}",
    "itemCondition": "https://schema.org/NewCondition"
  }
}

What is missing schema product?

Structured data is a standardized block of code — invisible to shoppers but readable by search engines — that explicitly tells Google and Bing what your page is about. Product schema specifically describes your item's name, price, availability, reviews, and more using a vocabulary that search engines universally understand. Without it, search engines have to guess at those details by reading your page text, which is slower and less reliable. Adding Product schema is how you "raise your hand" to Google and say: this page sells a product, here are the details.

Product schema is the gateway to Google's **rich results** — the eye-catching search listings that show star ratings, price, and stock status directly in the search results page. These rich results get significantly higher click-through rates than plain blue links, meaning more organic traffic to your store without spending more on ads. Missing schema means your product pages compete at a disadvantage against rivals whose listings stand out with price and review badges. Additionally, as AI-powered answer engines (like Google's AI Overviews and Bing Copilot) increasingly pull structured product data to answer shopping queries, having valid Product schema is how your products get surfaced in those AI-generated answers.

See the complete Missing schema product guide for every platform and the full background.

Not sure if your WooCommerce store has this?

Run a free SEOLZ audit — we’ll find missing schema product and every other issue across your whole site.

Scan my site free

Fix missing schema product on another platform