Category Page SEO

Category pages (PLPs, collection pages) are usually the highest-leverage and most technically dangerous pages on an ecommerce store. This is how to rank them, handle pagination after rel=prev/next died, decide which faceted URLs to index, add content without keyword-stuffing, and route crawlers to every product.

First published: Jun 25, 2026 · Last updated: Jul 19, 2026 · Advanced
demand #1 in Categories & Merchandising#23 in Ecommerce SEO#302 on the site
1 evidence signal on this page

A category page (PLP, collection page) groups products under a classification and usually does two jobs: rank for broad commercial queries and route crawlers and link equity to the products beneath it. The technical traps are the same ones that make ecommerce hard — faceted navigation spawning near-infinite URLs, and pagination. The accuracy spine for 2026: rel=prev/next is dead (Google, 2019), so don't canonical paginated pages back to page 1 — let each page be indexed on its own or point to a 'view all'. Category pages that are only a product grid can be hard to rank, but Google's line (Mueller) is that extra text is helpful, not required — and a keyword-stuffed footer blob is the wrong way to add it. The GSC URL Parameters tool is gone (2022); control parameters with robots.txt and canonicals instead.

TL;DR — Category pages are the highest-leverage and most technically dangerous pages on a store: they rank for the broad commercial queries and they route crawl + PageRank to your products. The accuracy spine for 2026: rel=prev/next is dead (Google, March 2019) — don’t canonical paginated pages back to page 1 (that hides everything on pages 2+); let each page self-canonical, or point them at a “view all” page if you have one. Faceted navigation is the core threat — block the noise (robots.txt), index the signal (real demand). The GSC URL Parameters tool is gone (April 2022) — use robots.txt and canonicals. Thin product-only pages can be hard to rank, but Mueller’s line is that extra content is helpful, not required — and a keyword-stuffed footer blob is the wrong way to add it. BreadcrumbList is the structured data that matters; do not put Product rich-result markup on a multi-product listing.

Why category pages are the leverage point

A category page is both a ranking target and the on-ramp Google uses to reach every product beneath it. Source: /ecommerce-seo/categories-and-merchandising/category-page-seo/

A category-page wireframe highlights four SEO-relevant zones: concise introductory copy, controlled filter and sort URLs, crawlable product links, and pagination with unique URLs, self-canonicals, and real links to the next page.

© Patrick Stox LLC · CC BY 4.0 ·

On most stores, category pages are simultaneously the highest-value and the most fragile pages you own. They’re high-value because they match the broad commercial queries — “running shoes,” “laptops under $500” — which carry far more volume than any single product query. And they’re fragile because every category page is also a crawl-and-link-equity distribution node: Google reaches your product pages largely by following the links on your category pages. Google says this directly: “If category pages don’t include direct links to all products in a category, Googlebot might not find all of your products by crawling alone.” Evidence for this claim Google warns that products may not be found by crawling when category pages do not link directly to them. Scope: Use crawlable anchor links and pagination or load-more implementations Google can follow. Confidence: high · Verified: Google: Ecommerce site structure

So a category page is doing two jobs at once — ranking for its own query, and serving as the on-ramp to everything beneath it. Most of the SEO work below is about not breaking either one.

Faceted navigation — the thing most likely to hurt you

Block the noise, index the signal — the four-way decision for every faceted URL. Source: /ecommerce-seo/categories-and-merchandising/category-page-seo/

A faceted URL branches to four outcomes. Sort, tracking, and redundant filter combinations are blocked from crawling. Low-demand but navigable combinations canonicalize to the base category. Combinations backed by real search demand become optimized, self-canonical landing pages. Empty or nonsensical combinations return 404.

© Patrick Stox LLC · CC BY 4.0 ·

The filter and sort UI on top of a category page is faceted navigation, and in its common URL-parameter form it’s the single biggest source of crawling problems on the web. Google’s framing is blunt: unbounded faceted URL spaces harm a site in two ways. Overcrawling, because “the crawlers will typically access a very large number of faceted navigation URLs before the crawlers’ processes determine the URLs are in fact useless,” and slower discovery, because “if crawling is spent on useless URLs, the crawlers have less time to spend on new, useful URLs.” Evidence for this claim Google documents infinite faceted URL spaces as a source of overcrawling and wasted resources. Scope: Google recommends preventing crawl when faceted URLs do not need to be indexed. Confidence: high · Verified: Google: Managing faceted navigation Gary Illyes has put faceted navigation at roughly half of all overcrawl issues reported to Google, and described the accidental version vividly — “exploding your URL space from a balmy 1000 URLs to a scorching 1 million.”

I won’t fully relitigate facets here — faceted navigation has its own deep dive — but the category-page decision is worth stating crisply: block the noise, index the signal.

  • Block (robots.txt): sort-order variants (?sort=price), session/tracking parameters, and filter combinations that just re-slice the same products. Google endorses this directly: “Oftentimes there’s no good reason to allow crawling of filtered items… instead, allow crawling of just the individual items’ pages along with a dedicated listing page that shows all products without filters applied.”
  • Canonical to the base category: low-search-demand filter combos you want navigable but not separately indexed. Note canonical is the slower-acting tool — Google says it “may, over time, decrease the crawl volume” — because each variant still has to be crawled before the signal lands.
  • Index + optimize: filter combinations with genuine search demand (e.g. a “red running shoes” facet that people actually search). Those deserve a real URL, a unique title and H1, a sentence of unique copy, and a self-referencing canonical. Do the keyword research first — don’t index facets on a hunch.
  • 404 the dead ends: return a 404 for empty or nonsensical filter combinations so they don’t accumulate as crawlable junk.

A note on the deprecated control: the Search Console URL Parameters tool is gone (sunset April 2022). Google handles parameters automatically now and said only about 1% of the tool’s configurations were doing anything useful. If you were relying on it to tame facets, that lever no longer exists — robots.txt and canonicals are the replacement.

Pagination in 2026 — what actually works

This is the section with the most outdated advice floating around, so here’s the accuracy spine:

rel=prev/next is dead. Google confirmed in March 2019 that it had silently stopped using the tags years earlier: “Google no longer uses these tags, although these links may still be used by other search engines.” Do not implement rel=prev/next as your pagination solution — it does nothing for Google. (It’s cheap to keep for Bing and others, but it’s not the strategy.)

Do NOT canonical paginated pages back to page 1. This is the mistake that quietly deletes half your catalog from the index. Google’s canonical-mistakes post is explicit: “Specifying a rel=canonical from page 2 (or any later page) to page 1 is not correct use of rel=canonical.” If you do this, the products that only appear on pages 2+ never get indexed. Each paginated page should self-canonical — Google: “Don’t use the first page of a paginated sequence as the canonical page.”

The current model is one of two patterns:

  1. Each paginated page is indexed on its own merits. Give each page a unique URL (?page=2, not a # fragment — “Google ignores fragment identifiers”), a self-referencing canonical, and a sequential <a href> link to the next page so Googlebot can crawl the chain: “Include links from each page to the following page using <a href> tags.”
  2. A “view all” page as the canonical, if you have one and it loads acceptably. When a single view-all page exists, point the paginated component pages at it. This only works when view-all is genuinely usable — don’t force a 10,000-product page to load for the sake of it.

Infinite scroll / load-more needs proper JavaScript SEO: a real paginated URL behind each “page” of results, plus sitemaps or a Merchant Center feed as a discovery backstop so products aren’t trapped behind a scroll event. And return a 404 for empty paginated results rather than serving a blank indexable shell.

URL structure

Two patterns, pick one and commit:

  • Top-level/laptops/. Maximum proximity to the homepage (a hair more link equity), but it competes with everything else at the root and gets unwieldy at scale.
  • Parent + child/electronics/laptops/. More descriptive, reinforces hierarchy, scales cleanly. This is what most large catalogs use, and it’s the pattern this site uses for clusters generally.

Restructuring later means redirects, so the commitment matters more than the choice. Beyond the path: use ?key=value parameters (“Use ?key=value URL parameters rather than ?value, where possible”), never put the same parameter twice (“Googlebot may ignore one of the values otherwise”), and keep session/tracking parameters off your internal links (“Avoid internally linking to temporary parameters, such as session-IDs, tracking codes, user-relative values”). Keep the URL identical across your internal links, sitemap, and canonical tag.

One more URL-level rule worth baking in: an empty category should noindex or 404 — Google: “If a category has no items, use a noindex robots meta tag. If your site detects that a category has become empty… consider returning a 404.”

The “thin category” problem — content without stuffing

Here’s where the advice gets nuanced, and where a lot of stores overcorrect into keyword stuffing. The accurate position:

A category page that is only a product grid with no context can be hard for Google to rank. Mueller, March 2019: “When the ecommerce category pages don’t have any other content at all, other than links to the products, then it’s really hard for us to rank those pages.”

But extra content is helpful, not required. Mueller again, on whether the product names alone can carry it: “If the names of the products are clear enough to us to understand… then it’s clear that this is a list of running shoes. You don’t need to put in extra text there.” And on word counts: “We don’t have any limits. There’s no limit… you have to have some information on a page so that we understand what the topic is. But that’s generally very little information.”

The failure mode is the keyword-stuffed footer blob. Mueller calls it what it is: “From our point of view that’s essentially keyword stuffing. So that’s something which I would try to avoid.” His guidance on the right way: “I’d try to stick to really informative content and put that in places where you think that users will be able to see it.”

So the practical rule:

  • Add content only where it earns its place — a short, genuinely useful intro (a couple of sentences answering a purchase-decision question), a buying guide for head-term categories with real informational demand, or an FAQ shoppers actually ask.
  • Put it where users see it (top of the page, integrated), not a hidden wall at the bottom.
  • A small amount of duplicated boilerplate across subcategories is fine — Mueller: “If you’re talking about a very small amount of text then having that duplicated is absolutely no problem.”

I’ll note the honest tension: plenty of SEOs keep adding footer text because it keeps working in their tests — the community’s standing retort is “I’ll stop doing it when it stops working.” My take: that’s a fragile bet against a documented spam signal. If you’re going to add content, make it the kind a shopper would actually read.

Internal linking — the on-ramp job

Category pages are PageRank distribution nodes, so treat the links as load-bearing:

  • Link to all products in the category (or paginate so they’re all reachable via <a href>). If you genuinely can’t, a sitemap or Merchant Center feed is the fallback — but on-page links are the primary mechanism.
  • Use real <a href> links, not JS click handlers: “Use <a href> tags when creating links to other content. Don’t use JavaScript events on other HTML DOM elements for navigation.”
  • Link count signals importance. Google: “The more links a page has to it within a site, the higher the relative importance.” Link your best categories from the homepage and from relevant content; link best-sellers up from higher in the hierarchy.
  • Breadcrumbs in both the UI and as BreadcrumbList schema reinforce hierarchy and give Google clean anchor-text context.

Title tags, meta descriptions, H1

  • Title: include the category name (your primary keyword). Templates like [Category] — [Brand] or [Category]: [N] Products — [Brand] work. For paginated pages you can leave titles as-is (Google tries to recognize sequences) or append — Page N.
  • Meta descriptions: programmatic generation is fine and encouraged at scale — lean on purchase-decision language (price range, number of products, brands).
  • H1: parallel the title; one clean H1 is semantically tidiest, though multiple H1s won’t tank you per Mueller.

Structured data

  • BreadcrumbList — yes. This is the structured data that matters for category pages: it helps Google “understand the hierarchy of pages on your site” and drives breadcrumb display in the SERP. Google’s guidance is to mark up “a typical user path to a page, instead of mirroring the URL structure.”
  • Product rich-result markup — no. Don’t put Product rich-results markup on a multi-product listing page; Google’s product rich results support single-product pages, not listings.
  • CollectionPage / ItemList — optional. No native Google rich result today, but they can aid machine-readability of the list. FAQPage can be worth it if you have genuinely useful, naturally integrated Q&A.

Monitoring

  • GSC Page Indexing report — watch for a ballooning count of parameter/facet URLs in the excluded buckets; that’s your facet strategy leaking.
  • Crawl Stats — if Googlebot is spending disproportionate time on parameter URLs, tighten robots.txt or canonicals.
  • Rich Results Test / URL Inspection — validate BreadcrumbList and confirm how a category page actually renders and indexes.
  • Site Audit — crawl depth, orphaned products, internal-link count per page.

Where this sits

Category page SEO is one piece of ecommerce site structure. The facet decisions above are covered in full in faceted navigation; for the page type on the other end of the link — the individual product page — see product page SEO; and for how the whole hierarchy fits together, ecommerce site architecture.

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin an expert quote first.