Table of contents (8 sections)
TL;DR
Most “Shopify SEO audit” results are app listings or agency lead funnels. This is the opposite: the exact, repeatable audit I run on stores I operate, scoring classic SEO and the GEO layer that decides whether AI search quotes your pages.
I score a store on a 100-point rubric, run it across the whole catalog to find the real gaps, prioritize the fixes that move the most pages at once, then re-score. An open-source tool I built does the heavy lifting. On one store I run, the pages I audited averaged 48 out of 100; the three I rebuilt landed at 95, 96, and 95.
Search “shopify seo audit” and you mostly get two things: an app promising a one-click score, or an agency offering a free audit that turns into a sales call. Useful, sometimes. But neither shows you the actual method, and almost none of them check whether your pages are ready for AI search.
I audit my own stores because I run the ad accounts and the SEO myself, so the audit has to be repeatable and honest, not a lead magnet. Below is the whole process: the rubric I score against, what it finds on a real catalog, the GEO half that standard audits skip, and the open-source tool I built so I do not have to do it by hand across hundreds of pages.
What is a Shopify SEO and GEO audit?
A Shopify SEO audit checks whether your pages can rank in Google: titles, structure, schema, internal links, speed. A GEO audit adds a second question that matters in 2026: can an AI system read and cite your pages? Both draw from the same content, so I run them as one pass rather than two.
The reason to combine them is overlap. Ahrefs, analysing 863,000 result pages, found that 38% of pages cited in Google AI Overviews also rank in the organic top 10 (Ahrefs, March 2026), and Google’s AI Mode alone passed 1 billion monthly users (Google, May 2026). Good SEO feeds AI citations, so a modern audit should measure both in one scorecard instead of treating GEO as a separate project. I wrote the full fix list in my Shopify SEO checklist; this piece is about the audit that tells you which fixes you actually need.
How do I score a store?
I score every page against a fixed 100-point rubric so the result is a number I can compare over time, not a gut feeling. Five categories, weighted by how much they move rankings and citations:
| Category | Points | What it measures |
|---|---|---|
| Copy quality | 20 | Is there real, useful, on-topic copy, or an empty tagline? |
| SEO + commercial intent | 25 | Title, meta, headings, and whether the page matches what a buyer searches |
| Curation | 20 | Are the right products grouped, filtered, and sub-organized? |
| Technical + schema | 15 | Structured data, breadcrumbs, machine-readability (the GEO base) |
| UX + conversion | 20 | Hero image, layout, trust signals, mobile |
Product pages get the same treatment with one addition: a dedicated GEO and AI-citation category, plus a feed-safety check I will come back to. The rubric is also tier-aware. A 4,000-product mega-hub is judged differently from a 20-product sub-collection, because a hub needs filters and a curated structure that a small collection does not. The point of scoring first is boring but important: you cannot prioritize what you have not measured.
What does the audit actually find?
Here is the uncomfortable part, from a real run. When I scanned 250 collections on a store I operate, close to none had structured data and about 40% had no hero image. On the six pages I then scored in full against the rubric, the mean was 48 out of 100, and the worst, a hub with roughly 4,000 products, scored 38: no hero image, no filters, no schema. These are not fringe pages, they are the ones a catalog leans on.
What made it useful was that the same gaps repeated, which meant one fix would work at scale. Six gaps came up across the pages I audited, whether I scanned them shallowly or scored them in full:
Most common gaps (share of collections missing each)
Source: my own audit (first-party). The 250-collection figures come from a shallow gap-scan; the “6” figures are from the full rubric audit of six pages. Above-grid copy was bimodal too: either empty or a long wall of text, almost never the 40 to 120 word band that reads well.
The schema gap was the one that stung, because it is both a ranking and a GEO problem, and it mirrored my blog side, where roughly 300 of 309 posts scored near zero on schema too. When one gap appears on nearly every page, it stops being a page-by-page fix and becomes a template fix, which is exactly the kind of thing an audit is supposed to surface.
The GEO half of the audit, and what most SEO audits skip
A standard SEO audit stops at rankings. The GEO half asks whether an AI system can parse and trust the page. Four checks I always run, with the nuance the hype leaves out.
Schema, for machine-readability, not magic. I check that Product, Collection, FAQ, and Breadcrumb schema exist and match what the page shows. But I am honest about why: Google states there is “no special schema.org structured data that you need to add” for its AI features (Google Search Central, December 2025). Schema earns rich results and clean machine-readable facts. It is not a switch that forces a citation.
The llms.txt check. I open the store’s /llms.txt. On Shopify you likely already have one: Shopify auto-generates an /agents.md file, and /llms.txt mirrors it unless you add a custom template (Shopify, May 2026). The audit item is not “create one,” it is “check what Shopify already serves and customize it only if the default is thin.”
The robots.txt check. GEO fails silently if you block the bots that feed AI answers. The trap is Google-Extended: blocking it keeps you out of Gemini training but does not affect your Google Search ranking (Google). Default Shopify robots.txt names none of these, so they are allowed. Make that a deliberate choice, not an accident.
| Crawler | Feeds |
|---|---|
| OAI-SearchBot | ChatGPT search (allow) |
| PerplexityBot | Perplexity search, not model training |
| Claude-SearchBot | Claude search relevance |
| Google-Extended | Gemini training only, not Search ranking |
Product feed safety. On product pages I check that the Product and Offer schema mirror the visible price and availability exactly. Get it wrong and Google Merchant Center can disapprove the item, and an AI agent can quote a stale price, which is worse than not being quoted. This is the one GEO check that also protects your paid shopping feed.
What tools do I use, and the one I built
The honest, cheap answer first. Shopify Search & Discovery for the faceted filters most of my collections were missing. Google Search Console to see which pages already earn impressions, so I audit the ones with a pulse first. That covers the manual version.
The problem is scale. Scoring 250 collections by hand, then rewriting copy and schema for each, is not realistic for a solo operator. So I built claude-shopify-growth, an open-source Claude Code kit (MIT licensed). It has two modules, collections and products, four skills each, and it runs the exact audit above:
- collection-analyze scores one page on the 100-point rubric and lists the gaps.
- collection-audit-pipeline scans the whole catalog, then deep-scores the worst pages and hands back a prioritized queue.
- collection-content-deep writes the tier-aware copy, comparison table, and FAQ.
- collection-mega-hub-optimize chains those into an end-to-end run from baseline to a target score, refusing to ship a page that fails any of 18 hard checks: title over 60 characters, hallucinated internal links, missing schema, and so on.
The product module mirrors this and adds the feed-safety gate, where the schema price and stock must match the visible ones byte for byte before the page ships. It is free, so here is the unglamorous truth: two of those hard gates exist because they broke on my own store. An FAQ rendered empty on a live page because the schema was nested the way the examples show, when the theme wanted a flat question-and-answer array. Another time deep content saved correctly but never appeared, because the collection used a custom theme template the code did not check for. Both are now gates that stop the run. That is the difference between a tool built in a tutorial and one built on a store that has to make money. The kit reaches the store the same way I described in how I connect Claude to my Shopify stores, and it is the Shopify sibling of my open-source Google Ads audit skill.
Worth it if you run dozens or hundreds of collections and the manual audit has become the bottleneck. Skip it if you sell ten products and can score them by hand in an afternoon. The rubric above is the real asset; the kit just runs it faster and refuses to ship a page that fails a gate.
How do I prioritize the fixes?
An audit that hands you 200 issues is a to-do list nobody finishes. The value is ranking them, and the rule is simple: fix what moves the most pages for the least work first. On my store that meant three levers, in order.
- One schema template edit. Because the JSON-LD gap was on nearly every collection, a single Liquid template change added structured data to more than 100 collections at once. Highest impact on the board.
- Turn on faceted search. Most collections offered only a price filter. Enabling brand, type, and size facets fixed curation across the catalog from one app, not one page.
- Bimodal copy. A 40 to 120 word intro above the grid plus a real FAQ below it, applied first to the collections that already earn impressions in Search Console.
Then I re-score, because an audit is not done until the number moves. Three collections I rebuilt this way went from 55, 52, and 52 on the rubric to 95, 96, and 95, and the biggest gains landed in the two categories the GEO layer cares about most: technical and schema, and SEO intent.
Three collections I rebuilt: rubric score, before → after (out of 100)
Source: my own collection-analyze rubric (first-party), three collections I rebuilt. Separately, a six-page baseline audit averaged 48/100. This is a quality-score lift, not a traffic claim; the AI-citation upside I am still monitoring, with no hard number yet.
Frequently asked questions
What is the difference between an SEO audit and a GEO audit?
An SEO audit checks whether a page can rank in Google: titles, structure, schema, links, speed. A GEO audit adds whether an AI system can read and quote the page: machine-readable facts, answer-first passages, and crawler access. They share the same foundation, so I run them as one scored pass rather than two separate projects.
What tools do I need to audit a Shopify store’s SEO?
At minimum, Google Search Console to see what already earns impressions, and Shopify Search & Discovery for faceted filters. To score and fix at scale I use my own open-source kit, claude-shopify-growth, which runs the rubric and the fixes. A crawler like Screaming Frog also works for the pure technical pass.
How often should I audit my Shopify store?
A full catalog audit once or twice a year, plus a quick re-score of any collection you rewrite or that loses impressions in Search Console. The point is to catch template-level gaps, like missing schema, that silently affect every page at once.
Can I audit my store for AI search like ChatGPT, Perplexity, or AI Overviews?
Yes. Check that your key pages have accurate schema, answer-first copy, and a robots.txt that allows OAI-SearchBot, PerplexityBot, and Claude-SearchBot. Rank the page first, since AI answers heavily reuse top-ranking pages, then make it quotable. There is no paid shortcut.
Is the open-source audit tool free?
Yes, it is MIT licensed and free to use. It runs inside Claude Code and needs a Shopify MCP connector with Admin API access to read your store’s data and push the fixes. Your private product knowledge stays in a git-ignored folder and is never shipped.
The verdict: audit in this order
The whole audit is five steps, and the order is what makes it efficient:
- Score each page on the rubric, so you have a number instead of a hunch.
- Scan the whole catalog, so you find the gaps that repeat at the template level.
- Add the GEO checks: schema accuracy, the llms.txt or agents.md file, robots.txt crawler access, and product feed safety.
- Prioritize template-level fixes that touch 100 pages before the one-off tweaks that touch one.
- Re-score to confirm the number moved before you call the audit done.
Half your future visibility is an AI answer, not a blue link, so the GEO checks are no longer optional. But the sequence matters more than any single step: measure, find the repeats, fix the template, prove it.
If you run a handful of collections, you can do this by hand with the rubric above. If you run hundreds, the tool is on GitHub and it is yours to copy. Either way, once the audit is done, my Shopify SEO and GEO checklist is the fix list to work through.