Shopify SEO Audit with Claude: the step-by-step process
How I audit a Shopify store in 2-3 hours instead of 2 days using Claude. Real workflow, copy-ready prompts and what the AI should never do alone.
In this article
The first full SEO audit I ever ran on a Shopify store, back in 2022, took me nearly two days. The last one, in early 2026, I wrapped in just over three hours. The difference is not that I got twice as fast. It’s that I handed Claude everything Claude handles well, and I kept for myself what a human still has to do.
This post is the playbook I use. Not “use AI to do SEO”. Concrete prompts, ordered phases, what I verify by hand and the one mistake you should not make. My running reference is a cosmetics brand I audited in early 2026, 200+ SKUs, a multilingual catalog and the classic history of having tried half the Shopify app store over the last two years.
Key Takeaways
- Claude cuts a Shopify SEO audit from roughly 16 hours to 2-3 hours, if you hand it structured data instead of asking it to crawl.
- The audit runs in 4 phases: structural, content, technical, prioritization. Claude processes, you verify.
- Shopify has well-known SEO limits, such as fixed
/collections/and/products/paths and limited URL rewrites (Shopify Help, 2025).- Claude Sonnet 4.5 accepts up to 200,000 tokens of context (Anthropic docs, 2025), enough to load a full crawl of 300-500 URLs.
- Never let Claude write the final client report without your review. It will invent statistics if allowed, and it invents them convincingly.
Why does Claude speed up SEO audits without replacing human judgment?
In a traditional SEO audit, 60-70% of the time goes into sorting data. Reviewing 300 URLs in Screaming Frog, opening sitemaps, cross-checking with Google Search Console, tabulating. The actual analysis, deciding what matters and what doesn’t, is a minority of the clock. Claude flips that ratio.
I saw the practical difference when I loaded the Screaming Frog CSV export from that cosmetics brand (200+ products, 40 collections, 6 languages) into a Claude Sonnet 4.5 conversation. Within ten minutes I had URLs grouped by type, broken canonicals identified and a first shortlist of problems. What used to take me half a morning in a spreadsheet.
The real advantage isn’t raw speed. It’s that by delegating classification, you reach the qualitative analysis with more mental energy. In my experience, that improves the quality of the final report more than any hour savings.
Does this mean Claude runs SEO audits? No. Claude processes data you feed it, spots patterns you have learned to look for, and drafts text you review. It’s a very fast junior analyst. It still needs a senior telling it what to look at.
What do you need before starting?
Don’t open Claude yet. Without the right inputs, the AI invents things or gives generic answers. Here’s what I have ready before I write the first prompt. Six inputs, nothing exotic, all reachable in under an hour.
Minimum access and exports
- Google Search Console, viewer access. I export the last 16 months of queries, pages, countries and devices as CSV.
- Google Analytics 4, to cross organic traffic with conversions. Sessions by landing page, last 90 days.
- XML sitemap for the store. In Shopify it lives at
/sitemap.xmlby default, with sub-sitemaps per resource type (Shopify Help, 2025). - Screaming Frog crawl (or similar). CSV export with URL, status code, title, meta description, H1, canonical, word count, inlinks.
- List of installed apps in Shopify. I pull this manually from the admin under Apps, and copy the list. More on why it matters in the technical phase.
- Core Web Vitals from PageSpeed Insights for five templates: home, collection, product, blog, cart.
Business context
Without business context, Claude prioritizes badly. Before the first prompt I send it two paragraphs explaining: what the brand sells, the average ticket, which collections drive the most revenue, which markets are priorities. For the cosmetics brand, the fact that flipped the whole prioritization was that 70% of revenue came from 12 SKUs. Auditing the other 188 the same way made no sense.
Citable capsule: Shopify’s sitemap is generated automatically and split into
sitemap-products-1.xml,sitemap-collections-1.xml,sitemap-pages-1.xmlandsitemap-blogs-1.xmlfiles, all reachable from/sitemap.xml. The official help docs confirm this (Shopify Help, 2025).
Phase 1: Structural analysis (URLs, canonicals, sitemap)
The structural phase checks whether Google can crawl and index the store without wasting effort. In Shopify, paths are fixed: /products/, /collections/, /pages/, /blogs/. You can’t change them (Shopify Help, 2025). That simplifies the audit because you know exactly which patterns to look for.
At the cosmetics brand, the first structural finding was brutal. Product URLs inside collections (/collections/masks/products/clay-mask) were being indexed in parallel with the canonical URLs (/products/clay-mask). Canonical was misconfigured in the theme. Result: 200 duplicated products in Google’s index.
The prompt I use to analyze the crawl
Act as a technical SEO consultant specialized in Shopify.
I'm attaching a Screaming Frog CSV export with 487 URLs.
Columns: Address, Status Code, Title, Meta Description,
H1, Canonical Link Element 1, Indexability, Word Count.
Analyze and return:
1. A count by URL type: /products/, /collections/,
/pages/, /blogs/, other.
2. URLs with status != 200, grouped by code.
3. URLs where Canonical != Address, indicating whether the
canonical points to a URL on the same domain or elsewhere.
4. URLs /collections/X/products/Y that should have a canonical
pointing to /products/Y but don't.
5. Pages with Word Count < 100 words.
Return the top 20 worst cases per section, not the full list.
If information is missing for a conclusion, say so instead of guessing.
The last line of the prompt, “if information is missing say so instead of guessing”, saves me errors every week. Without it, Claude fills gaps with plausible but false assumptions.
What I verify by hand after phase 1
Claude returns a list. I open three or four URLs from the top of each category and confirm in the browser that the problem is real. Broken canonicals, unexpected 404s, uncontrolled URL parameters. The cost is 15 minutes. The benefit is not handing the client a report with a phantom finding.
Phase 2: Content analysis (meta descriptions, H1, duplicates)
The content phase checks whether each page says something useful to Google and to the user. Shopify by default generates empty meta descriptions or grabs the first 160 characters of the product, which yields snippets without a hook. Google Search Central confirms Google rewrites meta descriptions when it finds them unhelpful (Google Search Central, 2025), but a well-written snippet still moves CTR.
At the cosmetics brand, Claude flagged that 143 of the 200 products shared the same meta description: the template “[Product name] | [Brand name] natural cosmetics Spain”. No hook, no USP, no call to action. That single finding triggered three weeks of work with the client’s copywriter.
Before/after comparison of audit time
The prompt I use for meta descriptions and H1s
Attached are 200 rows of Shopify products with columns:
URL, Title, Meta Description, H1, Product Type, Collection.
Return:
1. Percentage of Meta Descriptions that are duplicated or share
a repeated template (>5 products with the same pattern).
2. Meta Descriptions with length outside 120-158 characters.
3. Titles where the brand name appears before the product name
(anti-pattern for long tail).
4. H1 that repeats the Title exactly (not an error, but a sign
of missed semantic variation).
5. The 10 products with the worst meta description, with a
rewrite proposal of 145-155 characters each, in US English,
no emojis, benefit first.
Don't invent product details that aren't in the rows.
Why do I specify “US English”? Because without that cue Claude mixes UK and US spellings. A meta description with “color” converts better on a US-targeted store than “colour”, and the reverse on a UK site.
Phase 3: Technical analysis (Core Web Vitals, schema, installed apps)
The technical phase is where Claude needs the most verification. It covers schema, Core Web Vitals and installed apps. Google has used Core Web Vitals as a ranking signal since 2021 (Google Search Central, 2020, updated 2024). Shopify generally scores worse than WordPress on LCP because of the JavaScript in premium themes.
At the cosmetics brand there were 34 installed apps. Thirty-four. Every Shopify app tends to inject JavaScript into the theme, even if it’s no longer actively used. Claude helped me cross the list of apps with their known performance impact, but I insisted on checking each one manually in the theme editor before recommending any uninstall.
Prompt to cross-check apps and performance
Here is the list of Shopify apps installed on the store:
[paste list of 34 apps with exact names]
These are the Core Web Vitals for the home, a collection and
a product template, measured in PageSpeed Insights on [date]:
[paste LCP, INP, CLS metrics for mobile and desktop]
1. For each app, indicate whether it's known to inject JavaScript
into the frontend (if you don't know with certainty, say so).
2. Propose 5 candidate apps to review for LCP impact, based on
what the app does (not on rumors).
3. Indicate which Core Web Vitals metrics are outside Google's
recommended range and what the technical cause could be
(for example, third-party JavaScript, unoptimized images,
web fonts not preloaded).
Distinguish between "this is safe" and "this is plausible but
needs verification". Don't assume a slow app is the cause if
you don't have evidence.
In that audit, of the 34 apps, 11 were no longer actively used but still loaded scripts. We uninstalled 9 (kept 2 for pending annual contracts). Product LCP dropped from 3.8s to 2.1s over the following four weeks.
Schema with Claude: useful, but verify
For schema, I use Claude to check whether the theme’s JSON-LD covers Product, Offer, AggregateRating, BreadcrumbList and Organization. I feed it the rendered HTML of a product template and ask it to extract and validate the JSON-LD against the official Schema.org vocabulary. Then I validate with Google’s Rich Results Test. That second validation is not optional.
Phase 4: Prioritization and final report
Prioritization is where I separate consultant from analyst. Having 80 findings is useless. The client needs to know what to do Monday morning. Here Claude helps me structure, but the impact and effort scoring I do myself, and I justify it in the report.
I use a classic impact/effort matrix with four quadrants: quick wins (high impact, low effort), big projects (high impact, high effort), fillers (low impact, low effort) and drop (low impact, high effort). Claude sorts findings into that matrix based on criteria I define: potential traffic, estimated hours, dependency on external resources.
Prompt to prioritize findings
Attached are 62 audit findings already classified by phase.
Columns: ID, Phase, Description, Affected URLs, Supporting data.
For each finding, estimate:
1. Expected SEO impact (High / Medium / Low) and justify in one
line. Use as a reference the volume of affected URLs and
whether the problem blocks indexing, damages CTR or stalls
ranking.
2. Implementation effort (Hours < 2, 2-8, 8-24, > 24).
3. Dependency (SEO can do it alone / needs dev / needs copy /
needs business decision).
Group them in 4 impact/effort quadrants and give me a top 10
of quick wins ordered by impact/effort ratio.
When you don't have enough information to estimate, write
"insufficient information" instead of guessing.
The final report in Notion or PDF I build myself from this output. Claude gives me the structure and 70% of the text. The client-specific nuance, the tone, the risks only a human in contact with the business can see, that part doesn’t get delegated.
What Claude should NOT do
This is the section missing from almost every “AI for SEO” article. There are three things Claude shouldn’t do alone, and if you let it, you’ll end up looking bad in front of the client.
It can’t invent statistics
If you ask “what % of Shopify stores have canonical misconfigured?”, Claude will give you a number. That number probably doesn’t exist in any real study. Anthropic explicitly documents that its models can hallucinate plausible but false figures (Anthropic docs, 2025). Rule: if a figure doesn’t come from an input I gave it, it doesn’t go into the report.
It shouldn’t skip manual verification
When Claude tells you “these 15 URLs have a broken canonical”, open three in the browser and confirm it. Screaming Frog exports sometimes have misaligned columns, Shopify renders can differ between mobile and desktop, and there are theme setups that switch canonicals based on country. A report with a single invented finding loses credibility for the whole document.
It doesn’t write the client report without you
Not even when I’m in a hurry. The final report goes through my full edit. Tone, prioritization, risks, client-specific industry language. If I deliver a report that reads like ChatGPT, I lose the part of my job that justifies my rate. And the client notices sooner than you’d think.
FAQ
Does Claude work for any Shopify or only small stores?
Yes, it works for stores of any size, with one caveat. Claude Sonnet 4.5 accepts up to 200,000 tokens of context (Anthropic docs, 2025), which allows crawls of up to 400-500 URLs in a single conversation. Above that, it’s better to segment the analysis by URL type or by collection.
Can I use Claude without Screaming Frog?
It depends on size. For stores under 50 products, you can paste the data manually or use the Shopify admin’s product view as input. For larger stores, you need a crawler. Screaming Frog is the standard but there are alternatives like Sitebulb or JetOctopus. Claude processes any well-structured CSV.
What about international SEO on Shopify?
Usually it makes things worse if the store runs Shopify Markets misconfigured. Hreflang tags generate automatically, but if content isn’t fully translated or URLs don’t follow the /es/, /fr/, /en/ structure, Google indexes duplicated versions. Claude detects the pattern quickly if you hand it the full multilingual sitemap. The official help covers the recommended structure (Shopify Help, 2025).
How much does this audit cost in Claude tokens?
Usually between 150,000 and 300,000 tokens per full audit, split across several conversations. On the Claude Pro plan or via direct API (Anthropic pricing, 2025), the token cost of an audit like this is less than one hour of your time. The limit is usually the context window, not the price.
Can I deliver this report exactly as Claude gives it to me?
Yes, and you’ll regret it. 80% of the text can come from Claude, but the structure, the specific prioritization, the tone for that particular client and the factual review come from you. An unedited report gives away the use of AI within two pages. The client notices and your rate loses its justification immediately.
Conclusion
Shopify SEO audits haven’t gotten easier thanks to Claude. They’ve gotten faster in the mechanical part, which leaves more room for the qualitative analysis where a consultant adds real value. At the cosmetics brand I mentioned at the start, the final report had the same 60 pages it would have had without AI. The difference is I put it together in three hours instead of sixteen, and the prioritization was better because I reached the end with enough brain left to think.
If you’re starting to use Claude for audits, begin with the structural phase. It’s the least risky, the one with the most verifiable outputs, and the one that saves you the most time from day one. The rest you learn there.
If you’d rather I run it for you, book 30 minutes and I’ll tell you what I’d find in your store without touching anything. 30-min session · No commitment. Or see how I work with AI assistants applied to marketing if you want to bring this into your in-house team.
Could your ad campaigns
perform better?
30 minutes to review your situation and tell you exactly what I would change. No pitch, no sales proposal.