Ecommerce Category Page SEO: The Complete Guide for Shopify and WooCommerce

Camilla Gleditsch 10 min read
Branded gradient for ecommerce category page SEO guide - deep violet and soft lavender

Category pages are the most underoptimised pages in most Shopify and WooCommerce stores. They capture the highest-volume search queries in ecommerce — “men’s running shoes,” “organic skincare moisturiser,” “stainless steel water bottles” — yet most stores publish them with a page title, a grid of products, and nothing else.

That’s not an SEO strategy. It’s a missed opportunity.

Here’s what actually makes a category page rank, how to fix the faceted navigation problem that quietly creates thousands of duplicate URLs, and three changes you can make this week.


Why Are Category Pages the Highest-Value Pages in Your Store?

Category pages rank for the broadest, highest-volume commercial queries in ecommerce — “men’s running shoes,” “organic skincare,” “standing desks” — because they match what buyers want: options, not one specific product. A single well-optimised category page can drive thousands of monthly sessions from buyers ready to convert.

Category pages rank for the broadest, highest-volume keywords your buyers use. When someone types “running shoes for women” into Google, they’re not looking for one specific product. They want options. That intent matches a category page perfectly — not a product page, not a blog post.

The buyer is at the top of their decision funnel. Volume is high, intent is commercial, and the searcher expects to be shown a curated selection. That’s exactly what a well-structured category page delivers. Get it right and a single page can drive thousands of monthly sessions from buyers who are one click away from converting.

Most stores don’t get it right. The pages exist, the products are there, but Google has no reason to surface them above a competitor who put in 20 minutes of optimisation work.


What Makes a Category Page Actually Rank?

A category page ranks when it has a keyword-matched H1, 80-150 words of introductory copy above the product grid, correct canonical tags to prevent faceted navigation duplicate URLs, and internal links connecting it to related categories and product pages.

Category pages rank for specific phrases — “organic cotton baby clothing,” “professional chef knives,” “wireless gaming headsets.” Your H1 needs to contain the exact or close-variant phrase people are searching.

Shopify auto-generates H1s from your collection title. If your collection is called “Headsets - Gaming,” your H1 is going to read “Headsets - Gaming” — which nobody searches for. Rename the collection. Make the H1 match the search query. It is one of the highest-impact single changes you can make.

For WooCommerce, the category title becomes the H1 by default. Same principle applies — edit the category name to reflect buyer language, not internal catalogue logic.

Does your page have introductory copy above the product grid?

Google needs text to understand what a page is about. A grid of product images and prices gives it almost nothing.

You need 80 to 150 words above the fold — above the product grid — that:

This copy should read like a helpful sentence from a store assistant. It should not read like a keyword list.

Are you linking internally between categories and products?

Internal links distribute ranking authority. If your homepage links to your category pages, and your category pages link to your product pages, Google can follow the chain. More importantly, it signals hierarchy — your homepage is the most authoritative page, your category pages are second-tier, your product pages inherit from both.

Most stores link from homepage to categories. Few category pages link back up to the homepage or across to related categories. That’s ranking potential left on the table.

Are you using schema markup on category pages?

ItemList schema tells Google: “This page contains a structured list of products.” It is not required to rank, but it improves how your pages are parsed and displayed in search results. On Shopify, most themes do not add this by default. On WooCommerce, you may need a plugin or a manual JSON-LD block.


How Does Faceted Navigation Create an SEO Problem in Shopify and WooCommerce?

Faceted navigation creates an SEO problem by generating hundreds of near-duplicate URLs from filter combinations — size, colour, price — that Google indexes separately. Instead of one strong category page, your ranking authority is split across dozens of weak pages. The fix is canonical tags and selective noindexing of filter URLs.

Faceted navigation is the filter system on your category pages — size, colour, price range, brand. It is essential for the buyer experience. It is also one of the most common sources of SEO damage in ecommerce stores.

Here is what happens. A buyer lands on your “Men’s Trainers” category page. They filter by size 10. Your store generates a URL like:

/collections/mens-trainers?size=10

Or in WooCommerce:

/product-category/mens-trainers/?filter_size=10

Now multiply that across every filter combination. Size 10 + blue. Size 10 + blue + under £80. Shopify and WooCommerce generate a unique URL for each combination. A store with 5 colour filters, 8 size filters, and 3 price filters can produce hundreds of distinct URLs — all pointing at thin, near-duplicate pages with almost identical content.

Google indexes many of these pages. They compete with each other and with the canonical category page for the same keywords. Ranking authority gets split across dozens of weak pages instead of concentrated in one strong one.

The fix for Shopify: Use the canonical tag to point all filtered URLs back to the base collection URL. Shopify does this automatically for some filter types but not all. Audit your store with Google Search Console and check for unintended indexing of filter URLs. Use the noindex meta tag or robots.txt to block pages that should not be indexed.

The fix for WooCommerce: YOAST SEO and Rank Math both have settings to noindex filtered URLs. Enable this. If you are using a custom filter plugin, check whether it generates canonical tags or adds noindex automatically. Most do not.

This is not a quick 10-minute fix. But it is one of the highest-impact technical corrections you can make for ecommerce category SEO. Stores with large catalogues and complex filter systems sometimes see a 20 to 40 percent improvement in category page visibility after cleaning up faceted nav indexation.


How Do You Write Category Page Copy That Ranks Without Feeling Like SEO Copy?

Good category page copy is 80-150 words placed above the product grid. It confirms what the page is about, contains the target keyword once or twice, and reads like a helpful shop assistant — not like it was written for a robot. Avoid keyword stuffing and padding; Google discounts it.

Category page copy fails in two directions. It is either invisible — no copy at all, just products — or it is obvious SEO padding that nobody reads and Google increasingly discounts.

The goal is copy that earns its place. Here is the structure that works.

Opening sentence: Confirm what the page is and who it’s for.

“25 organic cotton baby bodysuits, sizes 0-24 months. All certified GOTS organic.”

That is useful to the buyer and keyword-rich for Google. It does not read like it was written for a robot.

One to two sentences of buying guide context: What should the buyer know before choosing?

“If you’re buying for a newborn, sizes 0-3 months run slightly small — most customers size up by one.”

This is the kind of sentence a good shop assistant would say. Google rewards it because real buyers engage with it. It reduces bounce rate. It builds dwell time. Both are positive ranking signals.

Closing line (optional): A soft pointer to related categories or the buying guide.

“Looking for toddler sizing? See our range of toddler essentials.”

That is your internal link anchor. It is also useful copy. Two functions, one sentence.

Keep the total word count at 80 to 150 words. This is not a blog post. It is a concise, useful introduction that tells Google what the page is about and tells the buyer they are in the right place.


How Should You Handle Internal Linking From Category Pages?

Internal links from category pages pass authority to product pages, help Google discover new pages, and signal your store’s topical structure. Link down to top products, across to related categories, and up to your homepage via breadcrumbs. All three directions matter.

Internal linking from category pages does three things: it passes authority down to your product pages, it helps Google discover product pages that might not be in your sitemap, and it connects related parts of your catalogue so Google understands the topical structure of your store.

Link down: category to product pages. Your product grid already does this. Every product thumbnail is a link. Make sure your top 5 to 10 best-selling or highest-margin products also appear in any “featured” or “recommended” callout above or below the grid. These editorial placements carry more weight than standard grid links.

Link across: category to related categories. A “Men’s Trainers” page should link to “Men’s Running Shoes,” “Men’s Casual Trainers,” and “Trainers by Brand” — if those pages exist. Use a simple “Related categories” row or inline text links in your intro copy.

Link up: category to the landing page. Your homepage and main navigation are the most authoritative pages on your site. Category pages should have a clear breadcrumb trail back up. Most Shopify themes include breadcrumbs. Enable them if they are turned off. WooCommerce with Yoast generates breadcrumbs automatically — but verify they are enabled and visible.

The breadcrumb also adds BreadcrumbList schema when implemented correctly, which improves how your pages display in Google search results.

For more detail on optimising product pages within this structure, see the product page SEO guide.


Three Quick Wins You Can Apply This Week

Rewrite the H1s on your five highest-traffic category pages, add 100 words of intro copy to each, and audit faceted navigation URLs in Google Search Console for unintended indexing. These three changes take under two hours total and compound within 4-6 weeks.

You do not need to fix everything at once. These three changes take under two hours and produce measurable results within 4 to 6 weeks.

1. Rewrite the H1 on your five highest-traffic category pages.

Pull your top category pages from Google Search Console. Look at the queries they are already receiving impressions for. Rewrite each H1 to match the top-impression query more closely. Do not change the URL slug — just the page title / collection name.

2. Add 100 words of intro copy to each of those five pages.

Use the format described above. One confirming sentence, one or two sentences of buying context, one optional internal link. Paste it above the product grid in your theme editor. This is a 15-minute task per page.

3. Audit your faceted navigation for rogue indexed URLs.

In Google Search Console, go to Index > Pages. Filter by “Indexed, not submitted in sitemap.” If you see large numbers of filter-generated URLs (?size=10, ?color=blue, ?sort=price), you have a canonicalisation problem. Flag it for your next technical sprint.

These three changes address the most common category page failures in Shopify and WooCommerce stores. None of them require developer time. All of them compound — rankings improve, traffic increases, and the pages you fix first start generating internal link equity for the pages you fix next.


If you want someone to run the full category SEO audit for your store — H1s, intro copy, faceted nav, schema, and internal linking — that is exactly what our ecommerce category page SEO service covers. Or start at the top: ecommerce SEO company overview.

For a broader look at how to evaluate and choose an agency, read the full guide to top ecommerce SEO companies.

Let's talk about your SEO

Leave your details and we'll be in touch within 24 hours.