TL;DR
When a Shopify product lives in multiple collections, Shopify generates a separate indexable URL for each one. Google can crawl all of them, find identical content, and split your ranking signals across competing pages instead of crediting one authoritative URL. The fix involves auditing canonical tags, removing conflicting app-generated canonicals, and cleaning up internal links - before this silently buries products that should be ranking on page one.
The Problem in Plain Terms
Add a product to three Shopify collections and Shopify quietly creates three separate, fully indexable URLs:
/collections/skincare/products/vitamin-c-serum/collections/bestsellers/products/vitamin-c-serum/collections/gifts-under-50/products/vitamin-c-serum
Each URL serves the same title tag, the same meta description, the same copy, the same images. Google crawls all three, sees duplicate content, and instead of consolidating ranking authority onto one strong product page, it splits whatever signals that page has earned across all three versions - and often ranks none of them well.
This affects nearly every Shopify store. If your products live in more than one collection (and they almost certainly do), this is worth auditing now.
Why This Happens by Design
Shopify's collection-path URL structure is intentional - it exists to support breadcrumb navigation and keep category paths logical for customers. The problem is that Shopify does not block those collection-path URLs from being indexed. So Google can technically discover and index five separate product URLs if your product belongs to five collections. Each one competes with the others. Each one dilutes the authority that should be concentrated on a single, clean product URL.
What Canonical Tags Are Supposed to Fix
The canonical tag - a <link rel="canonical"> element in the page <head> - tells Google which version of a URL is the authoritative one. For Shopify product pages, the canonical should always point to the root product path:
/products/vitamin-c-serum
Not the collection path. When this is set correctly, Google ignores the collection-based duplicates and consolidates backlinks, engagement data, and crawl attention onto that single canonical URL. The duplicate URLs still work for navigation - they just stop competing for rankings.
Shopify does set canonical tags automatically. In a clean, default store, they typically point to the correct /products/ path. The issue is that "clean and default" rarely describes a live production store.
Three Ways Canonical Handling Breaks Down
1. Third-party apps overriding canonical tags
Review apps, loyalty tools, filter navigation plugins, and product customization apps all modify page output. Some rewrite canonical tags incorrectly. Others inject a second <link rel="canonical"> element that conflicts with Shopify's own output. When Google finds two canonical tags pointing to different URLs on the same page, it either ignores both or makes its own call - and that call may not favor your preferred URL.
2. Collection-path URLs getting indexed directly
Even with correct canonicals in place, collection-path product URLs get indexed when Google discovers them through a sitemap, a backlink, or an internal link pointing directly to the collection-path version. If a blog post links to /collections/bestsellers/products/vitamin-c-serum instead of /products/vitamin-c-serum, you have sent link equity to a non-canonical URL - and some of that equity stays split regardless of what the canonical tag says.
3. Filter parameters creating additional duplicates
Faceted navigation generates URLs like /collections/skincare?sort_by=price-ascending or /collections/skincare?filter.p.m.material=organic. These get crawled and indexed regularly, further diluting crawl budget and creating thin content issues beyond the product page level.
How to Audit This on Your Store
Step 1 - Google Search Console
Open the URL Inspection tool and test a product URL using its collection path (e.g., yourstore.com/collections/bestsellers/products/vitamin-c-serum). If Google has indexed it rather than treating it as a duplicate, your canonical signal is not working. Also check the Coverage report for indexed URLs that contain /collections/ followed by /products/ - those should not appear as independently indexed pages.
Step 2 - Inspect the canonical tag directly
Use browser View Source or an extension like SEO Meta in 1 Click. The <link rel="canonical"> on any collection-path product URL should point to /products/your-product-handle. One tag, correct URL. If it self-canonicalizes to the collection path, or if two canonical tags are present, that is a confirmed problem.
Step 3 - Crawl the full site
Screaming Frog can flag pages with multiple canonical tags, canonicals pointing to unexpected URLs, and pages indexed despite having a canonical pointing elsewhere. This gives you a site-wide picture fast.
How to Fix It
Verify your theme's canonical output
In theme.liquid, check the <head> section for the canonical tag. Most Shopify themes output the root /products/ path via Liquid. Customized or older themes sometimes do not - confirm before assuming.
Remove conflicting app-generated canonicals
Review which installed apps modify <head> output. Contact developers if unclear. Some apps include their own canonical tag logic, which is only helpful if it does not conflict with Shopify's output. One canonical tag per page, full stop.
Fix internal links pointing to collection-path product URLs
Audit blog posts, homepage links, and navigation elements. Every internal link to a collection-path product URL reinforces the wrong version. Link to /products/ paths instead. This is easy to overlook because collection-path links are functional - they just quietly undermine SEO.
Handle filter parameters deliberately
If a filtered URL like /collections/mens-sweaters?color=blue captures real organic search volume and represents meaningfully distinct content, a self-referencing canonical is appropriate. If it is purely navigational with no standalone search demand, canonicalize it back to the base collection page.
What to Expect After Fixing It
Canonical consolidation takes time. After corrections go live, Google needs to re-crawl affected pages and reprocess the signals - typically two to four weeks before indexation changes show up in Search Console. Collection-path product URLs should drop out of the indexed pages report, and the canonical /products/ URLs should begin accumulating the authority that was previously fragmented.
For product pages already attracting some organic traffic, this consolidation often produces measurable ranking improvements - not from new content or new backlinks, but from stopping the authority you already built from being divided across URLs that should never have been competing.
If you want a technical SEO audit done for your Shopify store - canonical tags, crawl issues, indexation problems, and beyond - New Seas works specifically with ecommerce brands on exactly this. Visit newseas.co to see how they can help.












