Shopify Search Engine Optimization: How to Get More Traffic for Your Shopify Store

December 12, 2014 by

Search engine optimization for Shopify is something I’ve been battling with for a few clients. Just like trying to optimize any website for search, Shopify has its own quirks to deal with. I’m assuming you already know a thing or two about the art and science of SEO and need some help translating that for Shopify. Here’s how.

Shopify SEO for Products

In order of appearance in the Shopify product interface:

Title: For most Shopify themes, this will be the on-page product title as an H1 tag. It should include your targeted keyword but also be appropriate as the actual title of the product.

Description: Make sure to include your targeted keyword several times in the description field. I recommend using bullets for some key features (better for conversion optimization) then add 100-300 words of descriptive text.

Image ALT Text: Your image’s file name (what you save it as before you upload to Shopify) and ALT text are used as text to describe to search engines the content of an image. In addition to helping the product page SEO, having descriptive file names and ALT text can help your product images show up in Image Search.

Page Title: This title will appear as the clickable link in search results. You can make this a bit more expansive than your product title to include more keywords.

Meta Description: This is the text that shows up below the clickable link in search results. Make sure this includes your targeted keywords and another close variation or two on your keywords while maintaining a description that is appropriate for a human reader (as opposed to stuffing keywords for Mr. Google Bot).

URL & Handle: This field auto-generates as a hyphen-separated version of your product title. Ideally, you’d ad a few more keywords into this field, making sure to separate each word with a hyphen, an SEO best practice.

  • Caution #1: This field is (awkwardly) used as the database key when importing and exporting products via csv. If you change it then import using old product data, your products will duplicate.
  • Caution #2: You should not change this field after your product has been created, as Google may have already indexed the page. If you are compelled to do so for SEO, then use 301 redirects, which can be administered in Shopify under Navigation > URL Redirects.

Shopify SEO for Collections, Pages & Blog Posts

Shopify Collections, Pages and Blog Posts contain the same fields as above: Title, Description (called Content for Pages and Posts), Page Title, Meta Description and URL & Handle. The same principles apply here with some caveats.

URL & Handle: Just like products, if you change the URL & Handle field in any of these page categories, create a 301 redirect. Moreover, make sure to change any Link Lists that refer to the handle under Navigation. Shopify uses the Collections and Pages handles to assemble menus, and you don’t want to break your menus.

Blog Posts Tag Field: Blogs have a Tag field, which is often used on the blog listing or blog article page to categorize the content. This creates extra pages that are formatted like:


Either ditch the blog tag menus (if you don’t have enough content to support categorization) or create a logical, validated list of blog tags that will apply to most articles. The worst thing to do is dilute your SEO efforts with dozens of blog tags that only have an article or two associated with them.

Image ALT Text: You won’t be able to conveniently add ALT text to your images on Collections, Pages and Blog Posts like in the Products interface. First, save your image using a file name that includes your target keywords for the page. After you’ve added it to Shopify using the Insert Image button, highlight the image and click on the Edit Image button. Here you’ll see a Description field, which will be written in the html as the ALT text.

Header Tags: Shopify doesn’t let you control headings in their Description/Content WYSIWYG editor. The title of each page is going to be the H1 tag, and it’s an SEO best practice to use H2 and H3 tags to break up the content of your pages. You’ll have to add the header tags using the html editor (click the <> button). Find the text you want to use as headers, then add tags like:

  • <h2>Shopify Search Engine Optimization Tip #1</h2>

Sitemap.xml Submission to Webmaster Tools

Shopify automatically generates a sitemap.xml file that is located at The Shopify sitemap links to separate sitemaps for your Products, Collections, Blogs, and Pages.

You should add your sitemap to Google Webmaster Tools so that it crawls your pages and indexes your content more quickly. In your Google Webmaster Tools dashboard, click on the Sitemaps link, then click the Add/Test Sitemap button. Enter “sitemap.xml” into the dialog box and click Submit Sitemap.

Visible vs. Hidden Settings

Shopify’s sitemaps include all of your products, collections, articles and pages, regardless of whether they’re linked to on the site. If you have drafts or copies that you don’t want made visible to search engines, be sure to mark the as Hidden in Shopify.

Rel Canonical for Duplicate Content

Canonical tags are used to tell Google that two pages on your site are the same and for it to only index the one you want. In Shopify, when you navigate to a product page from a collection page, Shopify creates a duplicate page. This helps for breadcrumb navigation but may hurt SEO. For example, these look like the same page to you and me, but not to Google:


Shopify has a good fix for this. Nearly every theme will include the following code in the theme.liquid file:

<link rel="canonical" href="{{ canonical_url }}" />

Make sure your theme.liquid file includes this between the <head></head> tags.

No Index for Product Tag Pages

There’s another instance of (nearly) duplicate page creation that hurts Shopify search engine optimization. You may notice in search results that collections pages have “sub-collection” pages created by the tags of the products within that collection. The on-page content is slightly different (as products are filtered), but all the other data are the same. For example, these pages would have the same title and description:


You can check if this is the case in your template by checking the collection.liquid file for the phrase “current_tags”. This indicates that your theme is set up to use collection tags for filtering. I’ve used a theme that had a Theme Setting for tag filtering disabled, and the tag-generated pages still showed up in search results.

To be safe, you’ll want to tell Google not to index these tag pages by replacing

<link rel="canonical" href="{{ canonical_url }}" />

with the following:

{% if template contains 'collection' and current_tags %}
<meta name="robots" content="noindex" />
<link rel="canonical" href="{{ shop.url }}{{ collection.url }}" />
{% else %}
<link rel="canonical" href="{{ canonical_url }}" />
{% endif %}

There you have it. I’ve given away the keys to the kingdom. Now you don’t have to hire me to do your Shopify search engine optimization.

Also, great deals on comfy toe socks and women’s ice treads are over at