How to Fix Duplicate URLs on Shopify (Step-by-Step)

2 min read

Shopify has a duplicate URL problem baked into its architecture. Every product that belongs to a collection gets a second URL — and Google sees both. Here's how to find these duplicates and fix them before they hurt your rankings.

The Shopify Duplicate URL Problem

When you add a product to a collection on Shopify, it becomes available at two URLs: - `/products/blue-shirt` (the direct URL) - `/collections/summer-sale/products/blue-shirt` (the collection path) Both URLs show identical content. If you have a product in 5 collections, that's 6 URLs for one product. Multiply that by your entire catalog and you could have thousands of duplicate pages. Google treats each URL as a separate page. Instead of one product page with strong ranking signals, you get multiple weak pages competing against each other.

How to Check for Duplicates

You can check manually by going to any product in a collection and looking at the URL bar. If it shows `/collections/something/products/...` instead of just `/products/...`, you have collection-path URLs. For a full picture, run your site through RankRipper — we detect all duplicate URL patterns including variant URLs, collection paths, and parameter pollution, and tell you exactly how many duplicates exist.

Fix 1: Verify Your Canonical Tags

The good news: most modern Shopify themes already include canonical tags that point collection-path URLs back to the direct `/products/` URL. Check by visiting a collection-path URL, viewing the page source, and searching for "canonical." The tag should point to the `/products/` version — not the `/collections/` version. If it does, Google should consolidate the duplicates correctly. If the canonical is missing or wrong, you'll need to add it to your theme's `theme.liquid` file.

Fix 2: Update Internal Links

Even with correct canonicals, you should link internally to the `/products/` URL — not the `/collections/` path. Check your navigation menus, homepage featured products, and any hardcoded links in your theme. In Liquid templates, use `{{ product.url }}` instead of building collection-relative URLs. This ensures you always link to the canonical version. Also check your sitemap at `/sitemap.xml` — it should only include `/products/` URLs, not collection paths. Shopify handles this automatically, but it's worth verifying.

Fix 3: Handle Variant URLs

Shopify also creates variant URLs like `/products/blue-shirt?variant=12345678`. These are necessary for sharing specific variants but shouldn't be indexed separately. Your canonical tag should strip the variant parameter and point to the base product URL. Most themes do this by default, but custom themes or apps might break this behavior. Check your product pages with different variants selected — the canonical tag in the source should always point to the base `/products/` URL without any query parameters.

buildRelated Fix Guides

Keep Reading

Check your store now

Scan your site for free — get copy-paste fixes in 60 seconds.

searchScan Now — It's Free