All articles SEO

E-commerce SEO: a practical guide for online stores

Everything I'd want a client to understand before we start working on SEO for their store: what it is, why it matters, where to begin, and the moves that actually shift revenue.

By Bart Haagmans 15 min read

What is e-commerce SEO?

E-commerce SEO is the work of optimizing an online store so it ranks higher in Google and other search engines. Better rankings bring more relevant visitors, and more relevant visitors mean more revenue. That's the whole loop.

Most of it comes down to three areas working together: a technical foundation that lets search engines crawl and understand your store, content that matches what shoppers are actually searching for, and authority signals that tell engines you're worth showing.

Why SEO matters for online stores

SEO remains one of the most cost-effective marketing channels because it compounds. You don't pay per click. You build an asset that keeps producing once it's in place.

The numbers are still striking. Backlinko's 2023 CTR study found that the first organic result on Google captures around 27% of clicks; FirstPageSage put it closer to 40%. For comparison, Wordstream's benchmark for paid search puts the average Google Ads CTR around 3% across industries. That gap isn't going away — most shoppers still skip past the ads and click the first organic result.

E-commerce in Belgium also keeps growing. According to BeCommerce's 2023 e-commerce barometer, Belgian consumers spent €16.3 billion online in 2023, more than 11% up on 2022, which itself was up 18% on the year before. Smaller stores in particular have been gaining ground. A strong product offer, good branding, and disciplined SEO can take you a long way, even against bigger marketplaces.

Keyword research and search intent

Keyword research is the foundation of everything else. Without it, you don't know which terms your buyers are using or which ones are worth competing for.

There are plenty of tools that do this well: SEMrush, Ahrefs, SE Ranking, Mangools, KWFinder, AnswerThePublic. Google's own autocomplete and "People also ask" boxes are surprisingly useful too — free, and they reflect what people actually type.

Match the search intent, not just the keyword

A keyword by itself doesn't tell you what to do with it. You need to know why someone is typing it. That's search intent. Search intent usually splits into four types:

  • Informational. The user wants to learn something. "What are the best types of upholstery fabric?" Best content: blog articles, guides, tutorials.
  • Navigational. The user already knows where they want to go and is using search as a shortcut. "IKEA beige sofa" or "Coolblue laptops". Best content: easy-to-find brand and product pages.
  • Commercial. The user is considering a purchase but still comparing options. "Best modern beige sofa for small living rooms". Best content: category pages, comparison pages, reviews, detailed product descriptions.
  • Transactional. The user is ready to buy. "Beige sofa living room buy" or "Beige sofa sale". Best content: product pages and category pages with clear calls to action.

The same keyword family usually maps to different page types at different stages. "Furniture" likely calls for a broad category page; "beige sofa for small living room" calls for a much more specific product or sub-category page. Optimize the right page for the right intent.

Optimizing category and product pages

Once you know what your buyers are searching for, you put that intel to work on category pages and product pages. Together, they do most of the heavy lifting in e-commerce SEO.

  • Category pages group related products. They target broader, higher-volume terms and help shoppers navigate to the right product family.
  • Product pages show one specific item, with all the details a shopper needs. They target more specific terms — usually variations of brand, model, color, size.

For the rest of this guide I'll use a fictional store, "Your Boxing Shop" (yourboxingshop.com), as a running example. It sells boxing gloves, boxing shoes, and punching bags. Three categories, 25 + 14 + 6 = 45 product pages.

Title tags, meta descriptions, and H1s

These three elements signal what a page is about, both to search engines and to people scrolling through the results. Most CMSes (WordPress, Shopify, Magento) let you edit them without touching code.

Title tag — the blue clickable headline in search results. Lives in the HTML head:

<head>
  <title>Page title goes here</title>
</head>

Three rules:

  • Stay under ~60 characters or Google will truncate it.
  • Include the main keyword.
  • Add a clear call to action where it fits — "buy", "shop", "discover". Easier on category pages than on product pages where the product name eats up the budget.

Meta description — the snippet under the title. Doesn't directly affect rankings, but a good one lifts click-through rate, which compounds.

<head>
  <title>Page title</title>
  <meta name="description" content="Description here">
</head>

Stay under ~155 characters, give a real reason to click, and include a call to action.

H1 tag — the main heading of the page itself. Often the same as the title tag, but it doesn't have to be. Use only one H1 per page, and follow it with H2s and H3s in a logical hierarchy. Don't skip levels.

Applied to the boxing shop:

  • Category page (Boxing gloves): Title: "Boxing gloves online — Your Boxing Shop". Meta: "Order top-quality boxing gloves online at affordable prices. Free shipping over €49. 5% off your first order." H1: "Boxing gloves".
  • Product page: Title: "Adidas Hybrid 50 boxing gloves, black and gold | Your Boxing Shop". Meta: "Order the Adidas Hybrid 50 boxing gloves in black and gold online. Free shipping over €49." H1: "Adidas Hybrid 50 boxing gloves — black and gold".

Automating metadata at scale

A larger store can have hundreds of category pages and thousands of product pages. Editing each one by hand isn't realistic. The fix is templating: in your CMS, define a pattern that generates the title, description, and H1 from product attributes.

For Your Boxing Shop:

  • Category title: {Category} online — Your Boxing Shop
  • Product title: {Product} {Brand} {Color} — Your Boxing Shop
  • Description (both): standardized template with category or product name interpolated.

Long product names sometimes blow past the character limits. Run a regular Screaming Frog crawl, filter pages where title or description exceeds the safe length, and clean those up manually. The template handles 95% of the work; the long tail you fix by hand.

Content that earns the ranking

"Content is king" still holds, but the bar has moved. Google now demands content that's relevant, helpful, and original. Pages that read like they were generated to fill space get quietly demoted.

For category and product pages, that usually means:

  • A short, clear introduction that explains what's in the category — not a 500-word filler block above the products.
  • Genuinely useful detail on product pages: sizing, materials, compatibility, care instructions, what's in the box. The kind of thing a buyer actually wants to know.
  • Where it fits, structured FAQs answering the questions the keyword research surfaced.
  • Video where text is awkward — for example, demonstrating a technical product in use.

Use your target keywords naturally throughout the body. Avoid keyword stuffing — Google penalizes obvious overoptimization.

Image SEO

Images aren't just decoration on an online store. Done right, they help shoppers and Google.

  • File names with descriptive keywords separated by hyphens: boxing-gloves-adidas-black.jpg, not IMG_4831.jpg.
  • Alt text that describes the image accurately. No need to start with "image of"; just describe what's there. "Black Adidas boxing gloves on a white background".
  • Compression and format. Use JPEG, PNG, or WebP, and compress before uploading. TinyPNG and Squoosh are good for one-offs. Page speed is a ranking factor; unoptimized images are usually the biggest cost.
  • Responsive sizes. Serve appropriately sized images for mobile, tablet, and desktop instead of shipping a 4000px hero photo to a phone.
  • Lazy loading for images below the fold so the initial render isn't blocked.
  • Image sitemap if you have a large catalog — helps Google discover and index your visuals.

Structured data (Schema markup)

Schema markup is how you tell search engines extra, structured facts about a page: that it's a product, that it costs €X, that it has 4.6 stars from 312 reviews, that it's in stock. Google can then enrich your listing with that information.

For a product page, the Product, Offer, and AggregateRating schema types matter most. Apply them across the catalog with a template, validate with Google's Rich Results Test, and monitor the Enhancements reports in Search Console for errors.

A clean URL structure

Good URLs read like sentences. They give users (and search engines) a fast read of what the page is about, ideally including the relevant keyword.

For Your Boxing Shop, the structure is simple:

  • yourboxingshop.com/boxing-gloves
  • yourboxingshop.com/boxing-shoes
  • yourboxingshop.com/punching-bags

For products, either nest under category (/boxing-gloves/adidas-hybrid-50) or keep them flat (/adidas-hybrid-50). Both work; pick one and stay consistent.

Already have a store with messy URLs? Changing structure is a real project, not a Tuesday tweak. Done badly, an SEO migration leaks traffic for months. Done well, with proper 301 redirects and a tracked rollout, you preserve your authority while cleaning up the experience.

Internal linking

Internal links are how search engines (and shoppers) discover and navigate your site. They also distribute authority across pages. For e-commerce — where most stores have hundreds or thousands of URLs — getting this right is one of the highest leverage moves you can make.

Why internal links matter for an online store

  • They make a large catalog discoverable. The deeper the tree, the more important the path down to it.
  • They guide crawl budget. Pages that get more internal links are crawled more often, which means changes get picked up faster.
  • They distribute link equity ("PageRank") to the pages that should rank, instead of letting it pool on the homepage.
  • They let you outperform competitors with similar products by simply being easier to navigate and crawl.

Where internal links live

  1. Main navigation. Should link to your most important category and sub-category pages, plus key brand pages or curated landings ("boxing gloves for women", "punching bags for kids").
  2. Breadcrumbs. Home / Category / Sub-category / Product — both for users and as a structural signal to search engines.
  3. HTML sitemap in the footer. A linked listing of important categories and sub-categories, available from every page. Helpful for very large stores.
  4. In-content links. From category copy, guides, and blog posts back into relevant categories, products, or related articles. Vary your anchor text — the clickable phrase — so it reads naturally instead of hammering the same keyword everywhere.

An internal link in HTML is just:

<a href="https://yourboxingshop.com/punching-bags">punching bags</a>

Faceted navigation

Faceted navigation is the filter sidebar on a category page — color, size, brand, price, material. It's great for users and dangerous for SEO if it's not handled carefully.

How filters affect URLs

When a shopper filters, one of four things happens to the URL:

  • Nothing changes (the page updates client-side only).
  • Query parameters are appended: ?color=red.
  • A hash is added: #color=red.
  • A new static URL is generated: /boxing-gloves/red/.

Pile a few filters together (red + leather + small + under €100) and the number of possible URLs explodes — sometimes into the millions. That's where the SEO problems start.

The three classic problems

  1. Duplicate content. Many filter URLs end up showing nearly the same content as the main category, just filtered. Google sees lots of similar pages competing.
  2. Wasted crawl budget. Search bots spend their time crawling filter combinations instead of your important pages.
  3. Diluted authority. Internal link equity gets spread thin across thousands of unimportant URLs.

How to handle it

  • Canonical tags. Tell Google the unfiltered category page is the canonical version of all the filtered URLs. Helps with indexing, doesn't fully solve crawl budget.
  • robots.txt disallow. Block crawlers from filter parameters. Stops crawl spend, but it's a hint, not a hard rule — and it cuts off any chance of those URLs ranking.
  • Noindex. Lets Google crawl the page but keeps it out of the index. Solves duplicate content; still costs crawl budget.
  • AJAX-based faceting. If you control development, build filters so they don't generate unique URLs at all. Cleanest solution; needs upfront engineering and means filtered combinations can never rank, which is a trade-off when long-tail filter keywords have real volume.

The right answer depends on the keywords. If "red leather boxing gloves" has real search volume and aligns with how you want to be found, you probably want those filter URLs indexable. If they don't, kill them.

International e-commerce SEO

If you sell across multiple countries, there's an extra layer of decisions to make.

Domain strategy

Three options, each with trade-offs:

  • Country-specific domains (ccTLDs): yourboxingshop.be, yourboxingshop.nl. Strongest local trust signal; expensive and operationally heavy.
  • Subdomains: nl.yourboxingshop.com. Cheaper than ccTLDs, but search engines treat subdomains as semi-separate sites, which can dilute authority.
  • Subdirectories: yourboxingshop.com/nl/. Authority stays consolidated on one domain. Today this is usually the best choice unless there's a specific reason for ccTLDs.

Hreflang tags

Hreflang tags tell search engines which language and region a page is written for, and which alternative versions exist. They prevent the German version of a page from appearing in Belgian results, and the other way around.

For a Flemish, Dutch, French, and German variant:

<link rel="alternate" href="https://yourboxingshop.com/be-nl/what-is-boxing" hreflang="nl-be" />
<link rel="alternate" href="https://yourboxingshop.com/nl/what-is-boxing" hreflang="nl-nl" />
<link rel="alternate" href="https://yourboxingshop.com/fr/quest-ce-que-la-boxe" hreflang="fr" />
<link rel="alternate" href="https://yourboxingshop.com/de/was-ist-boxen" hreflang="de" />

Place the full set on every variant of the page (including a self-referencing tag). Missing or inconsistent hreflang is one of the most common — and most impactful — international SEO mistakes.

AI in e-commerce SEO

The AI conversation has shifted a lot since 2024. Two things matter for e-commerce now.

AI as a tool, not a writer

When ChatGPT first hit, the internet flooded with thin, near- identical AI articles. Google responded by tightening the "helpful content" bar across the board. Pages that read like they were generated to fill space get demoted, regardless of who or what wrote them.

That doesn't mean AI is useless. It means AI is a tool, not a substitute for thinking. Where it earns its keep:

  • Brainstorming. Topic angles, content clusters, audience questions you might have missed.
  • Outlines. A first-draft structure for an article or category page that you then rework.
  • Product descriptions at scale. Templates filled in with your actual product attributes, then edited — not raw AI output dumped onto the site.
  • Editing. Tightening sentences, suggesting alternative phrasings, catching repetition.

What AI still can't replace is the judgment of someone who knows your products, your customers, and what your brand actually sounds like. Use it for leverage, not for substitution.

AI Overviews and the rise of GEO

Google's AI Overviews — the AI-generated summary that appears at the top of many search results — are now widely rolled out across the EU. They answer many informational queries directly inside Google, without the user clicking through.

That changes the math for some content types. Pure informational pages ("what is X") lose traffic when an AI Overview answers the question. Commercial and transactional queries are less affected, because shoppers still need to pick a product and check out somewhere.

On top of that, shoppers increasingly ask AI assistants like ChatGPT, Claude, Gemini, and Perplexity for product recommendations directly. Being the brand those tools cite is its own discipline, called Generative Engine Optimization (GEO). It's separate from classic SEO but shares much of the same foundation: clean structure, authoritative content, strong brand signals. If AI-driven discovery matters for your buyers, GEO deserves a real seat at the table next to SEO.

When to expect results

Honest answer: it depends. SEO isn't a channel where you turn up the dial and see traffic the next morning.

For technical fixes — indexing problems, broken canonicals, slow pages — impact can show up within weeks. For content and authority work, expect 3–6 months for early signals (impressions, secondary keywords, growing rankings) and 6–12 months for compounding revenue impact. In competitive categories, longer.

That timeline is also why SEO is one of the most durable channels you can invest in. Once it's working, it keeps working. The compounding effect is what makes the difference between competitors three years in — the ones that started and stuck with it leave the others behind.

The best time to start was a year ago. The next best time is today.