Skip to main content
Skip to main content
Back to Guides
WooCommerce Schema Markup Setup Guide for Product Pages

WooCommerce Schema Markup Setup Guide for Product Pages

By Scrippt Dev··12 min read
Share

Learn how to set up WooCommerce schema markup on product pages step by step. Get rich results in Google that boost click-through rates and drive more store traffic.

You've spent hours writing detailed product descriptions, uploading beautiful photos, and setting competitive prices — but when you search for your products on Google, your listings look plain. Meanwhile, your competitors show star ratings, prices, stock availability, and review counts right in the search results. They're getting the clicks. You're getting skipped.

The difference is schema markup — and setting it up on your WooCommerce store is less intimidating than it looks.

30%+

Rich results consistently achieve significantly higher click-through rates than standard listings. More clicks from the same search ranking means more revenue without spending a penny more on ads.

What Is Schema Markup and Why Does It Matter for Your Store?

Schema markup is a small snippet of structured code added to your web pages to help search engines understand what your content is about. It doesn't change what's on the page — it tells Google exactly what to expect.

For product pages specifically, schema markup communicates details like:

  • Product name and description
  • Price and currency
  • Availability (in stock, out of stock, pre-order)
  • Star ratings and number of reviews
  • Brand and manufacturer
  • SKU and product identifiers (like GTIN or MPN)

When Google reads this structured data, it can display rich results (sometimes called rich snippets) — those enhanced search listings that show prices, ratings, and availability directly below your page title. Here's why that matters in real terms:

Before schema markup: Your search listing shows a blue title, a green URL, and two lines of grey description text. It blends in with every other result on the page.

After schema markup: Your listing shows a blue title, a green URL, your description — plus gold star ratings (4.7 out of 5), a price (£34.99), and a green "In stock" badge. It visually dominates the results.

Studies consistently show that rich results achieve significantly higher click-through rates than standard listings. For an ecommerce store, that means more visitors from the exact same search rankings you already have — without spending an extra penny on ads.

How WooCommerce Handles Schema by Default

WooCommerce already adds some basic schema markup to your product pages out of the box. It uses a format called JSON-LD (JavaScript Object Notation for Linked Data), which is Google's preferred method of reading structured data.

By default, WooCommerce typically includes:

  • Product name
  • Product description
  • Price and currency
  • Product image URL
  • Basic availability status

However, this default markup is often incomplete or generic. Common gaps include:

  1. Missing review and rating data — even when your products have reviews, the schema might not reference them properly
  2. No brand information — Google uses brand data to match products to searches
  3. Missing product identifiers — GTIN (Global Trade Item Number), MPN (Manufacturer Part Number), and SKU fields are often empty in the structured data
  4. Incomplete offer details — price valid dates, seller information, and shipping details may be absent
  5. Conflicts from your theme — some WordPress themes inject their own schema markup, creating duplicate or conflicting data that confuses Google

Test your schema before changing anything

Go to Google's Rich Results Test and check at least three product pages — a simple product, a variable product, and one with reviews. Write down every warning and error. This gives you a concrete checklist before you install a single plugin.

Before you install anything or change any settings, your first step should be testing what's already there.

How to Test Your Current Schema Markup

  1. Go to Google's Rich Results Test
  2. Enter the URL of one of your product pages
  3. Click "Test URL" and wait for the results
  4. Look for a "Product" item in the detected structured data
  5. Note any warnings (yellow triangles) or errors (red circles)

Run this test on at least three different product pages — a simple product, a variable product (one with size or colour options), and a product with reviews. You'll likely find that each has different issues. Write down every warning and error. This becomes your checklist for what to fix.

Setting Up Schema Markup With a Plugin (Step by Step)

For most WooCommerce store owners, a dedicated SEO plugin is the most reliable way to add complete, properly formatted schema markup without touching any code. While there are several options available, the two most widely used are Yoast SEO (with its WooCommerce add-on) and Rank Math.

Both tools handle schema markup for WooCommerce products. Here's a step-by-step walkthrough using the general approach that applies to either:

Step 1: Install and Activate Your SEO Plugin

  1. From your WordPress dashboard, go to Plugins → Add New
  2. Search for your chosen SEO plugin and click Install Now
  3. Click Activate once installed
  4. If you're using Yoast, you'll also need the Yoast WooCommerce SEO premium add-on to get full product schema support. Rank Math includes WooCommerce schema integration in both its free and paid versions.
  5. Run through the setup wizard — both plugins offer one when first activated

Step 2: Configure Global Schema Settings

Before touching individual products, set your store-wide defaults:

  1. Navigate to your SEO plugin's Schema or Structured Data settings
  2. Set your Organization name and upload your logo — this gets attached to every page's schema
  3. Under the product page defaults, ensure the schema type is set to Product
  4. Enable automatic product schema generation — this tells the plugin to pull data from your WooCommerce product fields automatically

Step 3: Add Missing Data to Individual Products

This is where most of the real improvement happens. Open any product in your WooCommerce editor and scroll down to the SEO plugin's settings panel. Fill in these fields:

  • Brand name — if you sell products from other brands, enter the manufacturer name. If you make your own products, enter your store name.
  • GTIN / EAN / UPC — this is the barcode number on your product's packaging. If you sell branded goods, the manufacturer can provide this. Google increasingly expects this for product schema.
  • MPN (Manufacturer Part Number) — the unique number the manufacturer assigns to each product. Check supplier documentation or the product's original packaging.
  • SKU — WooCommerce already has a SKU field in the product data panel. Make sure it's filled in.

If you have hundreds of products, prioritise your top 20 best-sellers first. Getting complete schema on your highest-traffic pages delivers the biggest impact fastest.

Step 4: Ensure Reviews Connect to Your Schema

If your products have customer reviews, make sure the schema includes aggregate rating data:

  1. In your SEO plugin settings, look for an option to include review/rating data in product schema
  2. Enable it
  3. Verify that WooCommerce's built-in review system is active: go to WooCommerce → Settings → Products and ensure "Enable product reviews" is checked

If you use a third-party review plugin (like a reviews app that imports from external platforms), check that it's compatible with your SEO plugin's schema output. Some review plugins add their own schema, which can create conflicts — we'll cover how to detect that next.

Step 5: Handle Variable Products Correctly

Variable products — those with options like size, colour, or material — need special attention. Each variation can have a different price and stock status, and Google wants to see this reflected in the schema.

Most SEO plugins handle this by generating an Offer for each variation within the product schema. To make sure this works correctly:

  1. Open a variable product in your WooCommerce editor
  2. Under the Variations tab, confirm every variation has its own price, SKU, and stock status filled in
  3. Check that your SEO plugin is set to output schema for all variations, not just the default selection

Run the Rich Results Test on a variable product URL after making changes to confirm Google sees multiple offers with different prices.

Fixing Common Schema Errors and Warnings

After configuring your plugin, run Google's Rich Results Test again on several product pages. Here are the most common issues you'll encounter and exactly how to fix them:

"Missing field: brand" — Go to each product's SEO settings and add the brand name. For your own products, use your store name consistently.

Duplicate schema from your theme will break your rich results

Many WordPress themes inject their own product schema, which conflicts with your SEO plugin's output. If the Rich Results Test shows duplicate or conflicting data, check your theme's documentation for a way to disable its built-in schema — otherwise Google may ignore all of it.

"Missing field: review" or "Missing field: aggregateRating" — This appears on products with no reviews yet. You can't fake reviews, but you can encourage real ones by sending post-purchase follow-up emails asking for feedback. In the meantime, this warning won't prevent your other data from displaying.

"Missing field: gtin, isbn, or mpn" — Add at least one of these product identifiers. For handmade or custom items without a GTIN, adding an MPN (which you can create yourself as a unique reference code) satisfies this requirement.

Duplicate schema detected — This happens when your theme, your SEO plugin, and possibly a review plugin all output their own product schema. To fix it:

  1. Check your theme's documentation for a way to disable its built-in schema output
  2. In your SEO plugin, look for an option to strip other schema markup or handle conflicts
  3. As a last resort, ask your developer to remove the duplicate schema from your theme's template files

Price shows as "0" or is missing — This usually means the product doesn't have a regular price set in WooCommerce, or the currency isn't configured properly. Go to WooCommerce → Settings → General and confirm your currency is set correctly.

If troubleshooting feels overwhelming, consider running your store through our free site audit tool — it flags structured data issues alongside other SEO opportunities you might be missing.

Advanced Schema Enhancements Worth Adding

Once you've covered the basics, there are a few additional schema properties that can further improve how your products appear in search:

Shipping and Returns Information

Google can display shipping costs and return policies directly in search results. To add this:

  1. In your SEO plugin or a dedicated schema plugin, look for shippingDetails and returnPolicy schema options
  2. Add your standard shipping rate, delivery time range, and the regions you ship to
  3. Specify your return window (e.g., 30 days) and whether you offer free returns

Merchant Listing Schema

If you participate in Google Shopping (even the free listings), having complete Product schema with merchant-specific fields helps your products appear in the Shopping tab. Key fields include:

  • Shipping weight and dimensions
  • Condition (new, used, refurbished)
  • Availability date for pre-orders

FAQ Schema on Product Pages

If your product pages include an FAQ section (which is excellent for both customers and SEO), you can mark those questions up with FAQPage schema. Some SEO plugins support this natively — you add your Q&A pairs in a dedicated block, and the plugin generates the schema automatically.

If you don't have FAQ content yet, the free FAQ generator creates relevant questions and answers for any product — ready to paste into your page and mark up with schema.

For stores built on WordPress and WooCommerce, these enhancements pair well with a broader technical SEO strategy. If you're looking for expert help to audit and optimise your entire store's search presence, our ecommerce SEO services cover everything from schema to site structure.

Monitoring Your Rich Results Over Time

Setting up schema is not a one-time task. You need to monitor it to ensure Google continues to read your data correctly, especially after theme updates, plugin updates, or product changes.

Here's your ongoing monitoring routine:

  1. Google Search Console — Go to the Enhancements section in the left sidebar. You'll see a Products report showing how many of your pages have valid product schema, how many have warnings, and how many have errors. Check this at least once a month.
  2. Spot-check after updates — Every time you update your WordPress theme, your SEO plugin, or WooCommerce itself, run the Rich Results Test on two or three product pages to make sure nothing broke.
  3. Track click-through rates — In Google Search Console's Performance report, filter by pages that have product schema. Over time, you should see CTR improvements on pages where rich results appear compared to your previous baseline.
  4. Add schema to new products — Build it into your product launch process. Every time you add a new product, fill in the brand, GTIN/MPN, and other schema fields before publishing.

Your Next Step

Add GTIN or MPN to satisfy Google's product identifier requirement

Google increasingly expects at least one product identifier (GTIN, MPN, or SKU) in your schema to show rich results. For branded goods, the GTIN is on the barcode. For handmade products, create a unique MPN yourself — any consistent reference number works.

Key takeaway

Run your best-selling product through Google's Rich Results Test, write down every warning and error, then fix them one by one using an SEO plugin. Complete schema on your ten highest-traffic products will put star ratings, prices, and stock status in Google search results — making every competitor's plain listing look invisible by comparison.

Pick your single best-selling product, run it through Google's Rich Results Test, and write down every warning and error. Then install or configure your SEO plugin following the steps above, fill in the missing fields for that one product, and test it again. When you see clean, green, validated results — repeat the process for your next nine best-sellers. Within an afternoon's work, your top products will be eligible for rich results that make your competitors' plain listings look invisible.

Done-for-you

Want a professional WooCommerce store built for you?

We build WooCommerce stores that are fast, SEO-optimised, and ready to sell — no monthly platform fee, no tech knowledge required. Fixed price, no calls.

See WooCommerce Packages →