
Ok, let’s talk Shopify – and more specifically let’s talk Shopify URLs. When it comes to SEO most of what people like myself can teach is pretty universal. Not this. It’s a unique (and uniquely frustrating) feature of Shopify stores that, once edited can really help the organic visibility of your website.
And it’s all to do with product URLs.
A quick intro to Shopify URL’s
On any Shopify website you will find 3 URL types for products.
We’re going to use Hiut Denim as the example (because they’re a cool brand).
If you look around their website you can see there are:
1. Collection URLs – https://hiutdenim.co.uk/collections/mens
For Men’s jeans
2. Product URLs – https://hiutdenim.co.uk/products/organic-denim-hacka
for a specific product such as ‘the Hack’ slim jean
3. Product Collection URLs – https://hiutdenim.co.uk/collections/mens/products/organic-denim-hacka
So there’s the exact same product again – but can you see that the URL is different?
Shopify will create a unique URL for every product and another unique URL every time that product is added to a collection.
So if you have 1 product in 5 collections, that means there are 6 URLs – all for the same product. And with multiple URL’s all featuring the same product it means we have multiple SEO problems to fix.
Why is this an issue?
While what we’re looking at might seem subtle the way Shopify works means that this can really impact how Google understands your website. Product pages act as the most amazing long-tailed keywords opportunities and so we want to do everything we can to make sure they have their best possible chance of ranking but the current URL setup limits this.
The impact is felt in 3 different ways which we’ll come to later. In order to explain this though, we first need to have a quick lesson on something called canonical URLs.
Canonical URLs 101
Canonicalisation is a super technical sounding thing. It’s also really hard to say and it took me absolutely ages to wrap my head around what it is and how it works. Actually though it’s pretty simple, it just sounds complicated.
When we’re talking about URLs and Shopify there’s 3 terms we need to know:
- Canonical URL – this is the one, the only, the true URL that you want to exist for a page
- Non-canonical URL – this is an false URL. A copycat and not your Canonical URL
- Canonical Tag – this is a bit of code which labels the copycat (the non-canonical URL) as false and tells Google that the one, true URL (the canonical URL) is the right one
This is what the canonical tag on Hiut’s Hack Jean Product Collection URL is here: https://hiutdenim.co.uk/collections/mens/products/organic-denim-hacka
Think of it like a tribute band. Let’s say ABBA. If Google needs to find out which out of all the ABBA acts out there is the real one, it’s lot easier if all the tribute acts wear a sticker when they’re performing saying ‘we’re not the real ABBA. You’ll find the real ABBA over there’. Google then ignores the tribute acts and puts all of its attention towards the one true ABBA.
If we have 1 product URL and 5 product collection URL’s the canonical tag says to Google that the 5 product collection URLs are the tribute bands and our 1 product URL is the actual ABBA band. And everyone loves ABBA.
This process is known as canonicalization. And if you have a Shopify website this will already be happening.
The problems with this approach
Outside the world of SEO I’m sure nobody cares about this stuff. The product is on the website. It’s there, right? What’s the issue?
In theory, because we have this system of Non-Canonical URL’s using Canonical Tags to tell Google which URL’s are the Canonical URL’s then everything should just work fine. There would be nothing more that would need to do, right?
In theory yes, but there’s problems with this approach. 3 problems to be precise. Keeping things the way they are isn’t an ideal approach for your SEO.
Problem 1: Google only treats canonical tags as a strong signal. Not a directive.
While we’d love for Google to read our canonical tags it’s not guaranteed that it does what we want it to.
Sometimes Google will still come along, look at the worst ABBA tribute band in history and still decide that they’re actually the real ABBA. In other words canonical tags aren’t rules, just guidelines.
You can find out more about Google handles these sorts of things here.
Because the use of canonical tags isn’t 100% accurate Google can end up indexing product collection URL’s, which we don’t want, as well as ignoring our real product URLs which we also don’t want. We just want our one and only true product URL to be the URL to be indexed and rank.
To achieve this we need to send the clearest signals to Google as possible and for that we need to consolidate all of our signals onto a single URL. But with multiple product URL’s flying about with canonical tags which sometimes work and sometimes not, it’s not a reliable system for providing the right signals to Google and dilutes the signals we want to send.
If we do dilute these signals then the less chance we have for a page to be indexed and to rank which in turn means less visibility in the SERPs, so less organic traffic and fewer sales.
Problem 2: Internal links point to non-canonical URLs
Links from one page to another page on the same website are called Internal Links; and internal links in a website can really help your SEO in 2 ways:
- A link from one page to another (like a collection page to a product page, or a product page to another product page) helps add to the signals Google looks at that the page that is being linked to is the canonical page for that product, even if it’s just one of several product collection URLs. So right now the Shopify structure is adding more and more signals to Google to discover and index the non-canonical page. In other words, the wrong page.
Let’s jump back to our Hiut Denim example for a moment. If you go to one of their collection pages and hover over a product you’ll see it’s the product collection page, ie. The non-canonical page which is being linked to. If the wrong page it’s getting the value of all of those internal links then our true product URL, the canonical URL is missing out
- It also helps distribute link equity (or whatever fancy term you might like to use) from more powerful pages to less powerful product pages reducing the signals that could otherwise help them to rank
Problem 3: Other websites link to the wrong URL
If we show multiple URL’s across a website, anyone who wants to link to us might add a link to the ‘wrong’ page. Say you get a link from a product feature. To the writer your product collection URL looks like a totally normal URL. But if the same thing happens but with another publication, another editor might link to another page.
All in all it means the link signals, which are hugely valuable to help your site rank, aren’t all arriving at the same intended destination. They’re not consolidated. As a result you may end up with a weaker ranking page.
So, how do we fix this?
The good news is that we can definitely fix this. The less good news is that it requires a developer.
This may differ based on the Shopify theme you’re using but it can definitely be completed. You will need to adjust the theme’s code. Here’s the information the developer will need to make this happen.
What happens once this is fixed?
Once this is implemented you shouldn’t ever see a product collection URL again:
- Google won’t have any non-canonical URL’s to discover – so it’s more likely to find the correct canonical URL
- Internal links all point directly to the canonical URL
- Any incoming links from other websites can be added to the correct product URL
This may take weeks or even months for Google to fully process the change based on the size and complexity of your website but you can see the changes happening via the Page Indexing report in Google Search Console. Want to see this in action? I’d recommend checking out Gymshark who have implemented this. If you navigate to a collection, click a product and check out the URL you end up on, it will only ever be the main product URL.
Massive thank you to @danwht for his guide on fixing the Shopify product URL structure for SEO success Share the love