Free resource · No email required

The 25-point WooCommerce SEO checklist

For WooCommerce stores with hundreds or thousands of products. Every check can be run with Search Console, the WooCommerce admin or Google's Rich Results Test. 6 are marked fix first: they decide whether your products get indexed at all.

Where this comes from. Both SearchPrex ecommerce case studies are WooCommerce stores, and these checks are in the order that work was done: SMK Store (a 35,000-product catalogue) and Michigan Outdoor Sports (recovered after a de-indexing event). Tick what is true today; progress is saved in this browser. Checking titles? Use the SERP simulator, and for the platform-independent checks, the technical SEO checklist. Want the full method with screenshots? It is on the WooCommerce SEO page.

25 checks

Indexing and crawl

0/5

Whether Google can find, crawl and keep your product pages at all. On a large catalogue this is where most lost revenue hides.

  • You know how many product pages are indexed — and why the rest are not

    Fix first

    Search Console → Indexing → Pages. Look at “Crawled – currently not indexed” and “Discovered – currently not indexed”, then use URL Inspection on a sample of product URLs. A large gap between published products and indexed products is the first thing to fix.

  • One XML sitemap source, submitted in Search Console

    WordPress has its own sitemap (wp-sitemap.xml) and SEO plugins such as Yoast or Rank Math replace it with theirs. Make sure only one is live, it is the one submitted in Search Console, and its product sitemap lists only published, indexable products.

  • Filter, sort and add-to-cart URLs are not being crawled and indexed

    Fix first

    WooCommerce creates URL parameters such as ?orderby=, ?min_price=, ?filter_colour= and ?add-to-cart=. Search Console's Pages report and a site: search show whether they are indexed. Canonical them to the clean category URL and keep crawlers out of ?add-to-cart= links.

  • Cart, checkout and account pages are noindex

    WooCommerce marks these pages noindex by default. View the page source of /cart/, /checkout/ and /my-account/ and confirm a theme or plugin has not removed the robots noindex tag.

  • Out-of-stock and discontinued products have a plan

    Products coming back keep their page, with availability shown. Products gone for good are redirected (301) to the closest replacement or their category. The “Hide out of stock items” setting only hides them from listings — the URLs still exist.

Product pages

0/5

The page Google decides to index or skip, and the page a buyer decides on.

  • Product descriptions are your own, not the manufacturer's copy

    Fix first

    Paste a sentence from a product description into Google in quotes. If dozens of other stores show the same text, Google has little reason to index yours. Rewrite the products that matter most first — brand by brand works well on a large catalogue.

  • Product titles name what people search: brand, model and the key attribute

    “Benchmade Bugout 535 Folding Knife” beats “Bugout”. Check how the SEO title looks in results with a SERP preview — the end is cut if it is too wide.

  • Variations live on one product page

    Colours and sizes belong as variations of one variable product, not as separate near-identical products — unless each variation is searched for on its own and has something different to say.

  • Images have descriptive file names and alt text, and are compressed

    “benchmade-bugout-535-grey.jpg”, not “IMG_2231.jpg”. WordPress supports WebP and AVIF uploads; WooCommerce generates its own thumbnail sizes, so upload one sharp, compressed original.

  • Short and long descriptions both do a job

    The short description sits next to the price: key specs and why to buy. The long description answers the questions buyers ask — sizing, materials, care, compatibility.

Structured data

0/4

What makes a product result show price, availability and reviews instead of a plain blue link.

  • Product structured data is valid, with price, currency and availability

    Fix first

    WooCommerce outputs Product JSON-LD by default, and SEO plugins extend it. Run a product URL through Google's Rich Results Test and fix every error; check Search Console's product snippet and merchant listing reports.

  • Review data comes only from real customer reviews

    WooCommerce includes product ratings in its structured data. Only genuine reviews left on your store should feed it — imported or invented reviews break Google's policies.

  • Shipping and returns information is given to Google

    Through Merchant Center or through shipping and return policy structured data, so product results can show delivery and return details.

  • Breadcrumbs are on product and category pages, with BreadcrumbList markup

    WooCommerce and most SEO plugins can output both. Breadcrumbs help buyers move up to the category and help Google understand the catalogue structure.

Categories and structure

0/4

Category pages often rank for the broad searches — “folding knives”, “fixed blade knives” — that product pages cannot.

  • Main category pages have their own copy, not just a product grid

    A short introduction above the grid and buying advice below it, written for that category. A category that is only a grid looks the same as every competitor's.

  • The product permalink base is settled — and changed only with redirects

    Fix first

    Settings → Permalinks → Product permalinks. Any structure can work; changing it on a live store changes every product URL, so it needs a full set of 301 redirects planned before you switch.

  • Paginated category pages keep their own canonical

    Page 2 of a category should canonical to itself, not to page 1 — otherwise Google may not crawl through to the products on later pages.

  • Thin tag and attribute archives are noindexed or removed

    Product tags and attribute archives with a handful of products create many thin pages. Keep the ones you curate and noindex the rest.

Speed and technical health

0/4

WooCommerce sites slow down as plugins pile up. Speed decides whether a phone visitor stays long enough to buy.

  • Core Web Vitals pass for product and category templates

    Fix first

    Search Console → Core Web Vitals. Look at groups of product and category URLs, not just the homepage. Fix the template once and every page on it improves.

  • Unused plugins are removed and scripts load only where needed

    Deactivate plugins nobody uses. Check whether cart, slider or review scripts load on pages that do not need them, such as blog posts.

  • Page caching is on, with cart and checkout excluded

    Hosting or plugin page caching speeds up category and product pages; cart, checkout and account pages must stay uncached so each customer sees their own basket.

  • The site is on HTTPS with one version of every URL

    http, https, www and non-www should all redirect to one version, and trailing-slash variants should not both resolve.

Monitoring

0/3

A large catalogue drifts. These checks catch it before revenue does.

  • Indexed products are compared with published products every month

    Note the number of published products in WooCommerce and indexed product URLs in Search Console. A widening gap is an early warning.

  • 404s from deleted products are redirected

    Search Console → Pages → Not found (404). Redirect removed products that still get links or traffic to the closest replacement or category.

  • Plugin, theme and SEO settings changes are tested on staging first

    An update to the theme or SEO plugin can change canonicals, noindex tags or structured data site-wide. Check a product, a category and the sitemap after every update.

Ran the checklist and found more than you can fix?

This is the audit I run on a WooCommerce store before any work starts, written out so you can do it yourself. If you would rather I checked your store's indexing, product pages and structured data against the stores above you, that is the offer below — free, within 24 hours.

Free · No obligation · Reply within 24 hours · Market Exclusivity (One client per city)

WooCommerce, WordPress and Google change their behaviour from time to time. Where a check describes a default setting or a Google rule, confirm it against the current documentation.