30-second summary:
- Shopify can help improve the product URL discovery by reducing reliance on canonical tag
- The performance of these pages will depend on how you organize your Shopify products.
- Building relevancy requires shifting from canonical tags towards rich internal anchor text.
Shopify’s unstoppable rise is there anything that can stop it? In 2012, Joomla, Magento, WordPress dominated the ecommerce landscape. Fast forward 10 years, and many people in the industry see Shopify now as the most prominent ecommerce platform. The others have fallen from being leaders to laggards.
Shopify’s popularity can be attributed to many factors, but the most important is Shopify’s technical accessibility. It can be difficult to understand the basics of a new Magento installation or how Joomla works. Sometimes, technical knowledge is required. If you don’t have it, you can spend additional resources to outsource the work to someone who does.
Shopify recognized that simplicity and a “it just works” philosophy would make it easy for entrepreneurs to set up their websites quickly without having to have a degree in computer science. Shopify is user-friendly but there are technical and SEO challenges to overcome if your site wants to rank high in the SERPs.
This article will focus on a major “out-of-the-box” SEO problem that can limit the relevancy of Shopify product pages and cause significant site bloat. I will also discuss four possible solutions to the problem that could help you maximize your product pages potential. Let’s get started.
Inefficiency comes at a high price
We often talk with clients about how Google can crawl their sites as efficiently as possible. This is how we explain the cost to Google for crawling the web. Google incurs a physical cost every time it visits a website on the Internet. This includes the cost of electricity, water, hardware and software as well as all other resources required to access the page. This cost may not be as high as a penny per URL but the number of URLs Google crawls each day makes it likely to be quite significant.
If you serve Google pages that are duplicated or irrelevant, you are wasting your resources. Google made it a point to mention this in their article about managing the crawl budget.
Googlebot will attempt to crawl every URL it can find on your site without any guidance from you. This can cause a lot of Google crawling time to be wasted if there are many duplicate URLs or if you don’t want them crawled. This is the one factor you can control to the maximum em>
This is the key message: You can control how much Google crawls your site. You can reduce the amount of time Google spends crawling your site. Google will therefore spend more time crawling URLs with true value and detecting changes to URLs. This will allow Google to discover new pages faster.
Canonicals should be used as a temporary fix, not as the final solution
When there are multiple duplicate pages, the canonical tag allows you to identify which page should be considered the correct one for Google to index.
Although they can be useful in the short-term, the presence of a canonical tags can indicate structural problems within a website and can affect crawl efficiency. Google will still need to crawl duplicates that include the canonical tags to determine if you have chosen a preferred URL to index.
Instead of using a temporary solution like a canonical tags, you should take steps to correct the structural problem. This will negate the need for a canonical label. This will result in a greater crawl efficiency.
What does this have do with Shopify product pages
Simply put, Shopify product URLs rely on canonical tag discovery to find their products. Let’s take a look at two of the main reasons for this.
Multiple collections of products
Below is a URL to a product page on Shopify.
NAOTA MEN'S FUNNEL NECK QUILTED PUFFER JACKET | NAVY
The URL also includes the collection that the product is located. Shopify will create multiple product URLs if the product is part of multiple collections. These are duplicates so Shopify uses canonical tags. These canonical tags point at the preferred product URL. It does not contain any collection.
Google currently has four collections for the product highlighted above. This means that Google can crawl five product URLs to find the one product it needs to index. However, there is another problem that can increase this number: variants of products.
Variants of products
Shopify can make a product variant any product attribute. This can be any attribute a product might have, such as color, size, weight or any other. Shopify lets users create variants of products. As an example, the product URL for “size” is shown below.
Shopify will add a parameter called “variant” to the product URL. This parameter contains an ID that refers to the selected variant. Below is an example URL for a product with the selected medium variant.
NAOTA MEN'S FUNNEL NECK QUILTED PUFFER JACKET | NAVY
This is a duplicate URL, and is handled by a canonical tags. This can have a negative impact on crawl efficiency if we start to count the URLs that this product relies on canonical tags.
This product is in four different collections, so there are 20 product URLs that depend on a canonical tags. Google will need to crawl 21 product URLs in order to find the one product URL that requires indexing.
Index 600 pages with 10,000 URLs
It’s easy for you to see how much this number can grow when you consider the entire website’s product list. Google will need to crawl more than 10,000 product URLs every day to index 600 products on our website.
What can you do to fix Shopify’s problem?
We need to address two issues: the problem of products appearing in multiple collections and the issue regarding product variants. Both problems can be solved, but it will take compromises in certain areas.
Multiple collections of products: The fix
This works by removing links from product URLs that have the collection name in them. This is because of the collection URL, specifically the theme file that powers the collection URLs. On Shopify, this file is called product-grid-item.liquid.
This file can be accessed via the following route in your Shopify admin.
Online Shop > Themes>> Customize > Theme Actions> Edit Code> Snippets
This file contains HTML hyperlinks which refer to product URLs that contain the collection name.
The collection name is pulled into the product URL by the “within” element. This element is removed to ensure that the collection name does not appear in the product URL.
Before you dive in, here are some things to keep in mind.
- Before making any changes to your website, it is a good idea to consult your web developers.
- You may require the “within” collection functionality in apps you use. It is worth checking with app support to see if this can be altered.
- This changes affects the breadcrumb in product URLs. This could be problematic. I would suggest manually building breadcrumbs using META field with a dedicated META field app.
- Manual links using this format will need to be changed.
- You may find other templates files that contain the “within: Collection” tag. It is worth talking to your development team about these.
Product variants: The solution (or is it?)
The solution to product variations is complicated and depends on the amount of SEO value that you get from your existing product versions. It is important to determine the market potential and search volume for product variant keywords.
If, for example, our Shopify store sells Ralph Lauren Polo shirts, then my variants would be color and size. We can quickly search for the product type and these variants to see there is a lot of search volume. Therefore, it will be crucial that my variants are optimized and indexable.
Option 1: Optimize?variant URLs
If you think there is potential for search volume across multiple product variants, this first option may be viable. This solution is based on logic built into your theme code. When a variant is selected, it is added to the page title tag with the variant name and, where possible, the product description.
The theme configuration will determine the change. It is best to consult your web development team before making any changes. You can find more information on this in the Shopify community thread.
https://community.shopify.com/c/shopify-design/different-product-titles-for-different-variants-for-the-same/td-p/620113
This solution will require you to remove the current canonical tag from?variant URLs. This approach has one drawback: you might need to implement it sitewide across product variants. However, not all variants will have the same search volume.
Option 2: Optimize the main product URL to allow variants
This option may be for you if you are looking to have more control over the variants in your product sets. You can optimize the main product URL to variants by including variant keywords within the product description and META information. This will increase your visibility for product variant keywords.
This is a problem because product URLs can become too optimized and not as relevant to users as dedicated, optimized product variant URLs.
Option 3: Allow?variant parameter
If your product variants are low or not searchable, disallowing the robots.txt parameter might be the best choice. This will prevent Google from crawling URLs containing?variant keywords, making crawl activity more efficient.
Option 4: Each variant can have individual products
If you have product variants that are searchable, creating individual products for each variant may be an option. Gym Shark has done this with color. Below is a product that comes in many colors. Each color has its own URL. It does not depend on variants. :
https://www.gymshark.com/products/gymshark-element-baselayer-t-shirt-black-aw21
This approach allows for greater control over META data as well as optimized content. It makes it easier to create deeper relevance for product variants. There are more products within the CMS to manage.
Shopify and SEO issues: Final thoughts
Shopify’s rapid rise is due to its “it just works” philosophy, which makes it so easy to use. The platform does have some SEO issues, but that doesn’t mean it is perfect.
SEOs who use the platform can face additional headaches due to Google’s Core Web Vitals. There are usually workarounds available for those who are willing and able to put in the effort. Learn more about these options in our ultimate guide to Shopify’s SEO (2022).
The Shopify team is showing signs of being more open to the needs and suggestions of the SEO community. To improve their product, the team has taken in feedback from SEOs. This includes allowing users to modify robots.txt files and allowing sub-folder international structures. We can only hope that solutions for canonicals, and other issues, will soon be available.
Shopify’s unstoppable rise is there anything that can stop it? In 2012, Joomla, Magento, and WordPress dominated the e-commerce landscape. Fast forward 10 years and Shopify is now the dominant e-commerce platform. The others have fallen behind.
Shopify’s popularity can be attributed to many factors, but the most important is Shopify’s technical accessibility. It can be difficult to understand how Joomla works, or to install Magento from scratch. Sometimes, technical knowledge is required. If you don’t have it, you can spend additional resources to outsource the work to someone who does.
Shopify recognized that simplicity and an “it just work” philosophy would make it easy for everyday entrepreneurs to set up their websites quickly. This would be possible without the need to have a computer science degree or large budgets to keep their site online. Shopify is user-friendly, but there are technical and SEO challenges to overcome if your site wants to rank high in the SERPs.
This article will focus on a major “out-of-the-box” SEO problem that can limit the relevancy of Shopify product pages and cause significant site bloat. I will also discuss four possible solutions to the problem that could help you maximize your product pages potential. Let’s get started.
Inefficiency comes at a high price
We often talk with clients about how Google can crawl their sites as efficiently as possible. This is how we explain the cost to Google for crawling the web. Google incurs a physical cost every time it visits a website on the Internet. This includes the cost of electricity, water, and other resources required to access that page. This cost may not be as high as a penny per URL but the number of URLs Google crawls each day makes it likely to be quite significant.
If you serve Google pages that are duplicated or irrelevant, you are wasting your resources. Google has made it a point to state this in their article about managing the crawl budget.
Googlebot will attempt to crawl every URL it can find on your site without any guidance from you. This can cause a lot of Google crawling time to be wasted if there are many duplicate URLs or if you don’t want them crawled. This is the one factor you can control to the maximum em>
This is the key message: You can control how much Google crawls your site. You can reduce the amount of time Google wastes crawling your site. Google will spend more time crawling URLs with true value. This allows Google to pick up changes to URLs faster and discover new pages much quicker.
Canonicals should be used as a temporary fix and not the final solution
When there are multiple duplicate pages, the canonical tag allows you to identify which page should be considered the correct one for Google to index.
Although they can be useful in the short-term, the presence of a canonical tags can indicate structural problems within a website and can affect crawl efficiency. Google will still need to crawl duplicates that include the canonical tags to determine if you have chosen a preferred URL to index.
Instead of using a canonical label as a permanent solution, you should take steps to correct the structural problem and negate the need for a canonical. This will result in a greater crawl efficiency.
What does this have do with Shopify product pages
Simply put, Shopify product URLs rely on canonical tag discovery to find their products. Let’s take a look at two of the main reasons for this.
Multiple collections of products
Below is a URL to a product page on Shopify.
NAOTA MEN'S FUNNEL NECK QUILTED PUFFER JACKET | NAVY
The URL will show you the collection that this product is located within. Shopify will create multiple product URLs if the product is part of multiple collections. These are duplicates so Shopify uses canonical tags. These canonical tags point at the preferred product URL. It does not contain any collection.
Google currently has four collections for the product highlighted above. This means that Google can crawl five product URLs to find the one product it needs to index. However, there is another problem that can increase this number: variants of products.
Variants of products
Shopify can make a product variant. This can be any attribute that a product might have, such as color, size, or weight. Shopify allows users to create variants of products. This allows them to choose attributes from the product page. As an example, the product URL for “size” is shown below.
Shopify will add a parameter called “variant” to the product URL. This parameter contains an ID that refers to the selected variant. Below is an example URL for a product with the selected medium variant.
NAOTA MEN'S FUNNEL NECK QUILTED PUFFER JACKET | NAVY
This is a duplicate URL, and is handled by a canonical tags. You can see how this can impact crawl efficiency when we calculate how many URLs each product has that rely upon canonical tags.
This product is in four different collections, so there are 20 product URLs that depend on a canonical tags. Google will need to crawl 21 product URLs in order to find the one product URL that requires indexing.
Index 600 pages with 10,000 URLs
It’s easy for you to see how much this number can grow when you consider the entire website’s product list. Google will need to crawl more than 10,000 product URLs every day to index 600 products on our website.
What can you do to fix Shopify’s problem?
We need to address two issues: the problem of products appearing in multiple collections and the issue regarding product variants. Both problems can be solved, but it will take compromises in certain areas.
Multiple collections of products: The fix
This works by removing links from product URLs that have the collection name in them. This is because of the collection URL, specifically the theme file that powers the collection URLs. On Shopify, this file is called product-grid-item.liquid.
This file can be accessed via the following route in your Shopify admin.
Online Shop > Themes>> Customize > Theme Actions> Edit Code > Snippets
This file contains HTML hyperlinks which refer to product URLs that contain the collection name.
The collection name is pulled into the product URL by the “within” element. This element is removed to ensure that the collection name does not appear in the product URL.
Before you dive in, here are some things to keep in mind.
- Before making any changes to your website, it is a good idea to consult with your web developers.
- You may require the “within” collection functionality in apps you use. It is worth checking with app support to see if this can be altered.
- This changes affects the breadcrumb in product URLs. This could be problematic. I would suggest manually building breadcrumbs using META field with a dedicated META field app.
- Manual links using this format will need to be changed.
- You may find other templates files that contain the “within: Collection” tag. It is worth talking to your development team about these.
Product variants: The solution (or is it?)
The solution to product variations is complicated and depends on the amount of SEO value that you get from your existing product versions. It is important to determine the market potential and search volume for product variant keywords.
If, for example, our Shopify store sells Ralph Lauren Polo shirts, then my variants would be color and size. We can quickly search for the product type and these variants to see there is a lot of search volume. Therefore, it will be crucial that my variants are optimized and indexable.
Option 1: Optimize?variant URLs
If you think there is search volume potential for a large number of product variants, this first option may be viable. This solution is based on logic built into your theme code. When a variant is selected, it is added to the page title tag with the variant name and, where possible, the product description.
The theme configuration will determine the change. It is recommended to consult your web development team before making any changes. You can find more information on this in the Shopify community thread.
https://community.shopify.com/c/shopify-design/different-product-titles-for-different-variants-for-the-same/td-p/620113
This solution will require you to remove the current canonical tag from?variant URLs. This approach has one drawback: you might need to implement it sitewide across product variants. However, not all variants will have the same search volume.
Option 2: Optimize the main product URL to allow variants
This option may be for you if you are looking to have more control over the variants in your product sets. You can optimize the main product URL to variants by including variant keywords within the product description and META information. This will increase your visibility for product variant keywords.
This is a problem because product URLs can become too optimized and not as relevant to users as dedicated, optimized product variant URLs.
Option 3: Allow?variant parameter
If your product variants are low or not searchable, disabling the?variant parameter from your robots.txt may be an option. This will prevent Google from crawling URLs containing?variant keywords, making crawl activity more efficient.
Option 4: Each variant can have individual products
If you have product variants that are searchable, creating individual products for each variant may be an option. Gym Shark has done this with color. Below is a product that comes in many colors. Each color has its own URL. It does not depend on variants. :
https://www.gymshark.com/products/gymshark-element-baselayer-t-shirt-black-aw21
This approach allows for greater control over META data as well as optimized content. It makes it easier to create deeper relevance for product variants. There are more products within the CMS to manage.
Shopify and SEO issues: Final thoughts
Shopify’s rapid rise is due to its “it just works” philosophy, which makes it so easy to use. The platform does have some SEO issues, but that doesn’t mean it is perfect.
SEOs who use the platform can face additional headaches due to Google’s Core Web Vitals. There are usually workarounds available for those who are willing and able to put in the effort. Learn more about these options in our ultimate guide to Shopify’s SEO (2022).
The Shopify team is showing signs of being more open to the needs and suggestions of the SEO community. To improve their product, the team has taken in feedback from SEOs. This includes allowing users to modify robots.txt files and allowing sub-folder international structures. We can only hope that solutions for canonicals, and other issues, will soon be available.
Marc Swann, Director of Search at Glass Digital is a digital marketing agency that offers SEO, affiliate marketing and paid search. Marc is a digital marketer who has worked in the field for 12 years. He specializes in technical SEO. Glass Digital’s focus is on organic search services, and ensuring that our clients receive the best value.
Sign up for the Search Engine Watch newsletter to get insights into SEO, the search landscape and digital marketing.
Join us on LinkedIn or Twitter to continue the conversation.
Search Engine Watch’s first article, Shopify SEO: How to reduce your reliance upon canonicals and increase crawl efficiency appeared on Search Engine Watch.
Leave a Reply