E-commerce SEO Guide: Categories, Products, Facets, Variants and Product Schema
SEO for an online store means managing far more URLs than a typical content site: category pages, hundreds or thousands of product pages, filter combinations, colour and size variants, and products that go out of stock. The pattern I see most often in audits is Google spending its time on endless filter-generated URL variations instead of the pages that actually sell.
This guide covers which searches category and product pages should target, how to keep faceted navigation under control, and how I handle variants, out-of-stock products and Product schema. If the infrastructure has gaps, start with the technical SEO fundamentals guide.
Short answer: E-commerce SEO means matching broad commercial searches with category pages and specific searches with product pages, while keeping the unnecessary URLs created by filters, variants and stock changes out of the crawl and the index. Product structured data that matches the visible page, plus original product content, helps search engines and AI assistants understand each product correctly.
Which searches should category and product pages target?
Each page type in a store serves a different search intent. A category page serves someone who wants to compare options; a product page serves someone who already knows what they want. When both page types target the same keyword they compete with each other, and it becomes unclear which one Google will show.
| Page type | Example target search | Search intent | Priority content |
|---|---|---|---|
| Main category | running shoes | Commercial, comparing options | Product list, short intro, links to subcategories |
| Subcategory | women's trail running shoes | Commercial, more specific | Narrowed selection, buying-help copy |
| Product | brand + model + size | Transactional | Price, stock, specifications, images, reviews |
| Guide / blog | how to choose running shoes | Informational | Explanatory content linking to relevant categories |
Before you build or restructure the category tree, run keyword research and clustering to decide which search belongs to which page. It saves you from changing URLs later.
Category page SEO: how do you strengthen listing pages?
Category pages usually serve the broadest commercial searches, yet in many stores they are nothing more than a product grid. These are the improvements I make most often:
- A unique title and H1 for every category, rather than one template copied across all of them.
- A short intro above the products and genuinely useful buying help below (size charts, material differences), not long keyword-stuffed copy.
- Crawlable paths to subcategories and to filter pages with real demand, using plain <a href> links.
- Paginated pages with their own URL and a self-referencing canonical; Google no longer uses rel=next/prev.
- Paginated URL equivalents if the page uses infinite scroll.
- Breadcrumb navigation with BreadcrumbList markup.
Listing pages load many images, so speed problems concentrate here. Google's good thresholds are LCP within 2.5 seconds, INP within 200 milliseconds and CLS of 0.1 or less; see the Core Web Vitals 2025 article for details.
How do you manage faceted navigation?
As colour, size, brand, price-range and sort filters combine, the number of URLs grows exponentially. Google's crawling documentation names faceted navigation as a common source of overcrawling. My approach has two steps: first identify which filter combinations have real search demand (for example, black leather boots), then keep the rest out of the crawl.
| Method | What it does | When it fits |
|---|---|---|
| Indexable filter page | Gets indexed with a self-canonical, unique title and copy | Combinations with search demand |
| robots.txt Disallow | Blocks crawling; a linked URL can still appear in the index without content | Parameters with no demand that create many combinations (sort, price range) |
| noindex | Page is crawled but not indexed; does not reduce crawl load | Pages that must be crawled but should stay out of the index |
| rel=canonical | Signals the preferred version; a hint, not a directive | Near-identical variations |
Google cannot see a noindex tag on a page blocked by robots.txt, so do not combine the two on the same URL. Google also recommends returning a 404 status for filter combinations with no results and generating parameters in a consistent order.
Product variants: one page or separate pages for colour and size?
If variants differ only by size, one product page with a selector is enough; a separate page with identical content for every size creates duplicate content. For variants such as colour that have their own search demand and their own images, separate URLs can make sense.
If you serve variants on separate URLs, each one needs a unique, crawlable address (a parameter URL is fine). Since 2024 Google has supported marking up variant relationships with the ProductGroup type and the hasVariant, variesBy and productGroupID properties. With a single-page approach, make sure a default variant is preselected on first load and the price shown matches it.
What should you do with out-of-stock and discontinued products?
The most expensive mistake here is deleting every product that sells out and redirecting it to the homepage. Google may treat a redirect to an irrelevant page as a soft 404, and the signals the product had built up are lost.
- Temporarily out of stock: keep the page live with a 200 status, set availability to OutOfStock in structured data, and offer similar products and a back-in-stock alert.
- Permanently discontinued with a close replacement: 301 redirect to the new model or the closest product.
- Permanently discontinued with no replacement: return 404 or 410; if it earns external links, consider redirecting to the relevant category.
- Seasonal products: reuse the same URL every year and keep the page informative off-season instead of removing it.
If you are making a large catalogue change or switching platforms, the site migration SEO guide explains how to build the redirect map.
How do you set up Product schema (structured data)?
I use Product markup in JSON-LD on product pages. The core fields are name, image, description, brand, sku or gtin, and under offers: price, priceCurrency, availability and url. If genuine user reviews are visible on the page you can add review and aggregateRating; marking up a rating that is not on the page goes against Google's guidelines.
Structured data makes a product eligible to appear in results with price, stock and rating details, but Google decides whether a rich result is shown. Shipping and returns can be described with OfferShippingDetails and MerchantReturnPolicy, and these can also be configured in Merchant Center. The price must be consistent across the page, the markup and the product feed. Check the markup with the Rich Results Test and the Search Console reports; the schema and structured data guide goes deeper.
Writing specifications as text rather than only inside images also helps AI assistants describe the product correctly in their answers. I cover that side separately as part of GEO consulting.
How do you measure and prioritise e-commerce SEO work?
In Search Console I group pages by URL pattern (category, product, filter) to see which type earns impressions and clicks, and in the page indexing report I check which patterns the crawled-but-not-indexed URLs come from. In GA4, revenue and conversions from organic traffic by landing page are the most reliable basis for prioritising. For setup and KPI choices, see the SEO reporting guide.
My usual order: stop crawl waste first (filters), then strengthen the highest-revenue categories, then fix Product schema and stock logic. Category copy and buying guides are where content strategy comes in.
If you want to work through these checks for your store together, we can start with e-commerce focused SEO consulting; book a short intro call and we will look at where your site stands.
Frequently Asked Questions
Can you do e-commerce SEO on platforms like Shopify or WooCommerce?
Yes. URL structure, filter parameters, canonical behaviour and structured data output vary by platform and theme, though. Before starting, check what the platform generates by default on these points and which settings you can actually change.
Is it a problem to use the manufacturer's product descriptions?
There is no penalty for it, but standing out among dozens of sites using the same text becomes difficult, and Google picks one of the duplicate versions to show. Rather than rewriting the whole catalogue, start with your best-selling and most-searched products and add original information such as usage tips, measurements and comparisons.
Do product reviews help SEO?
Genuine user reviews add original content to a product page and describe the product in the words customers actually use. If reviews are visible on the page, they can be marked up with aggregateRating. Fake or paid reviews are risky under both search engine policies and consumer protection rules.
How much text should a category page have?
There is no fixed word count. The test is whether the text helps people choose. A short intro and a section below the products that answers real questions is enough for most categories; long blocks that push products down rarely help.
Does Google Merchant Center matter for SEO?
Besides ads, Merchant Center lets products appear in Google's free listings. Price and stock data in the feed must be consistent with the page and the structured data; mismatches can cause product approval problems.
Where should a new store start with SEO?
First build the category structure around search demand and decide how filter URLs will be indexed; these are the hardest decisions to change later. Then prepare the main category content and Product schema, and set up Search Console and GA4 from day one.