How to fix seo variant urls not canonicalized on WooCommerce

Add a canonical tag to every product variant URL pointing back to the base product page, so Google consolidates ranking signals on one URL instead of splitting them across hundreds of duplicates.

Steps for WooCommerce

  1. Install the free Yoast SEO or Rank Math plugin if not already installed (Plugins → Add New).
  2. Yoast SEO: Go to Yoast SEO → Search Appearance → Products. Yoast automatically outputs a canonical pointing to the base product permalink for variable product pages. Confirm by viewing source on a product URL with query parameters (e.g. ?attribute_pa_color=red) — the canonical should show the base product URL.
  3. Rank Math: Go to Rank Math → Titles & Meta → Products. Rank Math similarly outputs the base product canonical automatically.
  4. If you have a custom or page-builder theme that outputs its own canonical, search your theme's header.php or functions.php for any hardcoded canonical output and remove duplicates.
  5. If query parameters are added by plugins (e.g. filters), go to Yoast → SEO → Search Appearance → Advanced and confirm query parameters are not being indexed as separate URLs. Also use Google Search Console → URL Inspection on a variant URL to confirm the canonical Google sees.
Official WooCommerce documentation ↗

What is seo variant urls not canonicalized?

When shoppers (or your platform) navigate to a product with a colour, size, or style selected, the URL often changes — a query parameter like `?color=Pop+Red` or `?size=M` gets appended to the base product URL. Each of those variant URLs is effectively a separate page in Google's eyes. A canonical tag is a small snippet of HTML code (placed in the `<head>` of a page) that tells search engines: "The true, original version of this content lives at this URL." Pointing every variant URL's canonical at the clean, base product URL is the standard way to tell Google that all those variants are the same product, just filtered differently.

Without canonical tags on variant URLs, Google may index hundreds or thousands of near-duplicate pages for a single product. This splits your page's authority (link equity) across all those URLs instead of concentrating it on one, directly weakening your product page's ability to rank. Google may also choose a variant URL as the canonical itself — one that may disappear when stock runs out — causing rankings to drop unpredictably. Crawl budget is wasted re-crawling redundant variants instead of discovering new or updated pages. Fixing this consolidates all ranking signals on your main product page, typically improving organic visibility and protecting you against ranking volatility as variants come and go.

See the complete Seo variant urls not canonicalized guide for every platform and the full background.

Not sure if your WooCommerce store has this?

Run a free SEOLZ scan — we’ll find seo variant urls not canonicalized and every other issue across your whole site.

Scan my site free

Fix seo variant urls not canonicalized on another platform