Shopify’s default URL structure
Let’s begin with the Shopify native URL structure and its limitations.
Product pages
Your product URLs will appear in the box as a subdirectory of your collection (category).
If you have a product with the handle fluffy-pink-socks
and a collection with the handle socks
, then you’d have:/collections/socks/products/fluffy-pink-socks
It would appear so, at least. A closer inspection reveals the true URLs:/products/fluffy-pink-socks
Shopify chooses to use the shorter version by default in order to allow breadcrumb functionality. However, this can be corrected by a simple code change.
Start in your Shopify dashboard by going to Online Store > Themes > Customize > Theme Actions > Edit Code > Snippets > product-grid-item.liquid:
Next, remove the text “within: collection”.
Click Save to fix all links. Be careful not to delete all instances. Sometimes your theme might have multiple links, or a slightly different structure.
This 5 minute fix will make your product URLs more common for eCommerce. This is something I highly recommend.
Collection Pages
Collection pages, i.e. Product categories.
There are 2 main URL issues with collection pages:
- These
/collections/
must be included in the URL - They do not allow sub-directories, e.g.
/chairs/office/leather
It also depends on how Shopify was built. There is no admin functionality to create a child or parent collection in order to begin building this type URL structure.
In most cases, the solution is to change from a subdirectory structure into a flat URL structure. /chairs/office/leather
would become /leather-office-chairs
.
/collections/
cannot be removed from the URL.
Blog Pages / Posts
Shopify blogs often have strange URL structures, especially if the blog is called “blog”.
This brings us to the URL for our blog:example.com/blogs/blog
Blog posts will then be found under:example.com/blogs/blog/my-example-post
This is a very ugly, but it’s also a strange way to migrate from another platform.
It’s important to know that Shopify has a built-in blogging platform. You can have multiple blogs with Shopify.
/blogs/faq
/blogs/news
/blogs/guides
They all can be found on one website and act almost like categories in a traditional blog. This has the downside that you can’t navigate to them all without opening their full URL. To see a list, open /blogs/
.
I suggest that you think about the blogs you intend to create and how they will be reflected in your URL structure.
Shopify stores tend to choose “news” because it keeps things simple. /blogs/news
and /blogs/news/new-post
.
There is no customization available for this blog other than the handle, i.e. news
as shown in the previous example.
Other pages
You can find other pages under /pages/name of-page
.
This is yet again not customizable. /pages/
. It’s also not a bad thing.
This can spell doom for SEO
If we had to give some general SEO recommendations for eCommerce URLs, it would be:
- Keep URLs as short as possible
- Include the main keyword
- Make your directory easy to use
- Don’t repeat words
Shopify can generally tick these boxes with some effort and a proper directory structure.
While it’s possible to create a collection under /collections/leather-office-chairs
, if we also have a number of other office chair materials, and a number of other chair types, it makes sense to have all these organised.
/chairs/
-List of all types of chairs/chairs/office/
– A list of all office chairs. Use filters to narrow your search/chairs/office/leather
– List of all leather office chairs
Each of these could be customized to rank for SEO purposes as they all likely have high search volumes.
It is also very easy to see the relationships between these pages. Leather is the child office, i.e. This is a subcategory and office is the children of chairs.
Is it important?
Not particularly. It’s up to you to make the most of what you have.
- In the URL, include the keyword/full depth.
/leather-office-chairs
- Each of them can be created as separate collections
- To set these products, use Shopify product tag or something similar.
These won’t be integrated in the faceted navigation by default, so you will need to manually link them from collections descriptions and menus.
How to modify the URL structure of Shopify stores
What are your options if you want to modify the URL structure for your store?
- Use product tags
- Standard pages can be customized with custom functionality
Although I don’t recommend either of these options, it adds too many complexity to little benefit. However, they are both practical solutions that I have seen in real life. Let me explain.
Use product tags
Product tags are an option if you only need one directory/folder, and you are willing to do custom development.
This isn’t ideal as it’s only one additional folder, ideally you would want /mens/t-shirts/black
, but you could say it’s better than nothing..
But there is a problem:
These tag pages cannot be customized for search engines or users without custom development.
However, some stores use it. Horizn Studios is one example.
https://horizn-studios.com/en/collections/luggage/cabin/
This product tag page acts exactly like a collection page. Although it works, the store only has limited functionality and products. However, I would not recommend it in all cases.
Standard pages can be customized with custom functionality
It is not something I would recommend, except in very rare circumstances. However, it is possible to create custom solutions within Shopify’s existing constraints.
However, you are limited to the above-described default URL structures.
Emulsion uses a page for their products, instead of relying on collection.
https://emulsion.co.uk/pages/our-products
To change the category, they also use a URL variable.
https://emulsion.co.uk/pages/our-products?selected=face
Although I don’t know why they do it, I would recommend it.
Another example is iSmash
https://www.ismash.com/collections/iphone-12-pro-max-repairs
You can book your repair by clicking “Book Repair”. There are no product pages.
Although this is probably not necessary or even worthwhile for most stores, a developer may be able to help if you are really determined.
Tips to migrate from another platform
You have a huge task ahead of you if you are migrating from an existing platform. I would recommend that you hire an SEO agency to help you.
Here are some alternatives if that is not possible:
Modifying URLs
You will eventually need to modify URLs.
Perhaps your products are not currently available under the root domain, e.g. /product-name/ Or your platform may use a different folder to store categories, e.g. WooCommerce uses and /product-category/
. You might even have query URLs such as /?material=cotton
.
Although it is best to avoid changing URLs, this is a downside to changing platforms. If done correctly, it’s unlikely to cause traffic loss.
First, crawl your website using a tool such as SiteBulb or Screaming Frog. Once you have a list of pages, plan to create replacements on Shopify.
These will usually be separate collections in Shopify, so rather than /chairs/gaming/leather
it would be one collection for chairs, another for gaming chairs, and another for leather chairs.
Redirect URL structures that are no longer in use
After you have created all the replacement pages, you will need to create redirects within the Shopify Redirects Section from the old structure to your new one.
This will ensure that users who visited the old structure are redirected to the correct page and search engines.
This should be done in a spreadsheet. Then, import the redirects. It saves time.
Old pages can be deleted or removed
You can delete pages by redirecting them to the closest page.
Or if there isn’t an equivalent filter, for example, if your page is /bed/sheets?material=cotton
(as a filter), you could either create a collection named /collections/cotton-bed-sheets
or redirect them directly to the bed-sheets
collection.
It takes some nuance to determine the best way to do things. However, the simplest version is to redirect back to the original or most relevant page.
Most Frequently Asked Questions
These are some common questions about Shopify URLs.
Is it possible to remove /collections/ category pages?
No. It’s possible to replace this function with /pages/
, but that doesn’t make any sense. This cannot be removed from URLs.
Is it possible to remove /products/from product pages?
This is unfortunately not also possible.
Are sub-directories and sub-folders possible for international shops?
Kinda. We recommend that unique stores be set up under subdomains (e.g. fr.example.com
, but this is possible for at least some languages. It’s possible to set up subdirectories like /fr/
in an app such as Langshop for French language.
This applies to languages, and not international stores. You may need separate US and UK shops, for example, in cases where this would be counterproductive.
Which approach is best for international store URLs
Subdomains (e.g. uk.example.com
) and top-level domains (e.g. example.fr
). For SEO, you can configure this with Hreflang tags.
How to Change Myshopify URL?
By default, your primary domain, known as your .http://myshopify.com URL, looks like your-store-name.myshopify.com. Your.myshopify.com URL can be used to log in to your store or identify your account when you contact customer support.
You can’t change your .http://myshopify.com URL, but you can buy a custom domain name through Shopify or from any third-party domain registrar, which you can then make your primary domain.