TL;DR
If your Shopify store isn't gaining organic traffic despite decent content, the problem is almost certainly technical - not the copy. Google Search Console's Coverage (Pages) report will show you exactly which pages are broken, duplicated, or excluded. Fix those first. Everything else in your SEO stack works better once the foundation is solid.
Why You Should Run This Before Touching Your Content
It's a common sequence: flat organic traffic → new blog posts → better product descriptions → still no movement. Across audits of 70+ Shopify brands, the bottleneck is rarely the content. It's the crawl layer underneath it.
Google has to be able to reach, render, and index your pages before any keyword optimization matters. Duplicate URLs split your ranking signals. Broken pages burn crawl budget. Thin collection pages get visited and dismissed. Fix the structural layer first and every other SEO investment you make afterward compounds faster.
Here's how to run the audit.
Step 1: Open the Pages Report in Search Console
Log into Google Search Console and go to Index → Pages (formerly the Coverage report - same data, renamed in newer interface versions).
You'll see pages sorted into four buckets:
- Error - Google tried to crawl these and couldn't index them
- Valid with warnings - Indexed but flagged for review
- Valid - Successfully indexed
- Excluded - Google found them but chose not to index them
Don't stop at the summary. The real audit is in the specific reason codes inside each bucket.
Step 2: Fix 404 Errors First
Click into "Not found (404)" and export the list.
On Shopify stores, 404s almost always come from two sources:
Deleted products or collections with no redirects. A SKU gets discontinued, the URL disappears, and no 301 redirect is set up. Google keeps attempting to crawl it. Any backlinks or internal links pointing there now go nowhere - and that link equity is gone.
Fix: In Shopify, go to Online Store → Navigation → URL Redirects. Create 301 redirects from the dead URLs to the closest live equivalent - the relaunched product URL, or the parent collection if the product is permanently gone.
Broken internal or external links pointing at dead pages. Cross-reference your 404 list with your internal link structure. Update any internal links pointing to dead URLs. If a high-authority external site is linking to a broken URL, either reach out to request a correction or confirm your redirect is in place to recapture that equity.
Why this is urgent: every 404 Googlebot hits is crawl budget wasted - budget that should be spent indexing your actual collection and product pages.
Step 3: Diagnose "Crawled - Currently Not Indexed"
This status means Google visited the page, understood the content, and decided not to include it in search results. It won't tell you why. But there are consistent patterns on Shopify stores:
Thin collection pages. Shopify's default collection template often produces pages with almost no unique text - a heading, filters, and a product grid. When multiple collections share the same structure with no differentiation, Google indexes one and skips the rest.
Fix: Add 150 - 300 words of unique introductory content per collection. Write it to directly answer what a buyer is searching when they use that category keyword. Generic filler won't move the needle.
Paginated collection pages. Page 2, page 3, etc. frequently land here. These are low-value ranking targets. Confirm they're either canonicalized back to the root collection URL or intentionally excluded - not accidentally dropped due to a misconfiguration.
New pages without internal links. A freshly published product page with no internal links pointing to it looks like a dead end to Google. Fix: link to it from relevant blog posts, related collection pages, or a "you might also like" section elsewhere in your store.
Step 4: Audit Canonical Tag Problems
Look for the error: "Duplicate, submitted URL not selected as canonical."
This is one of the most structurally damaging issues in Shopify's default architecture.
When a product lives in multiple collections, Shopify generates multiple accessible URLs:
/collections/skincare/products/vitamin-c-serum/collections/bestsellers/products/vitamin-c-serum
Both resolve. Google sees two competing pages, splits ranking signals between them, and often ranks neither one well.
Shopify is designed to handle this with canonical tags - pointing each collection-path URL back to the root /products/ URL. It usually works. But third-party apps and theme customizations frequently break this.
How to check: Pull the flagged URLs from the Coverage report. Inspect each page's source and find the <link rel="canonical"> tag. Confirm it points cleanly to the root product URL - no trailing parameters, no session tokens. Then verify that destination URL returns a 200 status code and isn't blocked by robots.txt.
If you've recently installed any app that touches URL structure or product pages, audit canonical handling immediately after installation. This is how canonical tags silently break on Shopify stores without anyone noticing.
Step 5: Check robots.txt for Accidental Blocks
Inside the Excluded section, look for pages flagged as "Blocked by robots.txt."
Most of these are intentional - cart, checkout, admin. But after theme updates or imprecise robots.txt edits, important pages occasionally get caught in a broad Disallow rule.
Navigate to yourstore.com/robots.txt and review every Disallow entry. Confirm none of them are sweeping up collection pages, product pages, or blog content you need indexed.
If you find an accidental block: remove or narrow the Disallow rule, then use the URL Inspection tool in Search Console to request an immediate recrawl rather than waiting for Google's next pass.
Step 6: Read the Crawl Stats Report
Go to Settings → Crawl Stats for a structural health check on your store.
Three patterns worth flagging:
- High crawl count, low indexed page count - Likely caused by duplicate parameter-based URLs from faceted navigation, or a large number of thin pages Google dismisses after visiting.
- Crawl spikes followed by indexation drops - Often means Google recrawled pages after a theme update or app install and deindexed them due to quality or duplication issues. Cross-reference timing with your changelog.
- High percentage of 404 or redirect responses - Crawl budget is being burned on broken or chained redirects. Consolidate redirect chains so Googlebot reaches its destination in one hop.
Fix Priority Order
If you've uncovered multiple issues, work through them in this sequence:
- 404 errors on pages with backlinks or internal links - highest priority; you're losing link equity
- Canonical tag problems on product pages - silently diluting your most important ranking signals
- "Crawled - currently not indexed" collection pages - add unique content and internal links
- Accidental robots.txt blocks - confirm and remove
- Redirect chain consolidation - single-hop redirects only
After each fix, use the URL Inspection tool to request reindexing. Don't wait for Google's crawl cycle.
Expected Results
Brands that run this audit and fix what they find typically see indexation improve 30 - 50% within two to four weeks. That's when content optimization, internal linking, and backlink work actually starts to register - because Google can finally crawl and index the store properly.
Run this audit monthly. New products, new apps, and theme updates introduce new crawl errors constantly. The stores that catch and resolve these issues quickly are the ones that build compounding organic growth instead of watching rankings stall for reasons they can't identify.
If you'd rather have this done for you, New Seas runs technical and content SEO specifically for Shopify brands. Visit newseas.co to see how we work.












