
Short answer: A Shopify SEO checklist should cover the problems the platform creates on its own: duplicate product URLs through collection paths, thin collection pages, fixed URL prefixes, app code that slows the theme, duplicated Product structured data and badly handled out-of-stock products. Fix them in that order, then work on titles, descriptions, internal links and Merchant Center data, and measure everything in Search Console.
This Shopify SEO checklist is for store owners and the freelancers who look after their stores. It skips the generic advice you can find anywhere and focuses on the issues specific to Shopify, in the order I work through them when I audit a store, with a tickable checklist you can keep coming back to.
What Shopify already does for you
Know the starting point before changing anything. Shopify generates an XML sitemap automatically at /sitemap.xml, serves the store over HTTPS, lets you edit page titles, meta descriptions and URL handles for products, collections, pages and blog posts, and most themes add a canonical tag to product pages. It also ships a default robots.txt that Shopify says works for most stores.
What it does not do is write useful content, decide which pages deserve to rank, keep your apps under control or fix a slow theme. Those jobs are yours. When I audit a store I do not start with keywords. I start by counting how many URLs the same product can be reached on, because that tells me quickly whether the technical basics were ever checked.
| Task | Shopify handles it | You need to do it |
|---|---|---|
| XML sitemap | Yes, generated automatically | Submit it in Search Console and check for errors |
| HTTPS | Yes, free SSL on connected domains | Make sure one domain is primary and the others redirect to it |
| Canonical tags | Most themes add them | Confirm after any theme change or customisation |
| Titles and meta descriptions | Editable fields, with defaults | Write them per product and collection |
| Redirects when handles change | Offered as a tick box | Leave it ticked; add manual redirects for removed products |
| Product structured data | Often output by the theme | Check for duplicates from apps |
| Collection content, speed, app hygiene | No | All yours |
1. Fix the duplicate product URL problem
A Shopify product can usually be reached at two addresses: the clean one, such as /products/blue-kettle, and a collection-path version, such as /collections/kitchen/products/blue-kettle. Same page, different URL, and a product in five collections has six URLs.
Most themes add a canonical tag on the collection-path version pointing to the clean URL. Google’s documentation on consolidating duplicate URLs treats rel=”canonical” as a strong signal, but it is not the only one: internal links count too. The problem I see most is a theme that links to the collection-path version from every collection grid, which sends Google mixed messages on every product.
- Open a product from inside a collection, view the page source and search for
canonical. - Confirm the canonical URL is the
/products/version. - Hover over product links on your collection pages. If they include
/collections/.../products/, ask your developer to change the theme’s product card snippet (often awithin: collectionfilter in Liquid) so links use the clean URL. - Check menus, emails, ads and blog links use the clean URL too.
The cleanest fix is to stop linking to duplicates in the first place, rather than relying on the canonical to tidy up after you. The same principle applies to tag pages and filter combinations: my guide to faceted navigation covers how to stop them multiplying.
Rather have an expert do this for you?
Hand it over and get back to running your business.
2. Give collection pages real content
For most stores, collections are where the best search opportunities sit. People search “stainless steel water bottles” far more often than a single model name, yet a default collection page is a grid with a title.
A strong collection page has a clear heading, a short introduction above the products that helps the visitor choose, and a few paragraphs of useful guidance below the grid: the real differences between products, sizes, materials, who each type suits, how to care for it. If a human would not read the text, rewrite it. I go deeper on structure and wording in my guide to category page SEO.
Also check:
- Collections with one or two products and no search demand: merge them or keep them out of the menu.
- Automated collections built from tags: make sure they are not creating near-duplicates of each other.
- Collection titles: Shopify defaults to the collection name plus the store name. Write a title that matches how people search.
3. Work within the fixed URL structure
Shopify forces prefixes on URLs: /products/, /collections/, /pages/ and /blogs/news/. You cannot remove them. Store owners lose a lot of time worrying about this, and I think the worry is mostly misplaced; the prefixes are not what holds a store back.
What you control is the handle, the last part of the URL. Keep handles short and descriptive, and avoid changing them after launch. When you must change one, leave the “create a URL redirect” box ticked. For products you delete, add a redirect under Online Store, Navigation, URL Redirects, and keep the list free of chains; my guide to redirect chains and loops explains why.
If the fixed prefixes block something you genuinely need, that is a platform decision worth making early. Open-source platforms give more control, which I cover in my WooCommerce SEO setup guide, though more control also means more ways to break things.
Leave robots.txt alone unless you have a clear reason
Shopify lets you customise robots.txt.liquid, but its own help article on editing robots.txt calls this unsupported and warns that incorrect use can lose all traffic. The default already blocks cart, checkout and most internal search URLs. I only edit it to block a specific crawl problem I have measured, and I add rules with Liquid rather than replacing the template with plain text.
4. Audit your apps and theme for speed
Apps are the most common reason a Shopify store feels slow. Review widgets, pop-ups, upsell tools, chat bubbles, currency converters and tracking scripts each add code, and many leave snippets in the theme after you uninstall them. Speed matters commercially as well as for SEO: a Deloitte study published on web.dev found that a 0.1 second mobile speed improvement was associated with an 8.4% rise in retail conversion rates across the brands it measured.
- List every installed app and write what it earns or saves you. If you cannot say, it is a candidate for removal.
- Remove one app at a time and test a product page and a collection page before and after.
- Search theme files for leftover snippets from apps you no longer use.
- Compress product images before upload and use the theme’s responsive image settings.
- Avoid sliders, auto-playing video and huge hero banners on the home page.
Test real product and collection URLs, not just the home page, with my free PageSpeed checker. Product pages are where people decide to buy, and they are often heavier than the home page.
5. Check your Product structured data
Product markup tells search engines the name, image, price, availability and, where you have genuine reviews, rating information. Google’s product structured data documentation separates product snippets (pages where people cannot buy directly) from merchant listings (pages where they can), and a Shopify product page falls into the second group, so price, currency, availability, shipping and returns details all count.
The trouble starts when the theme, a reviews app and an SEO app each output their own Product block, so the same product is described two or three times, sometimes with different prices. Paste a product URL into Google’s Rich Results Test. You want one clear Product block that matches what a visitor sees. If you find several, pick one source and switch off the rest. My schema markup guide explains the vocabulary in plain terms.
6. Handle out-of-stock and discontinued products
Shopify makes it easy to unpublish a product and forget it, which turns a page that may have earned links and traffic into a 404.
| Situation | What I would do |
|---|---|
| Temporarily out of stock, returning soon | Keep the page live, show clear availability, offer a back-in-stock sign-up, keep structured data accurate |
| Permanently discontinued, close replacement exists | 301 redirect to the replacement product |
| Permanently discontinued, no replacement | Redirect to the most relevant collection, or keep a useful page pointing to alternatives |
| Seasonal product that returns every year | Keep the same URL year after year; do not create a new product each season |
The edge cases are in my article on out-of-stock products and SEO.
7. Write your own descriptions and feed Merchant Center
Many stores paste in the manufacturer’s description, which dozens of other sellers also use. Write your own, built around what customers actually ask you before they buy. My guide to product descriptions that rank shows how to structure them without padding.
Your product data also feeds Google’s free product listings through Merchant Center, which you can connect through the Google and YouTube app. Clean titles, accurate prices and stock status help there as well; setup and common disapprovals are in my guide to Merchant Center free listings.
A note for Pakistani stores selling locally and abroad
Many Shopify stores I see from Pakistan sell both locally in rupees and abroad in dollars or pounds. Shopify Markets can serve different currencies and, with subfolders, different language or regional URLs. If you only switch currency on one URL, Google sees a single page and you do not need hreflang. If you create regional subfolders with different content, you do, and Shopify adds hreflang for Markets subfolders automatically; check it rather than assuming.
Shopify SEO checklist
- Primary domain: one primary domain set, other domains redirect to it.
- Search Console: property verified and
/sitemap.xmlsubmitted. - Canonicals: collection-path product URLs canonicalise to the
/products/URL. - Internal product links: collection grids link to clean
/products/URLs. - Collection content: each important collection has an intro and buying guidance.
- Thin collections: near-empty or duplicate collections merged or hidden.
- Titles and descriptions: written for products and collections, not left as defaults.
- Handles: short and descriptive; redirect box ticked on every change.
- Deleted products: redirected to a replacement or collection, with no chains.
- App audit: every app justified; unused apps and leftover theme code removed.
- Speed: product and collection templates tested on mobile.
- Images: compressed, responsive, with descriptive alt text.
- Structured data: one Product block per page, matching visible price and stock.
- Descriptions: no unedited manufacturer copy on key products.
- Merchant Center: connected, feed clean, no unresolved disapprovals.
Ticks are saved in your browser.
Common Shopify SEO mistakes I find
- Theme links pointing to collection-path product URLs.
- Collection pages that are only a product grid.
- Apps installed “to try” and never removed, with code left behind after uninstalling.
- Two or three Product structured data blocks on one page.
- Unpublishing products with no redirect.
- Default titles of product name plus store name, with no thought for search terms.
- Tag pages and filter URLs crawlable with no search demand behind them.
- Editing robots.txt.liquid to “fix” something without measuring a real problem first.
Frequently asked questions
Is Shopify good for SEO?
It is good enough for most stores, provided you fix its known weak points. Whether a store ranks depends far more on content, structure, speed and authority than on the platform.
Can I remove /products/ and /collections/ from Shopify URLs?
No, the prefixes are fixed. You control the handle after them. Focus on short, descriptive handles and consistent internal linking instead.
Do I need an SEO app on Shopify?
Not necessarily. Titles, descriptions, handles and image alt text can all be edited natively. An app can help with bulk edits or structured data, but every app adds code, so do not stack several that do the same job.
Why does the same product show up under several URLs?
Because the theme builds product links through the collection the visitor came from. The canonical should point to the clean /products/ URL, and your own links should use it too.
How long does Shopify SEO take to show results?
Technical fixes such as canonicals and redirects can show in Search Console within weeks of recrawling. Content and authority work on collections usually takes longer, and most stores see clearer movement in 3 to 6 months.
Sources
- Google Search Central, “How to specify a canonical URL with rel=canonical and other methods” (accessed 2026).
- Google Search Central, “Product structured data” (accessed 2026).
- Shopify Help Center, “Editing robots.txt.liquid” (accessed 2026).
- Deloitte and Google, “Milliseconds Make Millions”, summarised on web.dev (2020).
If you would rather have me review your store against this list, my e-commerce SEO services start with an audit, or you can get in touch and I will tell you which of these issues apply to your store.
Request received
Thank you! Saad will contact you within the next 24 hours.
Keep an eye on your phone and inbox.
