// blog / woocommerce

How I run a WooCommerce SEO checklist on a live store

My WooCommerce SEO checklist covers what a store builds on its own that a blog doesn't: product and category URLs, filter and sort parameters, cart and checkout pages, product markup, stock changes and heavy templates. I run it in that order, because each layer decides whether the next one can rank.

By Muhammad Younus Published 8 min read WooCommerce

WooCommerce and store SEO: illustration for "My WooCommerce SEO checklist"
// 01 - the scope

What does a WooCommerce SEO checklist cover?

A WooCommerce SEO checklist covers the store-specific layer that a general WordPress checklist skips: how products and categories get their URLs, which generated URLs should stay out of the index, what the product and category templates print, and how stock changes are handled. It's the same list I work through before quoting WooCommerce SEO services, so nothing here is theory.

The site-wide basics, like HTTPS, redirects and crawl checks, sit in my technical SEO checklist for WordPress. This one assumes those are done and goes through the store in the order the problems compound: setup, product pages, category pages, markup, stock, speed and monitoring.

// 02 - technical setup

How I start a WooCommerce SEO checklist: permalinks, sitemaps, filters and cart pages

These settings decide which URLs exist at all. Get them wrong and every later fix is working against the store's own structure.

  1. i.

    Search engine visibility is off

    Settings, Reading. When Discourage search engines is ticked, WordPress prints a noindex, nofollow robots meta tag on every page. It's often left on after a store launches from staging.

  2. ii.

    Product permalinks are chosen on purpose

    WooCommerce offers Default (/product/), Shop base, Shop base with category, or a Custom base. Shop base with category puts the category in every product URL, so moving a product changes its address. Change the base on a live store only with redirects ready.

  3. iii.

    Category and tag bases don't clash

    The defaults are /product-category/ and /product-tag/. WooCommerce's docs warn that a custom product base mustn't reuse the category base, because WordPress needs them to differ.

  4. iv.

    Filter and sort URLs are contained

    ?orderby= and filter parameters multiply fast. Google's faceted navigation guidance says to block crawling of filter URLs in robots.txt when you don't need them indexed, and calls canonical and nofollow less effective long term.

  5. v.

    Cart, checkout and account stay noindexed

    WooCommerce core adds noindex to the cart, checkout and My account pages, and sends an X-Robots-Tag noindex header on endpoints like order-received. I check the SEO plugin hasn't overridden it and that none of them sit in the sitemap.

  6. vi.

    The sitemap lists what should rank

    Products and product categories, yes. Product tags and attribute archives only when they're built as real landing pages, which they rarely are.

  7. vii.

    Paginated categories keep their own canonicals

    Google says not to canonicalise page 2 onwards to page 1, and to give each page in a sequence its own canonical URL.

// 03 - product pages

What's on my product page SEO checklist?

Product pages win the searches with a model, a size or a brand in them. They lose when they're a copy of every other store's page.

  1. i.

    A title that says which product

    Product name plus what separates it, like brand, model or size. Not the store name first on every product.

  2. ii.

    One H1, the product name

    Themes print it by default. Check a page builder template hasn't added a second one.

  3. iii.

    The store's own description

    The manufacturer's text is on every other store selling the item. Here's how I write product descriptions that add what only the store can say.

  4. iv.

    Variations on one URL

    WordPress core's canonical on a product is its permalink with no query string, so ?attribute_ variation links point back to the one product page.

  5. v.

    Images with real alt text

    Describe the product in the photo, colour and angle included. Image search is a real source of product traffic.

  6. vi.

    Links in from categories and related products

    A product only reachable through a filter or search box is one Google may never find or value.

Rather have me do this? One person, whole job.

Book a call on Upwork
// 04 - category pages

What's on my category page SEO checklist?

Category pages are where most WooCommerce stores should rank for the broad searches, like a product type in the plural. They're also the pages stores leave emptiest: a heading and a grid.

Every category that matters gets its own title tag, a short introduction written for the searcher, and the right subcategories linked. WooCommerce gives each product category a Description field, and its docs say some themes display it beneath the category name. If yours doesn't, that's a template fix, not a reason to leave it blank.

Then the traps. Sorting and filtering a category creates URLs with the same products in a different order, which Google's own canonicalization docs name as a common source of duplicates. When those URLs turn up in the Pages report as duplicates, the only question is whether Google picked the clean category URL, and how Google groups duplicates without a canonical shows how to check. Usually it has, and they can be left alone.

// 05 - structured data

How do I add Product schema without fake reviews?

WooCommerce already prints Product structured data from its own code, so the first check is how many Product graphs a page carries. An SEO plugin, a reviews plugin and the theme can each add another, and two graphs describing one product is the usual source of errors.

Google's product snippet documentation says the markup must include one of review, aggregateRating or offers. A store always has an offer: a price, a currency and availability. That's the honest way to satisfy it, and it's the fix I use for Product snippet errors in Search Console.

Review and rating markup goes on only when the reviews are real and visible on the page. Google's structured data guidelines name fake reviews as misleading markup, and a structured data manual action means the page loses eligibility for rich results. It isn't worth the stars.

// 06 - stock changes

What do I do with out-of-stock and discontinued products?

Temporarily out of stock and gone for good are different jobs. A product that's coming back keeps its page, its URL and its rankings, with the availability shown on the page and in the markup. WooCommerce has a store-wide setting to hide out of stock items from the catalogue, and I check what it's doing to category pages before anyone deletes a product.

A discontinued product with traffic or links gets a 301 to its closest replacement; one with neither can return a 404. Bulk-redirecting everything to the shop page helps nobody. The full decision tree for out-of-stock products is its own post.

// 07 - speed

How do I check speed and Core Web Vitals on WooCommerce?

On product and category templates, not the home page. Those are the pages that rank and sell, and they're usually the heaviest: galleries, variation swatches, reviews, related products and tracking scripts.

Google's Core Web Vitals targets are an LCP within 2.5 seconds, an INP of 200 milliseconds or less, and a CLS of 0.1 or less, measured at the 75th percentile of page loads. On a store, the product image is usually the LCP element, variation swatches and mini-carts are where INP suffers, and late-loading review widgets or banners cause the layout shift. I test one URL per template type and fix the template, since one fix covers every product.

// 08 - monitoring

How I monitor a WooCommerce store in Search Console

Fixes on a store only count when Search Console shows them. This is what I check after a change goes live, and then monthly.

  1. Step 01

    Pages report, filtered by the sitemap

    Products and categories in Not indexed are the first priority. Filter and cart URLs in the same report are usually there on purpose.

  2. Step 02

    The Shopping reports

    Search Console puts the Product snippets and Merchant listings reports under Shopping. Errors there cost rich results across every product that shares the template.

  3. Step 03

    Performance by URL pattern

    Filter pages containing /product/ and then /product-category/, or your custom bases. It shows whether categories or products carry the store.

  4. Step 04

    URL Inspection on changed templates

    Inspect one product and one category after any theme or plugin update and check the rendered HTML still carries the content and markup.

  5. Step 05

    Validate fixes

    Press Validate fix on each issue once every instance is fixed, then watch the count over the next weeks.

// 09 - the pitfalls

What are the most common WooCommerce SEO pitfalls?

Each of these comes from a normal store habit, which is why they turn up so often.

  1. i.

    Indexable filter and sort URLs

    Thousands of near-identical listings crawled instead of the products.

  2. ii.

    Deleting products instead of redirecting

    Earned links and rankings turn into 404s overnight.

  3. iii.

    Two sources of Product markup

    WooCommerce plus a plugin or theme, printing conflicting prices or availability.

  4. iv.

    Changing the product base on a live store

    Every product URL changes at once, which is a site move nobody planned. A redesign without a redirect map dropped one store from 162 daily clicks to 49 in three days.

  5. v.

    Empty category pages

    A heading and a grid can't compete with a category that answers the search.

Is this your site? Send me the URL.

Book a call on Upwork
// questions - woocommerce

What else do people ask about this?

What is a WooCommerce SEO audit?

It's this checklist run against a live store, with findings ranked by the traffic and sales they affect. It covers URLs, indexing, product and category templates, markup, stock handling and speed.

Is WooCommerce good for SEO?

Yes, with care. It gives you full control of URLs, templates and markup, but it also generates filter, sort, tag and attribute URLs that need managing before they crowd out the pages that sell.

Do I need a plugin for WooCommerce SEO?

An SEO plugin, yes, for titles, sitemaps and category descriptions. WooCommerce prints its own product markup, so check the plugin's product schema doesn't duplicate it. My SEO plugin comparison covers which ones handle stores.

// sources - checked

Where do these rules come from?

Platform and Google documentation, opened and read on the day this was written. Everything else is how I work.

  1. WordPress.org documentation: Settings Reading screen (search engine visibility)
  2. WooCommerce documentation: permalinks
  3. WooCommerce documentation: managing product categories, tags and attributes
  4. WooCommerce documentation: products settings, inventory
  5. WooCommerce source on GitHub: wc-template-functions.php (noindex on cart, checkout, My account and endpoints)
  6. WooCommerce source on GitHub: class-wc-structured-data.php
  7. WordPress source on GitHub: wp_get_canonical_url() in link-template.php
  8. Google crawling documentation: managing crawling of faceted navigation URLs
  9. Google Search Central: pagination and incremental page loading
  10. Google Search Central: what is URL canonicalization
  11. Google Search Central: product snippet structured data
  12. Google Search Central: general structured data guidelines
  13. Search Console Help: rich result status reports (Shopping)
  14. Search Console Help: Page indexing report
  15. web.dev: Web Vitals
Muhammad Younus, WordPress technical SEO consultant
// who wrote this

One consultant, writing down his own method

I'm Muhammad Younus, a WordPress technical SEO consultant with 8+ years of experience and 100+ client sites fixed. Top Rated Plus on Upwork with a 100% Job Success Score. Every post here is the way I actually do the job, written in the first person because it's one person doing it, remotely, with no team behind the name.

Nothing in these posts is a client I can't name or a number I can't show. Where a figure comes from a client's Search Console, it's from a published case study, and where a rule comes from Google or a platform, the source is linked at the bottom of the post.

// the service behind this post
Muhammad Younus with his arms folded and a relaxed, confident smile
// next step

Want this done on your own site?

Book a call on Upwork, send the URL and read-only Search Console access, and you'll get a written scope for the search side before any work starts. One person does the whole job, remotely.

Book a call on Upwork