Ecommerce SEO at Scale with Claude Code
Optimize thousands of product pages, generate schema markup, detect cannibalization, and automate meta tags for ecommerce sites using Claude Code.
Key Takeaways
- Manual meta tag optimization breaks at scale: Writing unique title tags for 10,000 product pages by hand is not a strategy — it's a backlog that never clears
- Claude Code reads your product catalog: Feed it a CSV export from your CMS and it rewrites meta tags, flags duplicates, and outputs a clean file ready for bulk import
- Schema markup is where most ecommerce sites leave ranking equity on the table: Product + Offer JSON-LD at scale takes minutes to generate per category type, not hours
- Cannibalization in ecommerce is structural: Color variants, size pages, and overlapping category filters compete against each other in ways that are invisible until you map the full catalog
- Category page internal linking is a crawl budget and link equity problem: Claude Code can audit your faceted navigation and suggest which filter combinations to canonicalize or noindex
- Start with your highest-revenue category first and prove the workflow, then replicate across the catalog
Ecommerce SEO managers do not have a content problem. They have a scale problem.
A site with 8,000 product pages where most share templated meta descriptions is not unusual — it's the norm. Most platforms generate meta tags automatically from product titles and descriptions. Most of those templates are SEO debt that compounds silently while you work on other things.
The math is brutal. If it takes 10 minutes to research and write a good title tag and meta description for one product page, optimizing 5,000 pages takes 833 hours. That's 20 weeks of full-time work for a task that needs to be repeated every time the catalog changes.
Claude Code changes the unit of work from "one page at a time" to "the full catalog at once." This guide shows the workflows that make that possible.
The Ecommerce SEO Scale Problem
Ecommerce sites face a unique category of SEO problems caused by catalog size, dynamic URL generation, and the structural overlap between product variants, category filters, and search parameters. At 5,000+ product pages, these problems cannot be managed manually.
The three root causes that create most ecommerce SEO debt:
- Templated content: CMS platforms auto-generate title tags and meta descriptions by stitching together product name, brand, and category. This produces duplicate or near-duplicate metadata across hundreds of similar products.
- Faceted navigation: Filter URLs (e.g.,
/shoes/color:red/size:10) create thousands of indexable pages that compete with each other and dilute crawl budget. - Variant proliferation: A single product sold in 12 colors generates 12 URLs that can each rank — or cannibalize — for the same queries.
Google has been explicit about thin and duplicate content on ecommerce sites. Their guidance on large site crawling points to faceted navigation and URL parameters as the primary crawl budget drains for ecommerce.
Claude Code does not replace the architectural decisions. You still need to decide your canonicalization strategy. What it does is run the analysis that informs those decisions across your entire catalog — without requiring you to examine each URL by hand.
Bulk Meta Tag Optimization
Bulk meta tag optimization for ecommerce is the process of rewriting title tags and meta descriptions across thousands of product pages using structured catalog data, rather than editing pages individually. Claude Code reads a product catalog export and generates SEO-optimized metadata at scale, using product attributes, category context, and search intent as inputs.
Start with a CSV export from your CMS or PIM system. The minimum columns you need:
| Column | Why It Matters |
|---|---|
| URL | Identifies the page for import |
| Product name | Primary input for title tag |
| Category | Provides query context |
| Brand | Brand modifier often has search volume |
| Key attributes | Color, size, material — the differentiators |
| Current title tag | Baseline for before/after comparison |
| Current meta description | Shows what needs replacing |
Drop the CSV into your Claude Code project directory, then run:
claude
Then give it this prompt:
You have access to products.csv which contains our product catalog.
Rewrite the title tag and meta description for each row following these rules:
Title tag:
- Max 60 characters
- Format: [Product Name] - [Key Attribute] | [Brand]
- Include the primary keyword naturally (use the category column to infer intent)
- No duplicate titles across the file
Meta description:
- Max 155 characters
- Lead with the primary benefit or differentiator
- Include a soft CTA ("Shop now", "Free shipping over $X")
- No generic descriptions
Output a new CSV with columns: URL, new_title, new_meta_description, character_count_title, character_count_meta
Flag any row where you cannot generate a unique title due to insufficient attribute data.
Claude Code processes the full file and outputs a clean CSV. For a well-structured catalog, the processing is significantly faster than manual editing — the actual time depends on catalog size, attribute completeness, and how much review the flagged rows need. The output flags any product with missing attribute data so you know exactly where to fill gaps.
The workflow compresses what used to be weeks of manual work into a much shorter cycle: export, run the prompt, review the flags, import the output. Repeat when the catalog updates.
CC for SEO Command Center
Pre-built Claude Code skills for technical audits, keyword clustering, and GSC/GA4 analysis.
Join the WaitlistBe the first to get access
Product Schema Markup Generation
Product schema markup (JSON-LD) enables rich results in Google Search, including price, availability, ratings, and shipping information. Generating and maintaining accurate Product + Offer schema across thousands of ecommerce pages requires a systematic approach — manual implementation at catalog scale introduces errors and inconsistencies that suppress rich result eligibility.
Most ecommerce platforms have schema plugins or built-in support, but they frequently generate incomplete markup. Common gaps:
- Missing
priceValidUntilon Offer entities (required for price rich results in many cases) - Static
availabilityvalues that don't reflect live inventory - No
aggregateRatingeven when review data exists in a separate system brandentity treated as a string instead of aBrandobject
Claude Code can generate schema for each product type in your catalog following schema.org specifications. Start by defining your product types:
ls product-types/
# boots.json laptops.json clothing.json furniture.json
Create a template definition file per type:
{
"product_type": "footwear",
"required_attributes": ["name", "sku", "price", "currency", "availability", "brand", "color", "size_range"],
"optional_attributes": ["aggregate_rating", "review_count", "image_urls", "gtin"],
"offer_conditions": ["NewCondition"],
"price_valid_days": 30
}
Then prompt Claude Code:
Using footwear-template.json as the schema definition and products-footwear.csv as the data source,
generate valid JSON-LD Product schema for each row.
Requirements:
- Use schema.org/Product as the type
- Nest an Offer entity with priceValidUntil set to 30 days from today (2026-03-06)
- Map "in_stock" values to schema.org/InStock and "out_of_stock" to schema.org/OutOfStock
- If aggregate_rating column has a value, include AggregateRating
- Output one JSON-LD block per product, with the URL as a comment header
- Validate that no required fields are empty before outputting
Save output to schema-output-footwear.json
The output file contains production-ready schema blocks you can inject into page templates or pass to your dev team for implementation. Run the same prompt for each product type with its corresponding template.
For catalog updates, rerun only on changed rows. Claude Code can diff two CSV exports and identify which SKUs changed, then regenerate schema only for those rows.
Cannibalization Detection Across Product Categories
Keyword cannibalization in ecommerce occurs when multiple product pages, category pages, or filtered navigation URLs compete for the same search queries, causing Google to split ranking signals between them rather than consolidating authority on a single page. Ecommerce sites with large catalogs and faceted navigation are structurally prone to cannibalization at a scale that is impossible to audit manually.
The most common cannibalization patterns in ecommerce:
- Variant cannibalization:
/shoes/running-shoes-blackand/shoes/running-shoes-black-size-10both targeting "black running shoes" - Category vs. product overlap: A category page for "wireless headphones" and individual product pages for specific models both optimizing for the same head term
- Filter URL competition:
/laptops/ram:16gband/laptops/use:gamingboth ranking for "16GB gaming laptop"
To detect this at scale, export your GSC data and your URL inventory together:
python3 fetch_gsc.py --days 90 --output gsc-urls-queries.json
Then run the cannibalization analysis:
You have two files:
- gsc-urls-queries.json: GSC data with URL, query, impressions, clicks, average position
- url-inventory.csv: Full URL list with page type (product, category, filter), canonical status
Find cannibalization patterns:
1. Identify queries where 3+ URLs are appearing in GSC with impressions
2. Flag URLs of type "filter" that rank for the same queries as their parent category
3. Find product URLs competing with category URLs for head terms
4. For each cannibalization cluster, identify the strongest URL by clicks + position
5. Output a report grouped by query, showing all competing URLs and the recommended consolidation action (canonical, noindex, or 301)
The output gives you a prioritized list of cannibalization clusters, ordered by combined impression volume. Fix the highest-volume clusters first — those are the ones actively splitting link equity.
Get Weekly Claude Code SEO Tips
Workflows, skills, and tactics for SEO professionals using Claude Code.
No spam. Unsubscribe anytime.
Category Page Optimization and Internal Linking
Category pages in ecommerce function as hub pages for product subcategories and drive a disproportionate share of organic traffic. Optimizing category pages at scale means auditing faceted navigation for crawl budget waste, identifying internal linking gaps between related categories, and ensuring link equity flows to high-priority product pages rather than thin filter combinations.
Category page internal linking is a crawl budget problem before it's a rankings problem. If Googlebot spends 40% of its crawl budget on filter URLs with duplicate content, your high-value category and product pages get crawled less frequently.
Start by mapping your internal link structure:
# Export your sitemap URLs and internal link graph
claude "Parse sitemap.xml and internal-links.csv.
Map which category pages link to which subcategories and products.
Identify:
1. Category pages with fewer than 5 inbound internal links
2. High-revenue categories (from revenue-by-url.csv) with weak internal link equity
3. Filter URL combinations that have more than 100 inbound links but should be noindexed
4. Missing cross-links between related category pages
Output as a prioritized action list with current link count and recommended change."
For faceted navigation decisions, the guidance from Google's URL parameter documentation is to use canonical tags for filter URLs that don't represent meaningfully different content. Claude Code can evaluate which filter combinations in your catalog meet that threshold:
claude "Review filter-urls.csv which contains all faceted navigation URLs and their GSC data.
Apply this decision logic:
- If a filter URL has unique clicks and appears for queries not covered by the parent category: recommend KEEP + canonical to self
- If a filter URL has impressions but zero clicks and duplicates parent category content: recommend noindex
- If a filter URL has neither impressions nor clicks in 90 days: recommend 301 to parent
Flag any filter URL with inbound links before recommending noindex — those need redirects."
For the internal linking rebuild, export the output as a link insertion brief for your content team. Each row in the brief specifies the source page, target page, and suggested anchor text based on the target page's primary keyword. This removes the guesswork from internal linking decisions and gives your team an executable task list rather than a vague directive.
Canonical cleanup reduces the number of low-value URLs competing for crawl budget. Targeted internal linking concentrates link equity on your priority pages. Track crawl frequency changes in Google Search Console crawl stats after implementing — the signal shows up there before it appears in rankings.
FAQ
How does Claude Code handle a product catalog of 50,000+ SKUs?
Claude Code works within a context window, so feeding 50,000 rows in a single prompt is not practical. The correct approach is to process the catalog in batches by category or product type. Write a shell script that splits your CSV by category, runs each batch through Claude Code, and merges the outputs. For very large catalogs, this process runs overnight and produces a complete output file by morning.
Can Claude Code generate schema markup that passes Google's Rich Results Test?
Yes, if you give it the correct template and validate the output. Claude Code follows schema.org specifications and generates valid JSON-LD. However, always run a sample of the output through Google's Rich Results Test before deploying at scale. Review the flagged rows where required fields were missing — those will not pass validation.
What data does Claude Code need for cannibalization analysis?
At minimum: a GSC export showing URL, query, impressions, clicks, and average position over 90 days, plus your URL inventory with page type labels. Richer data (page revenue, conversion rate by URL) lets Claude Code prioritize cannibalization clusters by business impact rather than just impression volume.
How do I handle product variants that need separate URLs for SEO?
This is a canonical strategy decision, not an analysis one. Decide first: do variants get their own indexable pages (common for color as a search modifier) or do they consolidate to a parent product URL? Once you have the strategy, Claude Code can audit your existing implementation against that rule and flag any variant URLs that violate it. See the full Claude Code for SEO workflow guide for more on implementing canonical strategies at scale.
How often should I re-run bulk meta tag optimization?
Run it whenever the catalog changes materially: new product lines, seasonal refreshes, or pricing changes that affect your CTR copy. Set a recurring reminder to pull a fresh catalog export quarterly. For high-velocity catalogs (daily product additions), build the meta tag generation into your product publishing workflow using the Claude Code SDK, so new products get optimized metadata on creation.
Does this replace a dedicated ecommerce SEO platform like Botify or Lumar?
No. Platforms like Botify and Lumar provide continuous crawl monitoring, JavaScript rendering analysis, and historical trend data that Claude Code does not replicate. What Claude Code adds is the ability to run ad hoc analysis across your catalog data and make decisions that those platforms surface but do not execute. Use them together: crawl data from the platform, analysis and output generation from Claude Code. Browse the full skills library to see how this fits into a complete ecommerce SEO workflow.

Founder, CC for SEO
Martech PM & SEO automation builder. Bridges marketing, product, and engineering teams. Builds CC for SEO to help SEO professionals automate workflows with Claude Code.
Lire ensuite
How to Get Your Brand Cited in AI Search Results
AI search engines cite 18% of optimized brands vs 3% of everyone else. Here's how to structure content, build authority, and automate AEO workflows with Claude Code.
AI VisibilityAI Search Visibility for SEOs: How to Get Cited by ChatGPT, Perplexity, and Google AI
A practical guide for SEO professionals on getting content cited in AI search results. Covers AEO fundamentals, content structuring for citations, and Claude Code workflows for monitoring AI visibility.
AI VisibilityAI Visibility Tools for SEO: SaaS Platforms vs Claude Code Workflows
Compare 9 AI visibility platforms (Peec AI, Scrunch, Semrush) against building your own monitoring with Claude Code. Honest breakdown of when to buy vs build.
Automatisez vos workflows SEO
Skills Claude Code pour les audits techniques, le clustering de mots-clés, l'optimisation de contenu et l'analyse GSC/GA4.
Join the Waitlist