SEO for e-commerce sites
Scale is the enemy in e-commerce: a small template issue multiplies across thousands of URLs. The pack concentrates on the three places shops lose the most, crawlability of products and prices, faceted URL sprawl, and honest Product schema that earns rich results.
The Visibility Ladder, tuned
Where sites like this actually fail
Same five rungs, same order, different emphasis. Diagnose top to bottom, fix bottom to top.
Two big risks: prices and stock rendered client-side so crawlers see a price-less page, and faceted navigation generating near-infinite crawlable URLs that waste crawl budget.
Unique product descriptions, not manufacturer boilerplate duplicated across the web. Category pages need real introductory content, not just a grid.
Product with Offer (price, currency, availability), brand, and ratings only if real. This drives rich product results, so the value here is high.
Canonicals across variants are critical: colour and size variants and faceted URLs must consolidate to one indexable product page.
Category depth, genuine buying guidance, and honest differentiation from every other shop selling the same product.
Buying-intent and comparison queries: clear specs, comparison tables, and honest answer blocks make product content citable.
Priority tilt: Weight Reach (rendering and facets) and Understand (Product schema) highest, then Connect (variant canonicals).
Checks specific to this kind of site
Faceted and filter URLs
Decides per facet: canonical to base, noindex, or allow only genuinely valuable combinations, with robots and canonicals coordinated.
Out-of-stock handling
A ranking product that 404s abruptly loses its equity. The pack keeps the page marked unavailable, or 301s it to a sensible alternative.
Variant consolidation
One indexable product page per product, with variants canonicalised rather than competing against each other.
Schema honesty
Never fabricates ratings, reviews, or stock. Fake aggregate ratings are a classic and penalised e-commerce temptation; the pack removes and flags them.
On hosted carts, the agent instructs rather than edits
On Shopify, WooCommerce, or BigCommerce, many fixes live in the platform's theme or settings rather than code the agent controls. The diagnosis still works, because it reads the served HTML; the agent then tells you exactly what to change in the platform, instead of editing files it shouldn't touch.
Skills that do the work
- seo-orchestratorApplies the ecommerce profile and works the audit lifecycle across thousands of URLs
- 3-understand-schemaProduct, Offer, and BreadcrumbList schema, validated and honest
- 4-connect-architectureVariant canonicals, facet control, and category architecture
- seo-migrationsBulk URL changes and discontinued-product redirects without losing equity
Driven by the ecommerce profile in the pack.
Structured data it works with
- Product
- Offer
- BreadcrumbList
- Organization
- AggregateRating (only if real)
Always honest: markup describes only what's real and visible on the page. Fabricated ratings, authors, or credentials are removed and flagged, never added.
Try it on your site
Paste this into Claude Code, Cursor, or any AI coding agent. It's read-only: the agent audits and reports, and changes nothing until you ask.
Use the seo-for-ai-agents skill pack (https://github.com/manibharij/seo-for-ai-agents) with the ecommerce profile: audit my shop on the served HTML. Check product pages render prices and stock server-side, review faceted and variant URLs for duplication, and validate Product/Offer schema for honesty. Report only, don't change any code or files yet.
Common questions
Does it work with Shopify or WooCommerce?
Yes for diagnosis, with a boundary on fixes. The audit reads the served HTML, so it works on any platform. On hosted carts the fixes often live in theme settings or apps rather than code, so the agent gives you precise instructions for the platform instead of editing code it doesn't control.
Why do my product pages not show prices in Google?
Usually because the price is rendered client-side by JavaScript, so it's missing from the HTML crawlers receive, or because Product schema is missing the Offer with price, currency, and availability. The pack checks both on the served page and fixes what's in the build.
Should filter and facet pages be indexable?
Mostly no. Every filter combination can become a crawlable URL, which wastes crawl budget and creates thousands of near-duplicates. The right answer is per facet: canonicalise most to the base category, noindex the rest, and only allow combinations that match real search demand.
Can it add star ratings to my results?
It adds honest review and rating markup only where real reviews exist on the page. Fabricating aggregate ratings to chase stars is against Google's policies and a fast way to lose rich results entirely; the pack will remove fake markup and flag it rather than add it.