Category Page SEO: 11 Steps to Rank Category Pages That Sell

Category page SEO is the work of making your category (or collection) pages rank for broad shopping searches like “trail running shoes”. It comes down to four things: pick categories people actually search for, give each one a clean URL and a clear title and H1, add short copy that helps people choose, and keep filters and pagination from flooding Google with duplicate URLs. Then judge the result by the revenue each category earns from organic search, not by rankings alone.
This guide walks through all eleven steps, flags where popular advice contradicts Google’s own documentation, gives you a diagnostic table for categories that refuse to rank, a copyable page template, and a worked example for deciding which category to fix first.
What a category page is and why it matters for SEO
A category page groups related items under one topic and links to each of them. On a store it sits between the homepage and the product pages: Home > Running Shoes > Trail Running Shoes > a specific shoe. Shopify calls these pages collections, many SEO teams call them PLPs (product listing pages), and some split them into CLPs for broad parent categories (“Footwear”) and PLPs for the narrower child pages (“Boots”). Blogs have category pages too: an index of every post on one subject.
Category pages matter for three reasons:
- They match broad commercial searches. Someone searching “trail running shoes” wants to compare options, not land on one model. Google tends to rank listing pages for those queries, and those queries usually have far more searches than any single product name.
- They feed crawling. Every product in the grid gets a link from the category, so new products are discovered through it and authority flows down to them.
- They earn non-brand customers. People who already know your brand search for it. People who don’t search for the thing you sell, and the category page is usually the page that answers that search.
Category page vs product page: which one should rank?
Let the search decide. Look at the current top results for the query. If they are mostly listing pages (several products on one page), the query belongs to a category. If they are single products or a brand’s model page, it belongs to a product page. A common complaint is that product pages rank well while category pages do not: product pages win long, specific queries with less competition, while category pages fight for broad ones. The fixes below are mostly about giving the category page a fair fight. For the product side, see our guide to SEO for ecommerce product pages.
| Element | What good looks like | Step |
|---|---|---|
| Category choice | Named in searchers’ words, with commercial or transactional demand | 1 |
| URL | /running-shoes/trail/ : short, lowercase, no parameters | 2 |
| Title and H1 | Category name first, brand after; one H1 | 3 |
| Copy | Short unique intro above the grid, buying help below | 4 |
| Product grid | Names, prices, ratings in the HTML; canonical product links | 5 |
| Filters | Only facets with search demand are indexable | 6 |
| Pagination | Real <a href> links, each page self-canonical | 7 |
| Internal links | From nav, parent, siblings, guides and blog posts | 8 |
| Structured data | BreadcrumbList; no review stars for the category | 9 |
| Health | Indexable, fast, no duplicate category URLs, fresh | 10 |
| Conversion | Filters, sorting and visuals that help people pick | 11 |
How to optimize category pages for SEO in 11 steps
Step 1: Choose categories people search for
Your categories should mirror how shoppers search, not how your warehouse or buying team labels stock. Before touching a single title tag, check that each category targets a real query.
- Start with business value. List the product lines that matter most: best sellers, high-margin ranges, lines you want to grow. Category work takes time, so spend it where a ranking gain would be worth money.
- Run keyword research per line. Use a keyword tool, Google autocomplete, related searches and People Also Ask to find the phrases people use and how often. Check the top results of the phrase you plan to target, and see which of your pages already rank for what in Search Console.
- Use the searcher’s word, not yours. If your range is called “denim pants” and everyone searches “jeans”, the category should be “Jeans”. Brand-specific naming is one of the most common reasons a category never ranks.
- Match intent. Of the four intent types (informational, navigational, commercial, transactional), category pages fit the last two. “Order Mother’s Day flowers” is a category query. “Which flowers for Mother’s Day” is a guide that should link to the category. Our post on commercial intent keywords covers how to tell them apart.
- Add long-tail categories where demand exists. Narrow categories like “wide-fit trail running shoes” get fewer searches but face less competition, and specific searches tend to be closer to purchase. Create them only when you have enough products to fill them.
- Mine your site search and feedback. If many visitors search your store for “red golf shirts” and you only have black and white categories, that is a missing category. An exit survey asking “Did you find what you were looking for?” surfaces the same gaps.
Step 2: Build a shallow hierarchy with clean URLs
Go from general to specific: parent categories, then one or two levels of subcategories, then products. Shoppers should reach any product in a few clicks from the homepage, and the URL should show where the page sits.
- Nest subcategories in subfolders:
/running-shoes/and/running-shoes/trail/. Keep slugs short, lowercase and hyphenated, without stop words or dates. - Drop CMS filler like
/category/when your platform allows it, and make the canonical URL static, with no?category=101parameter. - Link the main categories from the primary navigation with plain, descriptive labels. A mega menu works for large catalogs. Do not stuff keywords into every menu item; repetitive labels make the menu harder to use.
- Group for both search and usability. A store might put “furniture and lamps” together because shoppers think of them together, but people searching for lamps and people searching for sofas want different pages. Keep them as separate categories and cross-link them.
- Add breadcrumbs near the top of the page that follow the real hierarchy (not just “Home”), and mark them up with BreadcrumbList.
- Leave room to grow: plan where future subcategories will slot in so you will not have to change URLs later.
Step 3: Write the title tag, meta description and H1
The title tag is the strongest on-page signal of what the page targets, and it is what people see in the result. Large catalogs need a template, with manual tuning for the categories that matter most.
- Title: category name first, a secondary term or an offer if it fits, brand last. Keep it short enough to show in full and unique for every category.
- Meta description: not a ranking factor, but it can be shown as your snippet. Treat it as a short pitch: what is in the range, why buy from you (free shipping, easy returns), and a call to action.
- H1: one H1 with the category name, written for people (“Men’s Trail Running Shoes”). It does not have to match the title tag. Use H2s for subcategory blocks or popular filters such as “Shop by brand”.
- Decouple fields. Many platforms tie the H1, slug and breadcrumb label to one “name” field. If you cannot edit them separately, fix that before scaling any optimization.
Step 4: Add copy that helps people choose
A category page that is only a grid of products and prices gives search engines little to understand and shoppers little help. The fix is not an essay. It is two small blocks:
- Above the grid: a short intro that says what the category covers (types, materials, brands, use cases) and why buy from you. Keep it brief so products stay above the fold on mobile.
- Below the grid: buying help: how to choose, a comparison of the main types, sizing or fit notes, delivery and returns, and FAQs sourced from your customer service team. Link to subcategories and guides inside this copy.
How long should it be? The top guides disagree: suggestions range from a short paragraph to several hundred words, and Google publishes no word count for category pages. Write what helps a shopper decide, then stop. Avoid three common failures: the same boilerplate pasted into every category, copy embedded in a banner image (search engines cannot read it as text), and off-intent filler like a history of the product type.
Step 5: Make the product grid crawlable and useful
The grid is the most important part of the page for both shoppers and crawlers.
- Render product names, prices and links in the HTML. A grid that only appears after JavaScript runs gives crawlers less to read and can delay or block discovery of products.
- Show the details shoppers use to choose: price, rating, colors available, key specs like size or material.
- Link each product to its canonical URL. On Shopify, theme links inside a collection often point to a collection-scoped product URL that canonicalizes to the main one; link to the main
/products/URL instead. - Compress images, size them for the slot, set width and height in the HTML, and serve them from a CDN.
- Keep enough products in each category to be worth a visit. A category with two items rarely beats a competitor showing dozens; merge thin categories into a broader one.
- Order the grid deliberately: best sellers, high-value items and items in stock first, rather than whatever order the database returns.
Step 6: Control faceted navigation
Filters for size, color, price and brand are great for shoppers and dangerous for crawling. Every combination can create a new URL, so a category with a handful of filters can produce thousands of near-duplicate pages that eat crawl resources and compete with the main category. Google’s guide to managing crawling of faceted navigation URLs sets the rules:
- If you do not need filtered URLs indexed, the most effective option is to disallow them in robots.txt. Another is to put filters in a URL fragment (
#color=red), which Google generally ignores for crawling and indexing. rel="canonical"andrel="nofollow"on filter links are, in Google’s words, generally less effective in the long term. Do not rely on a canonical tag alone to contain a large facet system.- If you do want some filtered URLs indexed, use the standard
¶meter separator, keep filters in the same order every time, and return a 404 status when a combination has no results instead of an empty page or a redirect.
Which filter combinations deserve to be indexable? Use this rule:
| Filter URL | Search demand for that exact phrase? | Action |
|---|---|---|
| /running-shoes/trail/?brand=salomon | Yes: “salomon trail running shoes” | Make it a real subcategory or indexable facet with its own title, H1 and copy |
| /running-shoes/?color=black | Some: “black running shoes” | Indexable only if it has enough products and unique copy |
| /running-shoes/?size=10&width=wide&color=green | No one searches this combination | Block from crawling; keep it for shoppers |
| /running-shoes/?sort=price-asc | Never | Block from crawling; sort order is not a page |
| Any combination with zero products | Irrelevant | Return 404, per Google’s guidance |
Step 7: Paginate with real links
Most of a large catalog sits behind page 2 and beyond, so pagination decides whether those products get found. Google’s pagination guidelines are short:
- Link each page to the next with a normal
<a href>link, and link back to the first page. - Give each page its own URL (for example
?page=2) and its own canonical. Do not canonicalize every page to page 1. - Do not use URL fragments for page numbers; Google ignores them.
- Google no longer uses
rel="next"andrel="prev". They do no harm and other search engines may read them. - “Load more” buttons and infinite scroll are fine for shoppers if crawlable paginated links still exist behind them. A sitemap or a Merchant Center feed helps Google find every product either way.
Avoid noindexing paginated pages or nofollowing pagination links: both cut crawlers off from the products deeper in the list.
Step 8: Point internal links at the category
A category that gets few internal links looks unimportant. Often the site sends more links to products than to the category that should rank. Fix the balance:
- Parent categories link to every child, and every child links back up (breadcrumbs do this automatically).
- Link sibling and complementary categories: tents to sleeping bags, dining tables to dining chairs.
- Link from buying guides and blog posts to the category with the category name as anchor text. This is where an informational article earns its keep.
- Give the most links to the categories that earn the most revenue (Step 11 and the revenue section show how to find them).
- Automate parent-child links in templates so new subcategories never end up orphaned.
Step 9: Add the structured data that applies
- BreadcrumbList: the most useful markup for a category page. It describes the page’s place in the hierarchy.
- ItemList: you can describe the products in the list, but do not expect a guaranteed rich result from it for a standard product category.
- Product and review markup: keep it on product pages. Google’s review snippet guidelines say to provide review information about a specific item, not about a category or a list of items. Marking up an aggregate star rating for the whole category goes against that rule.
- FAQPage: fine to add for your below-grid FAQs, but since August 2023 Google shows FAQ rich results only for well-known, authoritative government and health sites. Write the FAQs for shoppers, not for stars in the results.
Step 10: Keep the page technically healthy and fresh
- Confirm the category is indexable: no stray
noindex, not blocked in robots.txt, canonical pointing to itself. Use the URL Inspection tool in Search Console. - One category, one URL. When a subcategory appears under two parents, pick one canonical URL and link to it from both. Two live category URLs with the same products split signals and split your analytics.
- Check speed and mobile layout on the category template itself, since it is usually heavier than other pages.
- When you rename or merge a category, 301 redirect the old URL to the closest new category. Changing top-level folders moves every URL below them, so plan those changes carefully.
- Keep it fresh: surface new and seasonal products, pull in recent reviews of products in the category, and update the copy when the range changes.
Step 11: Improve the page for conversions
A category page that ranks but does not sell is half done. Usability work also tends to help SEO, because it gives people a reason to stay and click into products.
- Offer filters that fit the category (seating capacity for tables, heel drop for running shoes) and never show a dead end with zero results.
- Use clear category names, a consistent layout across categories, and sharp product images with consistent sizes.
- Show ratings and review counts on product cards and highlight best sellers or staff picks.
- A/B test filter placement, sort order and copy, and measure the test by revenue per session.
For page-level conversion benchmarks and what moves them, see landing page conversion rate.
Category page SEO template
Copy this structure for each category, then replace the bracketed parts. The example values are for an illustrative running shoe store.
URL: /[parent-category]/[category]/
e.g. /running-shoes/trail/
Title tag: [Category] for [Audience or Use] | [Brand]
e.g. Trail Running Shoes for Men & Women | Stride Co
Meta desc.: Shop [number or range] of [category] from [top brands].
[Differentiator]. [Offer]. [CTA].
e.g. Shop trail running shoes from Salomon, Hoka and
Brooks. Grippy, waterproof and wide-fit options.
Free returns. Find your pair.
Breadcrumb: Home > [Parent] > [Category]
H1: [Category]
e.g. Trail Running Shoes
Intro (above grid, a few sentences):
What the category includes, the main types,
who it is for, why buy here.
Subcategory links: [Child 1] · [Child 2] · [Child 3]
Product grid: name, price, rating, colors, key spec
Below the grid:
H2 How to choose [category]
H2 [Type A] vs [Type B]
H2 [Category] FAQs (from your support inbox)
Links to related categories and buying guidesWhere popular advice contradicts Google
Some widely shared category page tips do not match Google’s current documentation. When the two disagree, follow the documentation.
| Common advice | What Google documents | What to do |
|---|---|---|
| Remove <a href> from pagination buttons so the crawler does not follow them | Link pages with <a href> so Googlebot can find the next page | Use real links for page 2, 3 and beyond |
| Add AggregateRating to the category page for star snippets | Review information must be about a specific item, not a category or a list of items | Keep rating markup on product pages |
| Add FAQ schema for extra SERP visibility | FAQ rich results only show for well-known government and health sites | Write FAQs for shoppers; expect no stars |
| A canonical tag will contain faceted URLs | Canonical and nofollow are generally less effective long term than robots.txt or fragments | Block unneeded facets from crawling |
| Canonicalize paginated pages to page 1 | Give each page its own canonical URL | Self-referencing canonicals on every page |
| Use rel=next/prev for pagination | Google no longer uses these tags | Optional; rely on visible links |
Two other claims you will see deserve caution: that bounce rate and time on page are direct ranking factors, and that an identical H1 and title tag gets penalized. Google has not documented either. Write a distinct, helpful title and H1 because it helps people, not to avoid a penalty.
Why your category page is not ranking
Match the symptom you see in Search Console to the likely cause, then run the check before changing anything.
| Symptom | Likely cause | Check | Fix |
|---|---|---|---|
| A product page ranks for the category query | Category is weaker in links and copy, or the product title matches the query better | Search Console query report: which URL gets impressions for the term | Add internal links and helpful copy to the category; link the product up to it |
| A filtered or sorted URL ranks instead | Facets are indexable and compete with the category | site: search and Pages report for parameter URLs | Block those facets from crawling; strengthen the clean category URL |
| A blog post ranks instead | Intent mismatch: the query is informational, or the post is the better page | Look at the top 10: guides or listing pages? | If guides win, link the post to the category; if listings win, improve the category |
| Category not indexed | noindex, robots.txt block, canonical to another URL, or too few links | URL Inspection tool | Remove the block, self-canonical, link from navigation |
| Stuck on page 2 or 3 | Thin page, weak authority, two category URLs splitting signals | Compare your copy, product count and links with the top results | Merge duplicates, add buying help, earn links to the category |
| Products deep in the category never get indexed | Pagination not crawlable, JavaScript-only grid or infinite scroll without links | View source: are page 2 links and product links in the HTML? | Real paginated links; render the grid server-side |
| Ranks well but sells little | Wrong products, poor sorting, weak filters, or the query is broader than your range | Revenue per organic session for the page | Fix merchandising before chasing more traffic |
Measure category page SEO in revenue, not rankings
Rankings tell you whether Google likes the page. Revenue tells you whether the work paid off, and which category to fix next. Search engines do not pass the keyword to your analytics, so the unit of measurement is the landing page: the category URL where the organic visit started.
Pull two reports and join them by URL:
- Search Console, Performance > Pages: impressions, clicks and CTR for each category URL.
- Your analytics landing page report, filtered to organic search: sessions, orders and revenue for each category URL. In GA4 this is the Landing page report with a filter on the session default channel group.
Then estimate what an improvement on each category would be worth:
Target CTR is your assumption about where a better position would put you. Use the CTR of your own pages that already rank higher as a guide, and keep it conservative.
Worked example (illustrative numbers)
A running store compares three categories. All numbers are made up for the example.
| Category | Impressions | CTR | Clicks | Conv. rate | AOV | Revenue | Rev. / session |
|---|---|---|---|---|---|---|---|
| Running shoes | 40,000 | 1.5% | 600 | 2.0% | $110 | $1,320 | $2.20 |
| Trail running shoes | 8,000 | 3.0% | 240 | 3.5% | $140 | $1,176 | $4.90 |
| Running socks | 15,000 | 5.0% | 750 | 0.6% | $25 | $112.50 | $0.15 |
Now apply the formula, assuming better rankings would lift CTR to 4% and 6% for the first two:
Three decisions come out of this:
- Running shoes is the SEO priority: lots of impressions, low CTR, decent conversion. Moving up the results is worth about $2,200 a month in this example: 1,000 extra clicks, 20 extra orders at $110.
- Trail running shoes earns the most per session. It is a good place for internal links from guides, and a candidate for more long-tail subcategories.
- Running socks needs merchandising work, not SEO. More traffic at $0.15 a session would add little.
This is the 80/20 rule in practice: a few categories usually hold most of the opportunity, and the formula shows you which ones. Rerun it monthly after changes, and compare revenue per organic session before and after, not just position.
SEOConversion attributes conversions and revenue from organic search and AI assistants (ChatGPT, Perplexity, Claude, Gemini, Copilot) to the landing page, so each category URL shows what it earned. On Shopify, WooCommerce and Webflow it reads the purchase, add-to-cart and checkout events from the dataLayer. It does not show keywords or rankings; pair it with Search Console for those.
For the full setup of organic revenue reporting, see SEO conversion tracking, and for how to credit a sale that started on a category page and finished days later, see organic conversion attribution.
Category page SEO FAQ
What is a category page on a website?
A category page lists a group of related items under one topic, such as "women’s running shoes" on a store or "email marketing" on a blog. It sits between the homepage and the individual product or post pages, so it helps visitors browse and helps search engines discover and understand the pages below it. On ecommerce sites it is usually the page that ranks for broad shopping searches.
Is SEO dead now with AI?
No. AI answers take some informational clicks, but shopping searches still end on a page where people compare products and buy, and category pages are built for exactly that. AI assistants also read category pages when they recommend products, so clear text, prices and availability in the HTML help in both places. Measure it by revenue from organic and AI referrals per landing page, not by traffic alone.
What is the 80/20 rule in SEO?
It is the idea that a small share of your pages or keywords produces most of the results. For category page SEO it means ranking your categories by organic revenue and opportunity, then spending most of your effort on the few at the top instead of rewriting every category at once. Your own revenue-per-landing-page report tells you where your split actually falls.
What are the categories of SEO?
SEO is usually split into on-page (titles, headings, copy, internal links), technical (crawling, indexing, speed, structured data) and off-page (links and mentions from other sites). Category pages need all three: on-page work so the page matches the search, technical work so filters and pagination do not waste crawling, and internal plus external links so the page has authority.
What are the four main types of search intent in SEO?
Informational (learn something), navigational (reach a specific site), commercial (compare options before buying) and transactional (buy now). Category pages fit commercial and transactional searches like "trail running shoes", while informational queries like "how to choose trail running shoes" belong in a guide that links to the category.
What are the 5 best SEO tools for category pages?
Google Search Console for impressions, clicks and indexing by URL; Google Analytics 4 or another analytics tool for revenue by landing page; a site crawler such as Screaming Frog to audit canonicals, facets and pagination; a keyword tool such as Semrush or Ahrefs for category demand; and PageSpeed Insights for load speed. Search Console and PageSpeed Insights are free.
See what each category page earns from search.
SEOConversion attributes conversions and revenue from organic search and AI assistants to each landing page, reading purchase events on Shopify, WooCommerce and Webflow. One script, cookieless, with a 7-day free trial and no credit card.
Start free