It’s the Largest eCommerce Platform in the World but “Is Shopify SEO Friendly?”
You looked at all the available eCommerce platforms, did your research, and found Shopify, the most commonly used but also seemingly perfect all in one eCommerce solution that positions itself as an affordable, easy to use eCommerce platform, includes hosting, and is Search Engine Optimization (SEO) friendly out of the box.
But is Shopify really an SEO-friendly out-of-the-box platform to help your online store get noticed or should you choose another platform altogether?
Spoiler alert: it’s not as SEO-friendly as you might think! Let’s get into why you might want to choose another platform if you want to grow your organic presence online through focusing on SEO.
There are a lot of factors to consider, and I’ve outlined the most important elements for your online store’s back end:
- Robots.txt & Sitemap.xml
- Forced URI Structure
- Product Orphaning & Internal Links
- Category Tag Pages
- The Blog
Let’s dig in!
1) Robots.txt & Sitemap.xml
The first file Google crawls – or “scans” – before even looking at the rest of your website is the Robots.txt file. This file essentially tells Google what to crawl and what not to crawl.
Another important aspect (and bare minimum) for any SEO-friendly website is a sitemap.xml file. This file is a complete map of your entire website and provides an easy way for search engines to find and discover pages on your website. This map should only contain pages you want search engines to crawl, navigate, and index.
As a website owner, you have the right to edit these files and cater them to your SEO (and business) goals to ensure you have full control over what a search engine can and can’t access on your website.
So what’s the problem?
Well, Shopify has created a custom robots.txt file & automated Sitemap.xml file that is locked essentially taking away those rights as a website owner. Although they have done a pretty good job with both files, Shopify is essentially making search engine indexing and crawling decisions you simply can’t do anything about.
While this is not a deal-breaker for everyone, it’s definitely an unnecessary SEO limitation that makes me question why?
2) Forced URI Structure
The Biggest limitation within the Shopify platform is its forced URI structure. A fully customizable (and SEO-friendly) URL structure provides search engines an easy path to navigate and find pages (or products) within your website. Search engines are lazy and don’t like guesswork, and SEO-friendly URL structure eliminates the guesswork to maximize the time crawl bots spend navigating your website. This enables search engines to efficiently navigate your website and focus crawl bandwidth on your main SEO pages (or products) you want indexed.
Now, this might not seem like the end of the world to some, but from an SEO standpoint, it’s crucial. Every page you create on Shopify will live within a folder that you simply can’t change.
If you’re like me and want your website’s URI structure to be 100% optimized to maximize search engine crawl bandwidth, it’s simply not going to happen. This reason alone is a deal-breaker for me and a good enough reason for me to look into other eCommerce platforms for SEO.
3) Product Orphaning and Internal Links
Before I dive into the problems, let’s first talk about “Rel Canonicals”, what exactly are Rel canonicals and why should you care about them?
Canonicals from an SEO standpoint are very important. Many websites contain pages with filter parameters that are not intended to be indexed or crawled by search engines. If these pages were crawled or indexed they would result in duplicate content and SERP cannibalization. To mitigate this from happening rel canonicals would be used.
A good example of this would be the use of a search bar. This function can help maximize user experience and assist users in easily searching and finding content (or pages) on your website.
These search queries often generate dynamic pages (URLs) for the user that contain filter parameters specific to what they searched for.
Here is a dynamically generated page (URL) on youtube when using the search function:
Although search engines won’t physically use the search function, if a user shares the link in a forum (for example) there is a good chance the page will get crawled.
If this page does not contain the correct rel canonical. Congratulations, you now have an indexed page on Google you never even created!
A rel canonical is used to let search engines know that a specific URL represents the original page (master copy). Correctly using rel canonicals will prevent search engines from indexing identical or “duplicate” pages that might exist on a website.
The problem with most Shopify themes out of the box is they create duplicate product pages with rel canonicals to prevent search engines from indexing duplicate product pages. Shopify is essentially auto-generating product pages (that pose no real benefit) and is not part of your website’s information architecture.
As you can see in the example below, the 6 pages (URLs) are variations of the same product page. These pages utilize rel canonical to let search engines know what pages are variations (or duplicates) of the page you want indexed.
So why is this bad?
Imagine you are shopping at a mall and looking at the map to find a specific store. You find the store on the map, you navigate to the store based on the map’s directions, but when you get there it’s just another map telling you the store is located at the other end of the mall, what a waste of time and energy right?
The way Shopify generates product pages out of the box is pretty much the same concept, navigation paths (or internal links) are using up search engine crawl bandwidth, essentially wasting the time and energy of the crawl bots. This dramatically reduces how fast (or efficient) search engines can find and index the correct SEO pages on your website.
Here is a real example of a duplicate (auto-generated) product page found on a Shopify website:
The product link is located here: https://www.scratchcoffee.com/collections/colombia
The product page contains a rel canonical pointing to the indexable (master page): https://www.scratchcoffee.com/products/colombia-supremo
This creates something called “Product Orphanining”. The reason this is a problem is when a search engine crawls your website it can’t navigate its way to the original URL outside of the sitemap and/or rel canonicals. This provides unnecessary steps for search engines trying to navigate and index your website and completely destroys the topical hierarchy of your website’s category site structure.
The best way to correct the problem is to make sure all internal links found on your website are pointing to the indexable product page and not the duplicate (canonicalized) page.
This can be achieved by editing the theme’s code. However, if you initially jumped into Shopify with expectations of not needing a developer, well now you do. This is not an ideal situation for a business owner looking to grow and/or scale their eCommerce store.
Another flaw found within multiple Shopify themes (similar to my last point) is their internal linking structure between product and collection pages. Internal links to products from collection pages will naturally contain filter parameters, the filter parameters are then canonicalized to the real product page (again creating unnecessary work for lazy search engines).
A clean internal link structure should always point to an indexable page, especially internal links that point to your “Money Pages” (product pages).
While there is a workaround for this, it again requires custom code hacks to strip the filter parameters from the internal link structure. While I’m not 100% sure if Shopify does this to track attribution or if Shopify is being plain ignorant, regardless, another poor out-of-the-box SEO design by Shopify.
4) Category Tag Pages
Category tags are used to easily organize products in the backend of a website, but also a great way for customers to filter out products on the front end of your store. Let’s say you own an e-commerce fishing store, using tags on your fishing gear collection can make it much easier for your customers to navigate and find a specific product they are looking for.
Although Shopify has designed the category tags to be super user-friendly, out-of-the-box, the category tags have some major SEO oversights.
Duplicate Meta Information
Meta information such as meta descriptions and titles are very important in the world of SEO. When a user searches for a specific keyword, Google will display a list of relevant pages, this is what we call a SERP (Search Engine Results Page). Each page on the SERP consists of meta-information that Google can find in the pages HTML (backend code). Not only can this affect your CTR (click-through rate), but it’s also an important ranking factor.
Example of served meta-information found on a SERP when searching “Fishing Lures” on Google.com:
Shopify easily allows you to optimize the meta-information on the collection pages as you create them. However, you are unable to easily optimize the meta-information on the tag pages. Instead of providing you with a way to optimize the meta-information, Shopify auto-generates it. Because of this design flaw, duplicate meta titles and meta descriptions are extremely common within the Shopify platform.
Duplicate Meta Titles:
Duplicate Meta Descriptions:
Duplicate Content & Keyword Cannibalization
Duplicate content and keyword cannibalization become a problem on search engines when your website contains multiple indexed pages that contain the same content and/or targeting the same keywords.
Using the example below, the “fishing gear” collection page is SEO optimized to target the keyword “fishing gear”.
On the tag pages (subcategories) you would want to optimize and target keywords for “fishing accessories” and “fishing lures”. Out-of-the-box Shopify does not allow you to easily add or edit the content on the tag pages. Shopify duplicates the content from the fishing gear page and applies it to each tag page. Not only does this prevent you from fully optimizing your tag pages, but it also creates duplicate content and keyword cannibalization between them.
Keyword cannibalization happens when Google indexes two or more pages that compete for the same keyword. From an SEO standpoint, this is not a good thing. When you have multiple pages ranking for the same keyword it usually results in multiple weak SERP results rather than a single strong SERP result that ranks highly. Keyword cannibalization can (and will) affect how well your website ranks.
Subcategories are also a huge oversight within the Shopify platform and they are extremely important for SEO optimization. Sub-categories help to structure product groupings and are used to organize a website for search engines.
For example, “Fishing Lures” can be a subcategory of “Fishing Gear”. They are also used for topical hierarchy and can have a huge impact on how well Google navigates and ranks your website.
Here is an example of what an SEO friendly subcategory structure would look like:
Shopify out-of-the-box has no way to make subcategories outside of category tag pages. Due to the SEO oversight and poor design of the category tags, it’s nearly impossible to easily create SEO-friendly subcategories. Without the ability to create subcategories you are extremely limited in how you structure the products and categories on your website. This also limits the topical hierarchy and depth of your category silos resulting in a fairly flat URL structure.
Tag & Subcategory Solutions
Although the category tags are poorly designed around SEO, there are some workarounds.
The easiest way to prevent duplicate content and cannibalization is to simply not use category tags at all. Unfortunately, this will most definitely hurt your topical hierarchy and can have an impact on how well you rank in a competitive niche with a well-designed SEO-friendly eCommerce URL structure.
As for the subcategories, a workaround would be to create extra collections and attach them to a parent collection. This can be achieved by downloading an app (or multiple apps), however, it’s a lot of work and you still don’t have full control. Another option would be to edit the actual code or pay someone to edit it for you. Depending on the theme you choose, this may get expensive, quite complicated, and unmanageable on larger scales.
6) The Blog
Content marketing can be a great way to funnel relevant top-of-funnel traffic from a blog to your store. This can be a great strategy to target long-tail keywords and a great way for your website to start naturally building backlinks.
Let’s be serious for a minute here: Shopify is an e-commerce platform, not a content marketing platform.
There are plenty of limitations and issues within the Shopify blog. The main problem is the lack of ability to edit the parent folder (/blog). This page will always be a 404 page and you will have no real SEO-friendly way to organize or structure the blog content! When creating a blog each category is considered a SILO. For example “fishing tips” could be the main silo on your fishing blog. This silo would be used to house all your articles about fishing tips. Since the parent folder can’t be optimized or edited, the URL (or navigation) path will always contain a 404 page.
So what should I do?
Well, a good solution would be to use a content marketing CMS like WordPress. Simply install WordPress into a subfolder within the Shopify platform, and boom, problem solved right?
I’m not sure if they are being greedy or just clueless, but Shopify doesn’t allow you to install anything into a subfolder. This is by far one of Shopify’s biggest limitations for someone really serious about getting into content marketing.
If blogging and content marketing and SEO is a large part of your business plan, you have two real options:
- Create a subdomain (subdomain.example.com) utilizing a platform like WordPress
- Choose another platform that is designed for content marketing and has no SEO limitations.
Keep in mind if you go with option 1, just remember you will need to double your SEO investment. Search engines like Google will treat both the main website and subdomain as completely separate websites.
Shopify is user-friendly, packed with features, and offers an endless supply of apps. However, due to a locked-in robots.txt file, forced URI structure, poor category tag design, lack of subcategory options, and limitations within the blog engine, Shopify is definitely not SEO-friendly out of the box.
The Majority of the oversights mentioned above do have some workarounds. However, all options provide unnecessary steps that will either cost you time, money or both.
Starting out on a Shopify platform is not the end of the world as it can allow for easy eCommerce management and integrates with nearly everything. However, if you’re looking to scale your eCommerce store through SEO or want to push your business to new heights using content marketing. From an SEO standpoint, I highly recommend you either completely migrate from Shopify to an SEO-friendly platform, or potentially go with a headless eCommerce solution for a flexible front-end solution that addresses these issues.
Wondering what platform you should migrate to? For growing SMB websites, we love working with WordPress (WooCommerce) from an SEO perspective. Some up-and-coming other CMS platforms are doing the right things but WordPress is our first choice. For more complex enterprise websites there are several more choices to explore as well. Subscribe for more platform-specific content we’re working on.