Moz Q&A is closed.
After more than 13 years, and tens of thousands of questions, Moz Q&A closed on 12th December 2024. Whilst we’re not completely removing the content - many posts will still be possible to view - we have locked both new posts and new replies. More details here.
How (or if) to apply re canonical tags to Shopify?
-
Anyone familiar with Shopify will understand the problems of their directory structure. Every time you add a product to a 'collection' it essentially creates a duplicate. For example...
- https://www.domain.com/products/product-slim-regular-bikini
may also appear as:
- https://www.domain.com/collections/all/products/product-slim-regular-bikini
- https://www.domain.com/collections/new-arrivals/products/product-slim-regular-bikini
- https://www.domain.com/collections/bikinis/products/product-slim-regular-bikini
- etc, etc
It's not uncommon to have up to six duplicates of each product.
So my question is twofold:
- Firstly, should I worry about this from an SEO point of view? I understand the desire to minimise potential duplicate content issues and also in focussing the 'juice' on just one page per product. But I also planned on trying to build the authority of the collection pages. If I request Google not to index the product pages which link off the collections, does this not devalue these collections pages?
- Secondly, I understand the correct way to fix these is using 'rel canonical' tags, but I'm not clear about HOW to actually do this. Shopify support has not been very helpful. They have provided two different instructions, so just added to the confusion (see below).
Shopify instruction #1: Add the following to the theme.liquid file...
<title><br />{{ page_title }}{% if current_tags %} – tagged "{{ current_tags | join: ', ' }}"{% endif %}{% if current_page != 1 %} – Page {{ current_page }}{% endif %}{% unless page_title contains shop.name %} – {{ shop.name }}{% endunless %}<br /></title>
{% if page_description %}{% endif %}
Shopify instruction #2: Add the following to each individual product page...
So, can anyone help clarify:
- The best strategic approach to this inherent SEO issue with Shopify (besides moving to another platform!)? and
- If 'rel canonical' tags is the way to go, exactly where and how to apply them?
Regards,
Murray
-
Howdy,
I assume that in your case it doesn't happen automatically. In this case you'll need to use an IF statements in the head/header file. Basically, it would be this:
IF current page url = url you want THEN display canonical tag with wanted url
Repeat that for all needed url and you are good.
If there are many of those, CASE might be better.
-
Good answer!
I have a question! If I just wanna add one or two canoncial tags on specific page(s), how I can do it on shopify coding?
-
How can I fix this problem with Shopify? Shopify does not seem like it is a problem. One of their solutions is to no index the other pages, but I want all the google juice and google love going to the main page.
Current Setup:
https://wrestlinggear.com/collections/wrestling-shoes rel canonical - https://wrestlinggear.com/collections/wrestling-shoes
https://wrestlinggear.com/collections/wrestling-shoes/accessory rel - https://wrestlinggear.com/collections/wrestling-shoes/accessory
https://wrestlinggear.com/collections/wrestling-shoes/adidas rel canonical - https://wrestlinggear.com/collections/wrestling-shoes/adidas
I want it like this:
https://wrestlinggear.com/collections/wrestling-shoes - rel canonical - https://wrestlinggear.com/collections/wrestling-shoes
https://wrestlinggear.com/collections/wrestling-shoes/accessory - rel canonical - https://wrestlinggear.com/collections/wrestling-shoes
https://wrestlinggear.com/collections/wrestling-shoes/adidas- rel canonical - https://wrestlinggear.com/collections/wrestling-shoes
Of course there are a lot more pages like this that I would like to rel cannoical back to the main collections pages.
-
Use tools like SEO Frog
-
Well, if it automatically doesn't work, then you gotta do it manually, right

-
I don't believe this is the answer. I have several other clients on Shopify who do not have goals for macro conversions, but we are seeing conversion data in GA.
Besides, I was always under the impression that if you have ecommerce enabled, it's better not to use goals for transactions as it might duplicate. Is this not the case?
-
I know how to check whether the code is there. But how do you check whether or not specific pages have been indexed by Google?
As far as I can see Google Search Console only reports on the number of pages indexed, not which pages have been indexed. Is there any way to get an actual list of indexed pages?
I know running a site: query will show up all the results, but I just want a list (eg CSV) of the URLs indexed.
-
Yes, I am. Here is a link with answers to your troubles: https://help.shopify.com/manual/reports-and-analytics/google-analytics/google-analytics-goals-and-funnels
-
Yes, it is supposed to. Try it, check it - it's pretty easy

-
Are you familiar with Shopify?
I have another issue where GA tracking code is not firing on the Thank_You page. I have double checked GA config with the GA implementation twice! But the problem seems to be with Shopify, since this page sites on their site (checkout.shopify.com) and they seem unable to fix it.
-
Thanks Dmitrii,
So will that one line of code fix the issue for ALL products and ALL collections?
-
Howdy.
Shopify does canonicals automatically. Basically all the collections products urls will have canonical to product url. Like this: https://www.domain.com/collections/all/products/product-slim-regular-bikini will have canonical to
https://www.domain.com/products/product-slim-regular-bikiniIf it doesn't happen for you automatically, simply insert this:
In the main theme.liquid file in the head section.
Got a burning SEO question?
Subscribe to Moz Pro to gain full access to Q&A, answer questions, and ask your own.
Browse Questions
Explore more categories
-
Moz Tools
Chat with the community about the Moz tools.
-
SEO Tactics
Discuss the SEO process with fellow marketers
-
Community
Discuss industry events, jobs, and news!
-
Digital Marketing
Chat about tactics outside of SEO
-
Research & Trends
Dive into research and trends in the search industry.
-
Support
Connect on product support and feature requests.
Related Questions
-
Hreflang and canonical tag for new country specific website - different base domain
I have a little different situation compared to most other questions which asks for hreflang and canonical tags for country specific version of websites. This is an SEO related question and I was hoping to get some insight on your recommendations. We have an existing Australian website - say - ausnight.com.au now we want to launch a UK version of this website - the domain is - uknight.co.uk please note, we are not only changing from .com.au to .co.uk.... but the base domain name as well changed - from ausnight to uknight as you can understand, the audience for both websites is different. Both websites has most pages same with same contents.... the questions I have is - Should we put canonical tag on the new website pages? If we don't put canon tag on new website pages, what is the impact on the SEO ranking of current website? I believe we need to put hreflang tag on both websites to tell google that we have another language version (en-au vs en-gb) of the same page. Is this correct?
Intermediate & Advanced SEO | | TinoSharp0 -
Is single H1 tag still best practice?
Hi Guys, Is having a single h1 tag still best practice for SEO? Guessing multiple h1 tags dilute the value of the tag and keywords within the tag. Thoughts? Cheers.
Intermediate & Advanced SEO | | kayl870 -
Ranking dropped after changing title tag
I recently changed my company's site homepage title tag to make it start with our target keyword. The page was originally at page #7 or #8 and dropped to page #17 directly after I changed the page title. Is this normal? Is it's a temporary drop or should I change it back to the previous title.
Intermediate & Advanced SEO | | ForumOne0 -
Google Ignoring Canonical Tag for Hundreds of Sites
Bazaar Voice provides a pretty easy-to-use product review solution for websites (especially sites on Magento): https://www.magentocommerce.com/magento-connect/bazaarvoice-conversations-1.html If your product has over a certain number of reviews/questions, the plugin cuts off the number of reviews/questions that appear on the page. To see the reviews/questions that are cut off, you have to click the plugin's next or back function. The next/back buttons' URLs have a parameter of "bvstate....." I have noticed Google is indexing this "bvstate..." URL for hundreds of sites, even with the proper rel canonical tag in place. Here is an example with Microsoft: http://webcache.googleusercontent.com/search?q=cache:zcxT7MRHHREJ:www.microsoftstore.com/store/msusa/en_US/pdp/Surface-Book/productID.325716000%3Fbvstate%3Dpg:8/ct:r+&cd=2&hl=en&ct=clnk&gl=us My website is seeing hundreds of these "bvstate" urls being indexed even though we have a proper rel canonical tag in place. It seems that Google is ignoring the canonical tag. In Webmaster Console, the main source of my duplicate titles/metas in the HTML improvements section is the "bvstate" URLs. I don't necessarily want to block "bvstate" in the robots.txt as it will prohibit Google from seeing the reviews that were cutoff. Same response for prohibiting Google from crawling "bvstate" in Paramters section of Webmaster Console. Should I just keep my fingers crossed that Google honors the rel canonical tag? Home Depot is another site that has this same issue: http://webcache.googleusercontent.com/search?q=cache:k0MBLFcu2PoJ:www.homedepot.com/p/DUROCK-Next-Gen-1-2-in-x-3-ft-x-5-ft-Cement-Board-172965/202263276%23!bvstate%3Dct:r/pg:2/st:p/id:202263276+&cd=1&hl=en&ct=clnk&gl=us
Intermediate & Advanced SEO | | redgatst1 -
Attribution of port number to canonical links...ok?
Hi all A query has recently been raised internally with regard to the use of canonical links. Due to CMS limitations with a client who's CMS is managed by a third party agency, canonical links are currently output with the port number attributed, e.g. example.com/page:80 ...as opposed to the correct absolute URL: example.com/page Note port number are not attributed to the actual page URLs. We have been advised that this canonical link functionality cannot be amended at present. My personal interpretation of canonical link requirements is that such a link should exactly match the absolute URL of the intended destination page, my query is does this extend to the attribution of port number to URLs. Is the likely impact of the inclusion of such potentially incorrect URLs likely to be the same as purely incorrect canonical links. Thanks
Intermediate & Advanced SEO | | 26ryan0 -
Does Google Read URL's if they include a # tag? Re: SEO Value of Clean Url's
An ECWID rep stated in regards to an inquiry about how the ECWID url's are not customizable, that "an important thing is that it doesn't matter what these URLs look like, because search engines don't read anything after that # in URLs. " Example http://www.runningboards4less.com/general-motors#!/Classic-Pro-Series-Extruded-2/p/28043025/category=6593891 Basically all of this: #!/Classic-Pro-Series-Extruded-2/p/28043025/category=6593891 That is a snippet out of a conversation where ECWID said that dirty urls don't matter beyond a hashtag... Is that true? I haven't found any rule that Google or other search engines (Google is really the most important) don't index, read, or place value on the part of the url after a # tag.
Intermediate & Advanced SEO | | Atlanta-SMO0 -
Meta NoIndex tag and Robots Disallow
Hi all, I hope you can spend some time to answer my first of a few questions 🙂 We are running a Magento site - layered/faceted navigation nightmare has created thousands of duplicate URLS! Anyway, during my process to tackle the issue, I disallowed in Robots.txt anything in the querystring that was not a p (allowed this for pagination). After checking some pages in Google, I did a site:www.mydomain.com/specificpage.html and a few duplicates came up along with the original with
Intermediate & Advanced SEO | | bjs2010
"There is no information about this page because it is blocked by robots.txt" So I had added in Meta Noindex, follow on all these duplicates also but I guess it wasnt being read because of Robots.txt. So coming to my question. Did robots.txt block access to these pages? If so, were these already in the index and after disallowing it with robots, Googlebot could not read Meta No index? Does Meta Noindex Follow on pages actually help Googlebot decide to remove these pages from index? I thought Robots would stop and prevent indexation? But I've read this:
"Noindex is a funny thing, it actually doesn’t mean “You can’t index this”, it means “You can’t show this in search results”. Robots.txt disallow means “You can’t index this” but it doesn’t mean “You can’t show it in the search results”. I'm a bit confused about how to use these in both preventing duplicate content in the first place and then helping to address dupe content once it's already in the index. Thanks! B0 -
Canonical & noindex? Use together
For duplicate pages created by the "print" function, seomoz says its better to use noindex (http://www.seomoz.org/blog/complete-guide-to-rel-canonical-how-to-and-why-not) and JohnMu says its better to use canonical http://www.google.com/support/forum/p/Webmasters/thread?tid=6c18b666a552585d&hl=en What do you think?
Intermediate & Advanced SEO | | nicole.healthline1