Skip to content
Have a project in mind?
The Gloria JournalE-commerce

E-commerce SEO: the fundamentals that still matter

Illustration of a card payment on a phone showing a shopping basket

An online shop does not behave like a brochure site. A services website has twenty or thirty pages; a catalogue of 500 references easily generates several thousand addresses once you add filters, sorting, pagination and size or colour variants. At that point the work stops being about adding keywords and becomes a series of decisions about what Google should crawl, index and understand.

This matters to small operations, not only to large retailers. Across the European Union, 23.6% of enterprises made online sales in 2024, including 21.4% of small businesses with 10 to 49 employees, and those sales represented 8.7% of their turnover (Eurostat, 2025 ICT survey, reference year 2024).

National figures give a sense of scale without transferring between markets. In France, the e-commerce federation Fevad recorded €196.4 billion in online sales in 2025, products and services combined — up 7% year on year, across 3.2 billion transactions, with an average basket of €62, down 3% (Fevad, published 11 February 2026). Those are French numbers, quoted as French numbers, not a benchmark for your market.

What follows are the fundamentals specific to a shop, in the order I work through them during an audit, anchored in Google Search Central documentation.

What changes compared with a standard site

Three characteristics explain most of the problems I come across. The catalogue moves: products arrive, others disappear, stock levels change. Descriptions often come from the supplier and turn up word for word on every one of that supplier's resellers. And faceted navigation multiplies URLs — each combination of filters creates an address Google can discover and crawl.

Small catalogues face one extra temptation: fighting for the generic head term that names the whole product family. That fight is rarely winnable on a short catalogue. You win on precise queries and on the quality of individual pages — and the decisions below are what make those pages findable at all.

1. A structure that genuinely reaches every product

Google sets out its logic plainly: add links from the menus to the category pages, from categories to subcategories, then from subcategories to every product page. If a category page carries no direct link to all of its products, Googlebot may simply never find them.

Two clarifications are worth making. Navigation has to run through real <a href> tags; JavaScript events attached to other elements are not followed. And URL structure does not define site structure in Google's eyes — internal linking signals the relative importance of a page, and the more internal links a page receives, the more it counts. A sitemap or a Merchant Center feed supports discovery; it does not replace the linking.

The text on listing pages is a separate job, closer to editorial work than to templating, and it is where a category page usually earns or loses its ranking. Treat it as an SEO content project: one page, one buying intent, written for someone comparing options.

2. Product pages that are not the supplier's

Reusing the manufacturer's description as supplied means publishing text that already sits on dozens of other sites. Google does not penalise this, but it groups similar pages together and decides for itself which one to show. The rel="canonical" tag changes little here: the documentation describes it as a strong signal indicating the preferred URL, not as a directive.

On a wide catalogue, rewriting everything is unrealistic. Work by priority: the references that produce the revenue, then those already collecting impressions in Search Console. What differentiates a product page is concrete — uses and applications, real dimensions and compatibilities, photographs taken on your premises, the questions customers ask on the phone, delivery and returns terms.

3. Facets and sorting: decide what Google may crawl

This is where a shop most often works against itself. Google is explicit: in many cases there is no good reason to let filtered pages be crawled, because it consumes server resources for negligible benefit. The first recommended method is blocking in robots.txt.

User-agent: *
Disallow: /*?*color=
Disallow: /*?*sort=

Using URL fragments (#) produces the same effect, since Google does not take them into account when crawling. By comparison, rel="canonical" and nofollow are described as generally less effective over the long term.

Not all facets are equal. Some match genuine demand — a material, a shoe size, a use case that people type exactly as it appears in your filter. Those deserve a stable, indexable URL linked from the navigation. Sorting options and exotic combinations have no business being crawled. When you are unsure which case a parameter falls into, the indexing picture in Search Console usually answers before any tool does.

How to handle the URLs a shop generates, following Google Search Central documentation
URL type Recommended handling
Sorting, or a filter with no search demand behind it Block in robots.txt, or use a URL fragment
Filter matching a real query Stable, crawlable URL, linked from the navigation, with its own content
Filter combination returning no results HTTP 404 response
Page 2, 3, n of a list Separate URL, linked with <a href> from the previous page
Size or colour variant Path segment or parameter; canonical pointing at the URL without the parameter

4. Pagination: one URL per page, and links to reach it

The rule fits in a single line of the documentation: give each page a unique URL, for example with a ?page=2 parameter. The common mistake is declaring page 1 as the canonical for the whole series, which makes products sitting on page 3 or page 7 hard to discover. Google also states that it no longer uses the rel="next" and rel="prev" tags, even though other engines still read them.

Infinite scroll and a "load more" button remain viable as user experience, provided each batch of results corresponds to a URL reachable through an <a href>. Without that, the display works for the visitor and not for the crawler.

5. Out-of-stock and discontinued products

A temporary shortage is not a reason to delete the page. The markup provides for availability set to OutOfStock, and the page carries on existing with its history, reviews and links. Show a restock date if you know one, offer a back-in-stock alert and point to equivalent references.

For a product discontinued for good, there are two honest options: redirect to the nearest equivalent where one exists, or keep a page that explains the discontinuation and directs people to the category. Deleting it and doing nothing else leaves 404s in your inbound links and feeds. Either way, remove the reference from the sitemap and the product feed.

6. Product structured data and reviews

The Product markup does not push a page up the results: it makes the page eligible for richer displays. For a product snippet, Google asks at minimum for name together with at least one of review, aggregateRating or offers. For a merchant listing, the offers block must carry a price and a priceCurrency in ISO 4217 format, with a price strictly greater than zero. Keep an eye on priceValidUntil as well — a date in the past can stop the display appearing.

Reviews follow precise rules. The marked-up content must be immediately visible on the page, the author must be a valid person or team name, and aggregating reviews from other sites is not allowed, nor is publishing fake or incentivised reviews without disclosure. One point is regularly missed: when an entity controls the reviews written about it, its pages using Organization or LocalBusiness markup are not eligible for star ratings. That concerns reviews of the shop itself, not customer reviews of a product.

7. Measure before you arbitrate

These projects do not pay off equally across shops, and the sequence matters more than the checklist. Before rewriting three hundred product pages, read the index coverage report in Search Console. If Google is discovering tens of thousands of filter URLs, your subject is crawling, not content. If product pages are indexed but collect no impressions, your subject is demand, so the choice of queries. If they collect impressions without clicks, look at the title, price and availability being shown.

Two checks belong alongside that reading. Listing pages that load slowly hurt the same visitors your filters are meant to help, and page speed work often moves conversion before it moves rankings. The technical layer — facets, canonicals, pagination, markup — is easier to fix once, deliberately, in a technical SEO audit than in weekly patches.

Tracking then settles on commercial indicators rather than isolated positions: revenue per category, share of product pages receiving impressions, percentage of the catalogue indexed. Choosing which of those you will actually watch, before any work starts, is part of scoping the audit.

Common questions

Do I need one page per keyword on an online shop?

No. You need one page per real buying intent: generic queries belong to category pages, precise queries to product pages. Near-identical pages spread your internal links thinly and make Google's choice harder, which usually ends with it showing the page you did not want.

What should I do about supplier descriptions that match my competitors' word for word?

Google does not sanction this content, but it groups similar pages and decides itself which one to display; the canonical tag is a strong signal, not a directive. The practical answer is to rewrite the revenue-producing references first, adding uses, dimensions, your own photographs and the questions customers actually ask.

Should filters be blocked in robots.txt?

Google presents robots.txt blocking as the preferred method for filter URLs with no search interest, because crawling them consumes resources for negligible benefit. Filters matching genuine demand are the exception: they should stay crawlable, with a stable URL and content of their own.

What happens to a product that is out of stock?

If the shortage is temporary, keep the page and set availability to OutOfStock in the markup, with a restock alert and alternatives. If the product is discontinued for good, redirect to the closest equivalent or keep a page explaining the discontinuation, and remove the reference from the sitemap and the product feed.

Do customer reviews make a product page rank higher?

They carry no guaranteed ranking effect, but they can make the page eligible for star ratings and they help the purchase decision. Google's rules require reviews to be visible on the page, not aggregated from other sites, and neither fake nor incentivised without disclosure.

Where should I start when the shop is already live?

With the index coverage report in Search Console, which shows what Google crawls and what it sets aside. An excess of filter URLs points to technical work; product pages indexed without impressions point to query selection and content.

This link opens in a new tab.