Skip to content
RankThat

Ecommerce SEO: get the right pages crawled, then make them worth ranking

An online store can have thousands of URLs from filters, variants and sorting, and most of them should not be in Google. The pages that should rank, category pages and your best products, often have thin copy and duplicate descriptions from the manufacturer. Ecommerce SEO is about crawl control first, then making the important pages useful.

Start free trial

What your customers search

  • single origin coffee beans
  • best espresso beans for latte
  • buy decaf coffee online
  • pour over coffee kit
  • coffee subscription gift
  • light roast vs dark roast caffeine
  • free shipping coffee beans

What makes SEO different for ecommerce stores

Filters and variants create crawl traps

Color, size, price and sort parameters can produce endless URL combinations. Search engines waste time on them while important pages get crawled less.

Manufacturer descriptions are everywhere

If you sell products other stores sell, the supplier description appears on dozens of sites. Pages need something original to stand out.

Category pages are underused

Category pages target the broader searches that bring new customers, but many have only a product grid and no useful text.

Stock changes break things

Discontinued products become 404s, and out-of-stock pages lose rankings when handled badly.

The playbook

  1. 1

    Control what gets crawled

    Keep filter and sort URLs out of the index with canonicals, noindex or robots rules, and make sure category and product pages are in the sitemap.

    Site Audit
  2. 2

    Write category copy that helps shoppers choose

    A short intro and buying guide on each category page (for example, how roast level affects flavor) helps rankings and conversions.

    Content briefs
  3. 3

    Rewrite descriptions for your best sellers

    Start with the products that sell most. Add tasting notes, use cases, comparisons and real photos.

  4. 4

    Use product structured data

    Product schema with price, availability, reviews and shipping and return details makes your listings eligible for richer results in Google.

    Schema fixes through the WordPress Bridge
  5. 5

    Handle discontinued products properly

    Redirect discontinued products to the closest replacement or category. Keep temporarily out-of-stock pages live with a clear back-in-stock option.

    Redirects for broken pages
  6. 6

    Fix shop and category titles

    WooCommerce shop and category pages often have weak default titles. Write titles that match how people search. With Rank Math or SEOPress, RankThat can write these for you to review.

    WordPress fixes for WooCommerce
  7. 7

    Find keywords competitors rank for and you do not

    A keyword gap against two or three competing stores shows categories and products you are missing.

    Keyword gap

Keyword Research

KeywordVolumeKD
water heater replacement cost2,90018
plumber near me74,00041
tankless water heater austin39012
slab leak repair1,60024

Schema type

Mark up your business as OnlineStore.

Free schema generator

Ecommerce SEO in 2026: architecture, crawl control and content that sells

Ecommerce SEO has a different shape from local SEO. There is no map pack to win. Instead there is a site with hundreds or thousands of URLs, most created automatically by filters, sorting and variants, competing with marketplaces and big retailers for searches where the shopper is comparing prices. Good SEO for an online store does three things in order: it makes sure search engines spend their time on the pages that matter, it makes those category and product pages better than the competition, and it builds content that brings shoppers in before they have decided what to buy.

This guide is for owners and marketing leads at independent online stores, especially on WooCommerce, and for agencies running ecommerce SEO. Our example is Bean & Barrel Coffee, a fictional roaster selling beans, brewing gear and subscriptions from its own WooCommerce store.

Site architecture: categories carry the weight

Product pages win specific searches (“ethiopia yirgacheffe light roast”). Category pages win the broader, higher-volume ones (“single origin coffee beans”, “decaf coffee beans”). Most stores underinvest in categories.

A structure that works for most catalogs:

LevelBean & Barrel exampleTargets
Home/Brand, broad positioning
Category/coffee/“coffee beans online”, “fresh roasted coffee”
Subcategory/coffee/single-origin/, /coffee/decaf/, /coffee/espresso/Specific product types people search for
Product/product/ethiopia-yirgacheffe/The exact product and its long-tail variants
Guide/guides/how-to-choose-espresso-beans/Research questions before purchase
Comparison/guides/aeropress-vs-french-press/Shoppers deciding between options

Rules that keep the structure clean:

  1. Every important page within three clicks of the home page, through menus, category links and breadcrumbs.
  2. One canonical URL per product. WooCommerce can produce several paths to the same product through categories; make sure the canonical points at one.
  3. Create an indexable subcategory only when people search for it and you have enough products for it. “Decaf coffee beans” earns a page. “Coffee beans 340g bag” does not.
  4. Product tag archives are usually thin. Most stores should noindex them or not use them for navigation.

Category pages that rank and convert

A category page that is only a product grid gives search engines little to understand and shoppers little help. Bean & Barrel’s espresso category follows a simple layout:

  • A short intro above the grid (two to four sentences): what is in the category and who it suits. Keep the products visible on the first screen.
  • The product grid, with useful sorting and filters.
  • A buying guide below the grid: roast levels for espresso, how to pick beans for milk drinks, grinder notes, links to the best sellers and to the full brewing guide.
  • A few questions shoppers ask, answered briefly.
  • Links to related categories: grinders, espresso machines, milk pitchers.

Titles matter here too. WooCommerce shop and category pages often ship with weak default titles like “Espresso Archives”. RankThat’s WordPress Bridge can write SEO titles and descriptions for shop and category pages when you use Rank Math or SEOPress, and you review each one before it goes live. See ecommerce SEO with RankThat.

Faceted navigation and crawl control

Faceted navigation lets shoppers filter by roast, origin, price and more. Each combination can create a new URL, and a store with 200 products can end up with tens of thousands of crawlable addresses. Search engines then spend their effort on near-duplicate filter pages while new products wait to be crawled. Google’s own guidance on managing faceted navigation is worth reading in full.

A decision table for typical WooCommerce URL types:

URL typeWooCommerce exampleUsually
Sort order?orderby=priceKeep out of the index: canonical to the unsorted category, and consider blocking in robots.txt
Attribute filters?filter_roast=lightBlock or noindex, unless the filter matches a real search and deserves its own page
Price filters?min_price=10&max_price=20Block in robots.txt
Add-to-cart links?add-to-cart=123Block in robots.txt
Pagination/coffee/page/2/Keep crawlable with its own URL; do not canonical page 2 to page 1
Valuable filter combinations“light roast decaf”Turn into a real subcategory with its own URL, title and intro

Two cautions. First, a URL blocked in robots.txt cannot be crawled, so search engines cannot see a noindex or canonical on it; choose one method per URL type. Second, test any robots.txt change before you publish it, for example with the free robots.txt checker. A misplaced rule can block your whole shop.

A site audit shows how many crawlable URLs your filters create, duplicate titles across filter pages, and canonicals that point the wrong way. The crawl errors guide explains how to work through the results.

Product pages

  • Write your own descriptions for your best sellers first. Manufacturer copy appears on every other store that sells the product. Bean & Barrel adds tasting notes, the farm and process, brew recommendations and a roast date policy.
  • Variants: one product page with options and one canonical URL, unless a variant is searched for separately and genuinely differs.
  • Reviews: collect them from real buyers after delivery, never incentivize positive ones, and show them on the page.
  • Photos: your own, compressed, with descriptive alt text.

Handling stock changes:

SituationWhat to do
Temporarily out of stockKeep the page live, mark availability as out of stock, offer a back-in-stock alert, suggest alternatives
Seasonal product returning next yearKeep the URL; update it when it returns so it keeps its history
Discontinued with a close replacement301 redirect to the replacement
Discontinued with no replacementRedirect to the category, or let it return 404 or 410 if nothing fits

The WordPress Bridge can create redirects for broken product URLs that RankThat finds, for you to approve.

Product schema

Product structured data makes your pages eligible for richer results such as price, availability and review stars, and it feeds Google’s shopping surfaces. A trimmed example:

{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "Ethiopia Yirgacheffe, Light Roast, 12 oz",
  "image": "https://www.example.com/images/yirgacheffe.jpg",
  "description": "Washed Ethiopian coffee with jasmine and lemon notes, roasted weekly.",
  "sku": "BB-ETH-12",
  "brand": { "@type": "Brand", "name": "Bean & Barrel Coffee" },
  "offers": {
    "@type": "Offer",
    "url": "https://www.example.com/product/ethiopia-yirgacheffe/",
    "price": "19.00",
    "priceCurrency": "USD",
    "availability": "https://schema.org/InStock",
    "shippingDetails": {
      "@type": "OfferShippingDetails",
      "shippingRate": { "@type": "MonetaryAmount", "value": "0", "currency": "USD" },
      "shippingDestination": { "@type": "DefinedRegion", "addressCountry": "US" }
    },
    "hasMerchantReturnPolicy": {
      "@type": "MerchantReturnPolicy",
      "applicableCountry": "US",
      "returnPolicyCategory": "https://schema.org/MerchantReturnFiniteReturnWindow",
      "merchantReturnDays": 30
    }
  }
}

Keep schema in sync with the page: if the price or stock changes and the markup does not, Google may ignore it or flag it in Search Console. On the home or about page, Organization (or its OnlineStore subtype) describes the business itself. A free Google Merchant Center account adds your products to Google’s free shopping listings. Google’s product structured data documentation lists the required and recommended properties.

Comparison and alternative pages

Shoppers who search “AeroPress vs French press” or “Chemex alternatives” are close to buying something. A store that sells both options is the natural place to answer. Good comparison pages:

  • Compare on the things shoppers care about (taste, ease, cleanup, price, capacity), in a table.
  • Say plainly which option suits which person.
  • Link to both products and to the relevant category.
  • Are updated when products or prices change, with the date shown.

Brand comparisons work the same way if you stock both brands. Be fair; a page that pretends one side has no strengths is less useful and less likely to be cited.

Content-led growth

Beyond comparisons, content brings shoppers who are not ready to buy yet. Organize it as topic clusters that link into categories:

  • Brewing guides (pour over, espresso, cold brew) link to the gear and the beans that suit each method.
  • Buying guides (“how to choose a burr grinder”) link to the category and the top picks.
  • Origin and roast explainers link to single-origin products.
  • Gift guides published before each gifting season link to gift sets and subscriptions.

RankThat’s content tools suggest topics, write briefs and draft articles in your brand voice, and the keyword gap shows the categories and guides competing stores rank for that you do not.

Seasonality

Gifting peaks around the end-of-year holidays, with smaller peaks for Father’s Day, Mother’s Day and Valentine’s Day. Keep one evergreen URL for sale events (for example /black-friday/) and update it each year rather than creating a new page, so it keeps its links and history. Publish gift guides six to eight weeks ahead of each peak.

What to track every month

MetricSource
Organic revenue and orders by landing page type (category, product, guide)Google Analytics 4
Clicks and impressions by categorySearch Console
Indexed pages versus pages you want indexedSearch Console page indexing report
Positions for category and product termsRank Tracker
Pages ranking 8 to 20Opportunities
Crawlable URL count and duplicate titlesSite Audit

Common mistakes

  1. Letting every filter combination be crawled and indexed. It dilutes the site and slows the crawling of pages that earn money.
  2. Category pages with no text, or a wall of text that pushes products below the fold. Short above the grid, helpful below it.
  3. Manufacturer descriptions on every product. They are duplicate content shared with every other stockist, so there is no reason for a search engine to prefer your copy.
  4. Deleting discontinued products without redirects. Links and rankings built over years disappear with the page.
  5. Product schema that shows a different price from the page, usually because a plugin caches old markup. Spot-check after every price change.
  6. A new sale URL every year. The old one had the links; keep it and update it.
  7. Judging content by traffic alone. A brewing guide with modest traffic that leads to grinder sales is worth more than a viral post that sells nothing. Compare revenue by landing page in Google Analytics 4.

A 90-day plan

WeeksFocusTasks
1 to 2Crawl auditCount crawlable URLs, map parameters, check canonicals and sitemap contents
3 to 4Crawl controlRobots.txt and noindex rules for sort, price and low-value filters; test before publishing
5 to 6CategoriesTitles, intros and buying guides for the top five categories
7 to 8ProductsRewrite the 20 best-selling product descriptions; Product schema with shipping and returns
9 to 10Stock and redirectsRedirect discontinued products; back-in-stock handling for the rest
11 to 12ContentTwo comparison pages and one brewing guide linked into categories
13ReviewCompare organic revenue, indexed pages and positions with week one

Questions, answered

Should out-of-stock products be removed?

Not if they are coming back. Keep the page live and say when it will return. If it is gone for good, redirect to the closest product or category.

Do category pages need text?

A short, helpful intro and some buying advice usually helps. Keep it useful to shoppers, and do not push the products far down the page.

Can RankThat fix a Shopify store?

RankThat can audit any public site, including Shopify stores, and show what to fix. The one-click fixes go through the WordPress Bridge plugin, so they work on WordPress and WooCommerce stores only.

How do I handle product variants?

Usually one product page with variant options, and one canonical URL. Separate pages only make sense when variants are searched for separately and have different content.

Do this month’s SEO in an afternoon.