Most Shopify SEO audits read like a list of 87 things you will never get to. This one is different. The Shopify SEO audit checklist below is built around what actually moves rankings for stores in the 6-to-24-month range, when the easy fixes from launch are done and the next layer of issues starts holding you back.
You can do this in a weekend. Two hours Saturday for the technical pass. Two hours Sunday for content and GEO. By Monday you will know what is broken, what is fine, and what is worth fixing first.
This is the same audit structure I run for clients before quoting work. You are doing it for free, on the store you already know better than anyone.
Before you start: the four tabs to open
Open these four tabs before you touch the checklist.
First, Google Search Console for your verified domain. Second, your Shopify admin. Third, PageSpeed Insights with your homepage URL entered. Fourth, your live storefront in an incognito window so you see what an anonymous visitor sees, not the logged-in admin view.
If you do not have Google Search Console set up yet, stop here, set it up, and come back in 72 hours. Most of the diagnostic data lives inside GSC.
Technical SEO: 12 checks for crawl, index, and speed
Technical SEO is the layer Shopify is supposed to handle for you. Most of the time it does. The exceptions are where rankings quietly leak.
1. Canonical tags on /collections/{handle}/products/{handle} URLs
Shopify generates two URLs for every product: the clean /products/handle URL and a contextual version like /collections/category/products/handle shown when a shopper clicks through a collection. The contextual URL should carry a canonical pointing to the clean version. Open a product through a collection in incognito, view source, search for rel="canonical". It should point to /products/handle. Some themes get this wrong, spreading the broken URL across the whole store.
2. Self-referencing canonicals on every other page
Every page you want indexed needs a self-referencing canonical tag in the head. Spot-check five pages: view source, look for <link rel="canonical">, confirm the URL matches the page you are on. Missing canonicals usually point to a broken theme or an app injecting weird tags.
3. Sitemap.xml health
Visit yourdomain.com/sitemap.xml. It should load. Then visit the child sitemaps: sitemap_products_1.xml, sitemap_collections_1.xml, sitemap_pages_1.xml. Each should return a 200 status code and contain only URLs you actually want indexed. In Google Search Console under Index then Sitemaps, confirm yours is submitted and the discovered URL count roughly matches your live product and collection counts.
4. Robots.txt sanity check
Visit yourdomain.com/robots.txt. Confirm /admin, /cart, /checkout, /account, and /search are disallowed, and that nothing in the live storefront is accidentally blocked. Shopify generates this file correctly by default. If something looks off, an app or theme edit is the usual culprit.
5. Indexed pages vs intended pages (the GSC mismatch test)
In Google Search Console under Indexing then Pages, compare the indexed count to the not-indexed count. If you have 50 products but Google has indexed 280 pages, you have crawl bloat (tag pages, filter URLs, duplicate variants). If Google has indexed only 12, you have an indexing problem (thin content, slow discovery, or blocked URLs). Either pattern needs a closer look.
6. Core Web Vitals: LCP, INP, CLS on mobile
Run PageSpeed Insights on your homepage, top product, and most-trafficked collection. Switch to Mobile. Per Google's thresholds: LCP under 2.5 seconds, INP under 200 milliseconds, CLS under 0.1. Most Shopify stores pass LCP and CLS but fail INP. Industry data shows roughly 43% of sites globally fail INP, making it the most commonly failed Core Web Vital.
7. INP-specific killers (the one everyone misses)
INP replaced First Input Delay in March 2024. It measures every interaction across a session, not just the first. The usual Shopify culprit is third-party app JavaScript: chat widgets, review widgets, loyalty popups, currency converters. View source on your storefront and count the <script> tags. 30+ external scripts means an INP problem waiting to happen.
8. Image SEO: alt text, file size, format
Visit a product page in incognito. Right-click an image and inspect. Confirm descriptive alt text (not product-1.jpg), file size under 200 KB, and WebP or AVIF format. Shopify does some auto-conversion, but a 3 MB JPG usually needs resizing before reupload. Sample 10 random products.
9. Internal link depth (the 3-click rule)
Pick three random products and count clicks from the homepage to each one. Three or fewer is healthy. Five or more means those products are buried, get crawled less often, and rank worse. The fix is usually better navigation or a featured-products block on collection pages.
10. Mobile-friendliness on real devices
PageSpeed Insights tells you the score; your phone tells you the truth. Open your store on your actual phone. Try to buy something. Read the product description without zooming. If anything feels awkward, it is awkward for shoppers too.
11. HTTPS and mixed-content warnings
Shopify ships SSL by default, so this is almost never broken. Almost. If you have a custom domain with manually added scripts (a Google Tag Manager container loaded over HTTP, an embedded video from a non-HTTPS source), Chrome will show a Not Secure warning on the affected pages. Spot-check the homepage and a product page.
12. 404s and broken internal links
In Google Search Console under Indexing then Pages, look for Not Found (404) errors. Each 404 is either a missing redirect (you deleted a product or merged variants) or an internal link pointing at a dead URL. Fix the redirects in Online Store then Navigation then URL Redirects. Hunt internal links with a free crawler like Screaming Frog on its free tier (up to 500 URLs).
On-page SEO: 11 checks for titles, metas, headings, schema
On-page is the layer you control directly from the Shopify admin. Most stores leave 40% of the available optimization unused because the default fields look filled in enough.
13. Title tags across all top pages
Each indexed page should have a unique title under 60 characters that includes the primary keyword for that page. Every product, collection, blog post, and page has an SEO field at the bottom of the admin. Spot-check your top 10 pages by traffic (GSC under Performance) and confirm none use the default Product Name - Store Name template.
14. Meta descriptions under 155 characters
Same 10 pages. Meta descriptions don't affect rankings directly, but they affect click-through. Each should be unique, under 155 characters, ending with a soft call to action like Shop now or See all sizes.
15. H1 tags: one per page, contains primary keyword
View source on five page types: homepage, product, collection, blog post, About. Search for <h1>. Confirm exactly one, and that it contains the primary keyword for that page. Some themes use the store name as H1 on every page; that wastes the most important on-page signal you have.
16. Heading hierarchy (no skipped levels)
Same five pages. Headings should descend in order: H1, H2, H3. Never jump from H1 to H4. Themes often skip levels for visual styling, which makes the content harder for crawlers to parse.
17. Product schema (Product, Offer, AggregateRating)
On a product page, view source and search for "@type": "Product". The JSON-LD block should include name, description, image, price, availability, and (if you have reviews) AggregateRating with ratingValue and reviewCount. 47 reviews but no AggregateRating means star snippets are left on the table. Confirm with Google's Rich Results Test.
18. BreadcrumbList schema
Same test, search for "@type": "BreadcrumbList". Most themes ship this. A few don't. If yours doesn't, breadcrumbs in Google's snippets show as ugly URLs instead of clean Home › Collection › Product paths.
19. Organization schema on the homepage
On the homepage, view source and search for "@type": "Organization". It should include name, URL, logo, and ideally sameAs links to your social profiles. This is what helps AI engines connect your store to your brand entity. Missing Organization schema hurts brand recognition in AI Overviews and other generative surfaces.
20. URL handles are short and keyword-aware
You can't remove the /products/ and /collections/ prefixes on Shopify. What you can edit is the handle. Open your top 10 products. Each handle should be 3-5 words, contain the primary keyword, and use hyphens. /products/handmade-leather-wallet-brown is healthy. /products/copy-of-copy-of-product-12-final-v2 is not. Yes, this happens.
21. Image alt text on the homepage and collection pages
Beyond product pages, check alt text on hero banners and collection thumbnails. Hero banners often ship with alt="" from the theme. That is fine for decorative images but misses opportunity on banners with real content.
22. Internal linking from blog content to product or collection pages
Open your last five blog posts. Count how many link to a product or collection page using descriptive anchor text. Blog content without internal links to commercial pages earns traffic but never converts. Minimum 2-3 contextual internal links per post.
23. Anchor text quality across the site
Search your site for "click here" and "read more" used as anchor text. Both are weak anchor text by Google's own guidelines. Replace with descriptive phrases that include the destination's primary keyword.
| Audit Area | What "Pass" Looks Like | Fix Time If Failed |
|---|---|---|
| Canonical tags | Self-referencing on every indexed page; collection-context URLs canonicalize to /products/handle |
30 mins to 2 hrs |
| Core Web Vitals (INP) | p75 INP under 200 ms on mobile across top pages | 3-8 hrs (script audit + deferral) |
| Product schema | AggregateRating populated when reviews exist; passes Rich Results Test | 1-3 hrs |
| Sitemap health | All child sitemaps return 200; no orphan or 404 URLs | 1-2 hrs |
| 404 errors in GSC | Zero new 404s in the last 90 days | 15 mins per redirect |
Content SEO: 6 checks for collection, blog, and FAQ
Content is the layer where small fixes compound fastest.
24. Collection page descriptions (the 150-word minimum)
Most Shopify collection pages have a heading and a product grid. That's it. Google needs 150-300 words of unique content on a collection page to understand the category-level query it should rank for. Open your top 5 collections. Count the words. Under 150 leaves rankings on the table.
25. Collection meta descriptions (different from H1)
Same 5 collections. Meta descriptions should be unique, under 155 characters, and reinforce the category keyword without copy-pasting the H1.
26. Product descriptions (200+ words, original, structured)
Spot-check 10 products. Each description should be 200+ words, original (not supplier stock copy), and broken into short paragraphs or bullet points. Supplier copy is duplicated across hundreds of stores, and Google knows. Original product copy is one of the cheapest competitive moats a small store has.
27. Blog post depth (the 1,200-word rule for ranking posts)
Open GSC under Performance and sort by clicks. Your top-ranking blog posts are almost always your longest, deepest, most carefully written ones. Posts under 600 words rarely rank competitively. If "30 quick posts" isn't working, this is why. Depth beats frequency.
28. FAQ schema on product and content pages
Real FAQ schema (JSON-LD, "@type": "FAQPage" in the head) earns expanded SERP snippets and answer-box appearances in AI Overviews, ChatGPT, and Perplexity. View source on three pages with FAQ sections, search for FAQPage. Missing? Your FAQs are decorative, not discoverable.
29. Duplicate content between products and variants
If you sell the same shirt in 10 colors, you may have 10 product pages with identical descriptions. That is thin duplicate content at scale. The cleanest fix is to consolidate into one product page with variant options. If variants must be separate products, give each one 100+ words of unique copy.
GEO: 6 checks to be cited by ChatGPT, Claude, Gemini, and Perplexity
Generative Engine Optimization is the new layer. Getting cited by AI search engines is now a real organic traffic source, and most Shopify stores haven't started thinking about it.
30. Brand entity clarity (consistent name across all pages)
Your store name should appear identically across page titles, Organization schema, Google Business Profile, social bios, and any third-party mentions. The cleaner the entity signal, the more confidently AI engines cite your store as a source. Search your store name on Google and confirm top results refer to the same business with the same name.
31. About page depth and founder presence
AI engines look for E-E-A-T signals: experience, expertise, authoritativeness, trustworthiness. A real About page with a real founder name, real photo, and a real story (300+ words minimum) signals all four. A generic "We are passionate about quality" paragraph signals none. Write the About page as if a journalist will quote from it.
32. Citation-ready product copy (the named-attributes test)
AI engines cite stores when product copy contains specific, named attributes: materials, dimensions, country of origin, warranty terms, sustainability certifications. Open three products. Could a ChatGPT user answer "What is this made of?" without leaving your page? If no, your copy is decorative for shoppers but invisible to citation engines.
33. Structured data beyond Product (Article, FAQ, HowTo)
Beyond Product schema on PDPs, AI engines reward schema density across content. Blog posts should have Article schema. FAQ sections should have FAQPage schema. How-to guides should have HowTo schema. Run your top 5 content pages through the Rich Results Test and confirm at least one valid schema per page.
34. Real reviews with real photos
AI engines weight user-generated content as a trust signal. A product page with 30 text-only reviews ranks differently than the same page with 30 reviews including photos. Tools like Judge.me (free tier covers this) automate photo review collection through post-purchase email.
35. Cited in AI answer engines (the simplest test there is)
Open ChatGPT, Claude, Gemini, and Perplexity. Search a query your store should rank for: "best handmade leather wallets under $100," "where to buy lab-grown diamond earrings," whatever fits. See if your store is cited. If not, note which competitors are. That is your honest baseline for where GEO work is most likely to pay off.
Prioritizing the fixes: what to do Monday morning
You probably have 15-25 things flagged. Here is how to triage.
Fix first (this week): anything that blocks indexing (404s, broken canonicals, sitemap errors), anything that hurts trust (Mixed-Content warnings), and INP issues that are clearly app-driven (uninstall the worst offender, retest in 7 days).
Fix next (this month): on-page issues on your top 10 pages by traffic (titles, metas, H1s, schema). Collection descriptions on your top 5 collections. Internal linking from blog content to commercial pages.
Fix when you can (this quarter): GEO and entity work, citation-ready product copy rewrites, About page rewrite, photo review collection setup.
The point is not to fix all 35 in a weekend. The point is to know which to look at, and which ones your store actually fails. Most stores I audit have 6-12 real issues, not 35. Four hours on the audit and eight on the top six fixes beats twelve hours of guessing.
When the audit tells you to hire someone
You do not need help if your audit comes back with mostly content gaps (collection descriptions, product copy, blog depth). That is writing work. You can do it yourself.
You probably should hire help if the audit flags broken schema across product templates, INP failures requiring script audit and deferral, indexing problems where GSC shows hundreds of excluded pages, or a redirect cleanup after a catalog reshuffle that broke a year's worth of links.
The pattern: if the fix lives in theme code or a developer-only setting, paid help is usually worth the cost. If the fix lives in the Shopify admin where you can already see the field and just need to write better words, do it yourself.
Want this audit done for you?
The Studio Niza Shopify SEO service covers exactly this kind of audit, plus the fixes the audit surfaces. Custom keyword research, real schema, internal linking, indexing follow-up, and GEO. From $499 one-time.
See pricing & services →Or email contact@studioniza.com if you have a specific question about your store. I read every one.
Frequently asked questions
If you're still unsure after reading these, just send the question.
How long does a full Shopify SEO audit take? +
A Shopify SEO audit checklist this size takes 3-5 hours for a single founder doing it themselves. Split it into a technical pass (2 hours), an on-page pass (1-2 hours), and a content plus GEO pass (1 hour). Spread across a weekend it never feels like a wall of work.
Do I need to pay for an SEO audit tool to do this? +
No. The free Shopify SEO audit checklist above uses Google Search Console, PageSpeed Insights, Google's Rich Results Test, and Screaming Frog's free tier (up to 500 URLs). Together those cover every check on the list. Paid tools like Ahrefs or Semrush help with keyword research and competitor analysis, but they are not required for a foundational audit.
How often should I re-run this checklist on my Shopify store? +
A full pass every 6 months is healthy for most stores under $500K/year. A lighter monthly check on Core Web Vitals, indexed pages, and 404s in Google Search Console catches regressions early. Run an unscheduled audit any time you change themes, install or remove a major app, or restructure your collection navigation.
My store is brand new. Should I do this audit before publishing? +
If your store launched less than 6 months ago and has fewer than 25 products, this audit is overkill. Use a shorter launch-focused checklist first and come back to this one in month 6 to 9, when you have actual GSC data to work with. Auditing an empty store mostly produces noise.
What's the single highest-impact fix on the Shopify SEO audit checklist? +
For most stores in the 6-to-24-month range, it's collection page descriptions. Most Shopify collection pages have a heading and a product grid and nothing else, which means they cannot rank for category-level queries. Adding 150-300 words of unique, keyword-relevant content to your top 5 collections usually moves rankings within 6-12 weeks.
Is GEO (Generative Engine Optimization) worth doing in 2026? +
Yes, and it's still early enough that small Shopify stores can earn citations in ChatGPT, Claude, Gemini, and Perplexity that bigger competitors haven't even thought about. The work overlaps with traditional SEO (clean schema, depth on About and product pages, FAQ structured data) so you are not picking between SEO and GEO. You are doing one set of work that compounds across both surfaces.
