Shopify SEO Checklist: 53 checks ranked by revenue

Shopify SEO Checklist: 53 Checks Ranked by What Moves Revenue

Last Updated on October 20, 2026 by Corey Fox

A Shopify SEO checklist should be about Shopify. Most aren’t: they tell you to install an SEO app, write alt text and “create quality content”. This one covers the problems Shopify itself creates, like collection-path product URLs, filter pages in Google’s index, a theme and review app both describing your products, and apps slowing every page. It’s 53 checks in 10 phases, each with where to look in Shopify and a priority, so you know what to do first.

Free: the Shopify SEO Checklist workbook

Everything on this page, plus the exact fix for each check, a progress tracker, a baseline sheet, a keyword map and copy-paste theme snippets. Spreadsheet and printable PDF.

How to use this checklist

  • P1 (16 checks): do this week. These move revenue fastest and most take under an hour.
  • P2 (24 checks): this month.
  • P3 (13 checks): when the rest is done.
  • Edit a duplicate theme. Online Store > Themes > … > Duplicate. Preview, then publish.

The 16 checks to do this week

  1. Verify the store in Google Search Console (Setup and measurement)
  2. Confirm GA4 records purchases with revenue (Setup and measurement)
  3. Set one primary domain and redirect the rest (Setup and measurement)
  4. Write down your baseline (Setup and measurement)
  5. Product links point to /products/, not /collections/…/products/ (Crawl and indexation)
  6. Compare indexed pages to real pages (Crawl and indexation)
  7. Filtered collection URLs are not indexed (Crawl and indexation)
  8. Each product page has exactly one Product block (Product and review schema)
  9. Ratings come from real reviews (Product and review schema)
  10. Price and availability in schema match the page (Product and review schema)
  11. One collection per keyword (Collections)
  12. Collections exist for what people search (Collections)
  13. Core Web Vitals pass on product and collection pages (Speed and apps)
  14. Every installed app earns its place (Speed and apps)
  15. Every key page has one main keyword (Content and keywords)
  16. hreflang is correct for every market (International, only if you use Shopify Markets)

Setup and measurement

Get the data flowing first. Every later fix gets judged by these numbers.

  • Verify the store in Google Search Console P1
    You can’t fix what Google won’t show you. Search Console is the only source for indexing, queries and Core Web Vitals field data. How to check: Search Console > Add property > Domain. Verify with the DNS record (Shopify: Settings > Domains > your domain > DNS settings).
  • Confirm GA4 records purchases with revenue P1
    Without revenue on organic sessions you’ll rank fixes by guesswork instead of money. How to check: GA4 > Reports > Monetization > Ecommerce purchases, filtered to Organic Search. Place a test order and watch Realtime.
  • Set one primary domain and redirect the rest P1
    www, non-www and the .myshopify.com address can all serve the store. Only one should. How to check: Settings > Domains. Open the www, non-www and myshopify URLs in a private window and confirm each lands on the primary.
  • Write down your baseline P1
    You need a before number to prove any of this worked. How to check: Last 90 days: organic revenue and sessions (GA4), indexed pages and top queries (Search Console).
  • Add the store to Bing Webmaster Tools P2
    Bing’s index feeds Copilot and several other AI search tools, not just Bing. How to check: bing.com/webmasters > Import from Google Search Console.

Crawl and indexation

Shopify creates several URLs for the same thing. This phase makes sure Google spends its time on the ones that sell.

  • Product links point to /products/, not /collections/…/products/ P1
    Collection-path product URLs are duplicates. When every product card links to them, Google crawls thousands of copies. How to check: Open a collection page, view source, search for ‘/collections/’ followed by ‘/products/’. Any hit in a product card is the problem.
  • Compare indexed pages to real pages P1
    If Google indexes far more URLs than you have products, collections and posts, the extra ones are duplicates or filters. How to check: Search Console > Indexing > Pages > indexed count. Compare with Products + Collections + Pages + Blog posts in your admin.
  • Filtered collection URLs are not indexed P1
    Every filter combination (?filter.v.option.color=…) is a new URL with the same products. Shopify’s default robots.txt only blocks some of them. How to check: Search Console > Pages > indexed list, filter URLs containing ‘filter.’. Or search Google: site:yourstore.com inurl:filter.
  • Tag pages are noindexed unless they have their own demand P2
    Legacy tag URLs (/collections/shirts/linen) are thin copies of the collection. How to check: Search Console > Pages, filter for your collection URLs with an extra path segment.
  • Canonical tags are in the theme and correct P2
    Shopify generates good canonicals, but only if the theme outputs them. How to check: View source on a product with ?variant= in the URL. The canonical should be the plain /products/handle URL.
  • Old and changed URLs redirect P2
    Deleted products and renamed handles turn into 404s, and the links pointing at them are wasted. How to check: Search Console > Pages > Not found (404). Check which ones had traffic or backlinks.
  • Sold-out products stay live or redirect, never just vanish P2
    A discontinued product that ranks is still a door into the store. How to check: List archived or deleted products that had organic sessions in the last 12 months (GA4 landing pages).
  • Vendor and type pages aren’t competing with collections P3
    /collections/vendors?q= and /collections/types?q= are auto-generated pages that can rank instead of your real collections. How to check: site:yourstore.com inurl:collections/vendors and inurl:collections/types.
  • Your robots.txt customizations didn’t remove Shopify’s defaults P3
    A hand-written robots.txt.liquid that drops the default rules can open up cart, search and checkout URLs. How to check: Visit yourstore.com/robots.txt. It should still disallow /cart, /checkout, /search and sort_by URLs.

Product and review schema

Structured data is how Google and AI tools read your price, stock and ratings. Themes and apps often both add it, and they disagree.

  • Each product page has exactly one Product block P1
    Two Product blocks with different data is the most common reason Shopify stores lose star ratings in search. How to check: Run a product URL through Google’s Rich Results Test and count the Product items. The free Schema Conflict Checker also names the theme or app behind each block. More in how to find and remove duplicate Product schema.
  • Ratings come from real reviews P1
    AggregateRating on a product with no reviews, or ratings attached to the wrong block, gets ignored or flagged. How to check: In the Rich Results Test, check that aggregateRating sits inside the same Product item as offers, with a real reviewCount. See why review stars stop showing.
  • Price and availability in schema match the page P1
    Mismatches (old sale prices, wrong variant, out of stock shown as in stock) break rich results and confuse AI answers. How to check: Compare the schema price to the visible price on 5 products, including one on sale and one sold out. Free tool: Schema Conflict Checker.
  • One Organization block on the homepage P2
    Theme plus SEO app often means two, with different names or logos. How to check: Rich Results Test on the homepage. Look for Organization or Store.
  • Google Merchant Center free listings are live P2
    Free listings put products in Shopping and Images results at no cost, and feed product facts to Google’s AI. How to check: Merchant Center > Products > Diagnostics. Note disapprovals and warnings.
  • Breadcrumbs on products and collections P3
    Breadcrumb markup replaces the URL in search results with a readable path and helps Google understand structure. How to check: Rich Results Test on a product and a collection. Look for BreadcrumbList.

Collections

Collections are the pages that rank for buying searches. Most stores have too many of the wrong ones and none of the right ones.

  • One collection per keyword P1
    Two collections chasing the same search split the signals and both rank lower. How to check: Search Console > Performance > Queries. For your top collection keywords, open Pages and see if more than one collection gets impressions.
  • Collections exist for what people search P1
    If people search ‘linen shirts men’ and you only have ‘Shirts’, you’re invisible for the buying search. How to check: Keyword research on your product attributes: material, use, style, size, audience. Note searches with no matching collection.
  • Thin collections are merged or noindexed P2
    Collections with 1 to 3 products look like empty pages to Google. How to check: Products > Collections, sort by product count.
  • Every main collection has intro copy P2
    A grid of products with no text gives Google little to rank. 80 to 150 words is enough. How to check: Open your top 10 collections by organic revenue. Check for a description that names what’s in it.
  • Collection titles and H1s use the keyword P2
    ‘Shop All Spring’ tells Google nothing. ‘Women’s Linen Dresses’ does. How to check: Check the collection title, the H1 on the page, and the SEO title under ‘Search engine listing’.
  • Paginated collection pages aren’t canonicalized to page 1 P3
    If page 2 points its canonical at page 1, products deeper in the collection get crawled less. How to check: View source on /collections/x?page=2. The canonical should include ?page=2.

Product pages and templates

Fix the template once and every page that uses it gets better.

  • Title tags are unique and lead with the product P2
    Duplicate or generic titles across variants and templates make pages compete with each other. How to check: Crawl the site (Screaming Frog free covers 500 URLs) and export duplicate titles.
  • One H1 per page P2
    Themes often wrap the logo or a section heading in an extra H1. How to check: Crawl, then check the H1 report. Or view source on one page of each template.
  • Top sellers have original descriptions P2
    Manufacturer copy appears on every reseller’s site. Google picks one to rank. How to check: Paste a sentence from your top 10 products into Google in quotes. See how many sites have it.
  • Products link to their collections and related products P2
    Internal links tell Google which pages matter and spread authority to deeper products. How to check: Open a product page and count links to its parent collection and to related products.
  • Images have alt text and real file names P3
    Alt text is how Google Images and screen readers understand the image. How to check: Crawl and check the images missing alt text report.
  • Handles are short and readable P3
    /products/mens-linen-shirt-white beats /products/copy-of-new-product-2. How to check: Products list, scan handles for ‘copy-of’, numbers and leftovers.

Speed and apps

On Shopify, slow almost always means apps. Measure the real templates, then cut.

  • Core Web Vitals pass on product and collection pages P1
    These are field numbers from real visitors and part of how Google ranks pages. How to check: Search Console > Experience > Core Web Vitals > Mobile. Open failing URL groups. Check LCP (under 2.5s) and INP (under 200ms).
  • Every installed app earns its place P1
    Apps load scripts on every page, even when you only use them on one. How to check: Apps list: write down what each does and if it’s still used. In theme editor > App embeds, see which are switched on.
  • The main image loads first P2
    The LCP element on most product and collection pages is the first image. If it’s lazy-loaded or oversized, LCP fails. How to check: Run PageSpeed Insights on a product page and look at the LCP element.
  • Chat, popups and widgets load late or only where needed P2
    A chat widget on every product page can cost a full second. How to check: PageSpeed Insights > ‘Reduce the impact of third-party code’.
  • Fonts are limited P3
    Each font weight is another download before text shows. How to check: Theme settings > Typography. Count families and weights.
  • Videos use a lightweight embed P3
    A YouTube embed loads hundreds of KB before anyone presses play. How to check: Check pages with video in PageSpeed Insights.

Content and keywords

Give every important search one page, and write the content that answers buyers before they buy.

  • Every key page has one main keyword P1
    Without a map, pages drift onto the same keywords and compete. How to check: List your homepage, top collections, top products and posts with the keyword each one targets.
  • Blog posts answer buying questions first P2
    ‘Best X for Y’ and ‘X vs Y’ posts bring buyers. ‘Our team picnic’ doesn’t. How to check: Look at your posts in GA4 by revenue. Note which have none.
  • Blog tag pages aren’t indexed P3
    Single-tag blog URLs (/blogs/news/tagged/x) are thin lists. How to check: site:yourstore.com inurl:tagged
  • Old posts competing for one keyword are merged P3
    Three thin posts on the same topic lose to one good one. How to check: Search Console > Pages, filter /blogs/, look for posts sharing top queries.

A few relevant links beat hundreds of random ones. Start with the sites already writing about your category.

  • You’re listed where your category gets reviewed P2
    ‘Best of’ lists and review sites rank for buying searches and are what AI tools cite. How to check: Google your top 3 category searches with ‘best’. List the review sites and roundups on page 1. Free tool: AI Citation Checker.
  • Broken links to your site are fixed P2
    Links pointing at deleted products pass nothing. How to check: Ahrefs or Semrush > Broken backlinks, or Search Console 404s with external links.
  • Unlinked brand mentions get a link P3
    People who already mention you are the easiest links to get. How to check: Search your brand name in quotes, excluding your own site.
  • Suppliers, stockists and partners link to you P3
    These links are relevant and usually just need asking. How to check: List manufacturers, wholesale partners and stockists.

AI search

Shoppers now ask ChatGPT and Google’s AI what to buy. These checks make sure the answer can include you.

  • You know who AI tools recommend for your top questions P2
    If you’re not cited, you’re not in the shortlist. How to check: Ask ChatGPT, Perplexity and Google (AI Overviews) your 5 most valuable buyer questions. Note who gets cited. Free tool: AI Citation Checker.
  • Product facts are consistent everywhere P2
    AI answers blend sources. Different prices or specs on your site, schema, Merchant Center and Amazon read as unreliable. How to check: Compare price, materials, warranty and shipping for your top 5 products across those sources. Free tool: Brand Hallucination Auditor.
  • AI crawlers aren’t blocked by accident P2
    A custom robots.txt.liquid or a bot-blocking app can lock out OAI-SearchBot or PerplexityBot. How to check: Read yourstore.com/robots.txt. Check any security or bot apps’ settings.
  • Product pages answer the obvious questions in plain text P3
    Specs and FAQs written in plain sentences are easy to quote. Answers hidden in images or tabs aren’t. How to check: Open a top product. Can you find size, material, care and shipping in text without clicking around?

International (only if you use Shopify Markets)

Skip this phase if you sell in one country.

  • hreflang is correct for every market P1
    Without it, Google may show your US page to UK shoppers, with the wrong currency. How to check: View source on a product in each market’s subfolder (/en-gb/). Check hreflang tags list every market plus x-default.
  • Translated markets aren’t half English P2
    Untranslated product text on /fr/ URLs looks like duplicate content. How to check: Browse 3 products in each language market.
  • No forced redirects by location P2
    If visitors are forced to their country’s version, Google’s crawler only ever sees one market. How to check: Open the store with a VPN from another country. You should be offered, not forced, to switch.

Monthly maintenance

Once the list is done, these five checks keep it done.

  • Search Console: new 404s, spikes in ‘Crawled, not indexed’, Core Web Vitals changes
  • Re-run the schema check after any app install, app update or theme update
  • Organic revenue and sessions vs. your baseline
  • Top 20 organic landing pages: any big drops?
  • New products: titles, alt text, collection placement and handles done

Common questions

How long does this checklist take?

The 16 P1 checks take most stores a day or two. The full list is closer to a few weeks of part-time work, mostly because of content and collections.

Do I need a Shopify SEO app?

No. Most items on this list are theme settings, Search Console and a few lines of Liquid. Some SEO apps add problems this list then has to fix, like a second Product schema block.

What’s the most common Shopify SEO problem?

In the stores I audit: duplicate Product schema from a theme plus a review app, and product cards that link to collection-path URLs. Both are small theme edits.

Is Shopify bad for SEO?

No. Shopify handles hosting, SSL, sitemaps and canonicals well. Its weak spots are duplicate URLs, filters and apps, which is what most of this checklist covers.

Want the whole list run for you?

The Shopify SEO Audit runs every check here on your store, adds your GA4 revenue data, and ranks the fixes by how much they’re likely to recover. $1,500 fixed, 10 business days. You can see a sample report first.

Related reading

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *