How to Build an SEO-Friendly Category Tree

When e-commerce SEO comes up, most brands think of product descriptions, blog posts or site speed. One of the areas that most directly affects organic sales potential is usually overlooked: the category tree.

Many shopping searches on Google target a group of products, not a single item. Someone searching for “black dress”, “satin dress” or “white mini dress” wants to compare alternatives, not look at one product.

That is why, for a large share of these queries, the page type Google wants to show is a category or product listing page rather than a product detail page.

If your site only has a general “Dresses” category, you may be leaving significant ground to competitors on the more specific searches.

Using the dress category as the running example, this guide covers;

  • which subcategories should be opened,
  • which keywords can be targeted from existing categories,
  • how new categories fit into the site architecture,
  • how to prevent categories from overlapping,
  • how to track the categories once they are live

step by step.

What Is a Category Tree?

A category tree is the hierarchical structure of an e-commerce site’s product groups, organised into main and subcategories.

Users reach products through this structure, and search engines discover the relationships between pages largely through the navigation and internal links it creates.

A classic structure might look like this:

Women
└── Clothing
    └── Dresses

This structure makes sense for product management, but on its own it does not match how users actually search on Google.

Users usually search for things like:

  • “black dress”
  • “white dress”
  • “mini dress”
  • “maxi dress”
  • “satin dress”
  • “casual dress”
  • “black mini dress”

The purpose of an SEO-friendly category tree is to match these needs, wherever there is meaningful search demand, with the right landing pages.

In other words, the category structure should be shaped not only by how the company organises its products, but also

by how users search for those products.

What E-commerce Brands Miss in Their Category Tree

Many e-commerce sites stock dozens of black dresses but have no separate “Black Dresses” category.

The user can open the general “Dresses” category and pick black from the colour filter. Operationally, the need looks covered.

From an SEO standpoint, a different question has to be asked:

Which URL on the site answers the “black dress” search?

If your competitors have built a category for this query with;

  • its own URL,
  • a unique title and H1,
  • internal links,
  • enough product variety

then competing with nothing but your general dresses category becomes hard.

In short: you may have the product, but not the landing page that answers the search demand.

One of the most common problems I see working with brands is that the products people search for are on the site, but there is no category page that serves that demand. Without adding a single product, simply regrouping the existing ones around search behaviour can open up significant organic visibility.

Sungur Kerem Gezergün, E-commerce SEO Specialist

Build a Category Network, Not a Single Keyword

Focusing only on the “dress” query means pointing all of your SEO strength at the broadest and usually most competitive query.

Yet the user’s need can be shaped by different attributes:

Dresses
├── By colour
│   ├── Black Dresses
│   └── White Dresses
│
├── By length
│   ├── Mini Dresses
│   ├── Midi Dresses
│   └── Maxi Dresses
│
├── By fabric
│   ├── Satin Dresses
│   └── Linen Dresses
│
├── By occasion
│   ├── Casual Dresses
│   ├── Office Dresses
│   └── Evening Dresses
│
└── By feature
    ├── Strappy Dresses
    └── Long-Sleeve Dresses

Some meaningful combinations may emerge later:

Dresses
└── Black Dresses
    └── Black Mini Dresses

Not every product attribute or filter combination should become a category.

If you have 10 colours, 6 lengths and 8 fabrics, hundreds of combinations are theoretically possible. Turning all of them into categories is not a sound SEO strategy.

A category should only be created where there is real user demand, enough product variety and a distinct search intent.

How to Build an SEO-Friendly Category Tree

You can build the category tree in four stages:

  1. Find the search demand.
  2. Decide which queries need their own category.
  3. Place the new category correctly in the site architecture.
  4. Assign a primary landing page to every search intent.

Step 1: Do the Keyword Research

The first goal is to understand which phrases users search for around the product group.

Four data sources are especially useful:

  • Semrush
  • Google Ads Keyword Planner
  • Google Search Console
  • Google SERP results

Finding Subcategory Opportunities with Semrush

Search for your main product keyword in Semrush’s Keyword Magic Tool.

“dress”

After picking your market’s database, you will see queries such as:

  • “black dress”
  • “mini dress”
  • “satin dress”
  • “maxi dress”
  • “white dress”
  • “casual dress”

The topic groups in the Keyword Magic Tool can be used to form the first category clusters.

Keywords flagged with Commercial and Transactional intent are the higher-priority candidates in category research.

For example:

“satin dress”

can be a category candidate, while;

“how to iron a satin dress”

is an informational search and belongs on the content side, not in a category.

Check Demand with Google Ads Keyword Planner

Keyword Planner in Google Ads gives you an approximate demand level for the keywords you have researched.

You can search for your product group under “Discover new keywords”, or check the keyword list you built under “Get search volume and forecasts”.

These figures should not be read as exact demand, though.

In accounts without ad spend in particular, volumes appear as wide ranges:

1K – 10K

Google also groups close variants into the same data set.

So a category should never be opened on the strength of one tool’s volume figure alone.

Find Existing Category Opportunities with Search Console

For an e-commerce site that already gets organic traffic, one of the most valuable sources is Google Search Console.

For example, select the

/dresses/

URL with the Page filter and look at which queries it gets impressions for.

QueryImpressionsAverage position
dress45,0008.2
black dress12,40015.7
satin dress8,70018.4
strappy dress4,20021.1

When a general category page collects a high number of impressions from more specific queries, that points at new subcategory opportunities.

These combinations are especially valuable:

  • high impressions,
  • a specific product attribute,
  • the current page ranking in the middle or lower positions,
  • enough products to serve the query better.

Search Console data is also valuable for catching long-tail category opportunities that keyword tools do not show.

Move the Keywords into a Decision Table

KeywordSemrush volumeGoogle AdsGSC impressionsParent category
dress
black dressDresses
white dressDresses
black mini dressBlack Dresses
satin dressDresses

Step 2: Decide Which Subcategories to Open

Not every keyword should become its own category.

Four basic checks can be run on each category candidate.

Check 1: Is There Real Search Demand?

Tools like Semrush and Google Ads help you understand the demand level.

But no volume in the tools does not necessarily mean nobody is searching.

In particular:

  • new trends,
  • niche products,
  • seasonal queries,
  • low-volume long-tail queries

may not show up properly in keyword tools.

So rather than dismissing zero-volume queries outright, evaluate them together with Search Console, on-site search data and the SERP results.

Check 2: Is There Enough Product Variety in the Category?

Google has no official minimum product count for opening a category.

But the user has to be able to make a meaningful choice when they land on the category page.

In practice, on most e-commerce scenarios 4–5 in-stock products can be treated as an operational starting threshold.

The number varies by category and sector.

What matters is that a user landing on the

“Black Mini Dresses”

category does not meet a single product.

Accurate product data is critical too.

If a product’s;

  • colour,
  • fabric,
  • length,
  • occasion

is missing or entered wrongly, it cannot be assigned to the right category.

That is why the category tree is directly tied to product data quality.

Check 3: Does Google Treat This Search as a Separate Intent?

One of the most critical stages of the category decision is SERP analysis.

Compare these two queries, for example:

  • “black dress”
  • “black mini dress”

The aim is to see whether Google ranks similar or different landing pages for the two queries.

Look at as much of the top 10 organic results as you can, not just the first two or three.

Check for:

  • Are the ranking URLs the same?
  • Do competitors use separate “Black Mini Dresses” categories?
  • Or are general “Black Dresses” categories ranking?
  • Are the results mostly PLP/category pages or content pages?

The SERP Overlap Logic

If the top 10 results for two queries are largely the same URLs, Google may be treating the queries as similar needs.

For example:

  • “black dress”
  • “black dresses”

may return largely the same results.

In that case, creating two separate categories is unnecessary.

By contrast, if:

  • “black dress”
  • “black mini dress”

show substantially different URL sets in the search results, “Black Mini Dresses” can be a separate category candidate.

SERP overlap is not an automatic decision mechanism on its own, but it is a strong check for separating search intents.

An Incognito Tab Alone Does Not Mean a Neutral SERP

Checking the SERP in an incognito tab reduces the effect of personal history.

But results can still be affected by;

  • location,
  • device,
  • language,
  • search context

and similar factors.

So back up the manual check with Semrush SERP Analysis or a similar SERP tracking tool where you can.

Check 4: Is a Separate Landing Page Really Needed?

A query having volume does not, on its own, call for a separate category.

Suppose that for the “black mini dress” search you see Google largely ranking general “Black Dresses” categories.

In that case, rather than opening a separate category, it may be better to serve the mini dress need more fully inside the existing “Black Dresses” page.

You can do that by:

  • surfacing the relevant products,
  • mentioning mini styles in the category copy,
  • letting the user filter down to mini options easily,
  • linking through to related subcategories.

The Category Decision Table

Demand?Enough products?SERP shows a distinct intent?Decision
YesYesYesOpen the category
YesYesNoTarget it from the best existing category
YesNoTarget it from an existing category for now
Weak / unclearYesYesValidate with GSC and SERP data
NoNoNoDo not open a category

Step 3: Place the New Category in the Site Architecture

Creating a category is not just opening a new URL.

The page has to be understood as part of the site architecture by users and search engines alike.

URL Structure

The URL should be short, readable and consistent.

For example:

brand.com/black-dresses

or:

brand.com/dresses/black-dresses

Either structure works.

What matters is applying one consistent URL standard across the site.

Avoid:

  • /category-123
  • ?id=4587

The URL folder structure does not have to mirror the category hierarchy exactly.

For search engines to understand the site architecture, internal links and the breadcrumb matter most.

Title and H1

Every category should carry its own primary search intent clearly.

Title: Black Dresses — Styles and Prices | Brand
H1: Black Dresses

Using the same title across “Black Dresses”, “White Dresses” and “Satin Dresses”:

Dresses | Brand

makes it harder for the pages to differentiate.

The Canonical Tag

A category page opened for SEO that you want indexed should, under normal conditions, have a canonical tag pointing at its own URL.

<link rel="canonical" href="https://www.brand.com/black-dresses" />

Pointing the new category’s canonical at the parent:

/dresses/

makes it harder for the page to be treated as a landing page in its own right.

So on special category pages you want indexed, a self-referencing canonical is usually the right approach.

The Indexability Check

Make sure the new category is technically indexable.

The basic points to check:

  • Does the URL return HTTP 200?
  • Is there a noindex tag on the page?
  • Is it blocked by robots.txt?
  • Is the canonical tag correct?
  • Can Google render the page’s main content?

Once the category is created, a check through Search Console’s URL Inspection is worthwhile.

The XML Sitemap

Category URLs you want indexed should be in the XML sitemap.

Updating the sitemap when a new category is created makes it easier for search engines to discover the new URLs.

The Breadcrumb

The category hierarchy should be shown clearly to users and search engines through the breadcrumb.

Home › Dresses › Black Dresses

Breadcrumb links need to be real, crawlable links.

Where possible, BreadcrumbList structured data should be applied too.

Internal Links Within the Tree

The new category should not be left as a URL that merely exists.

Important categories can receive links from:

  • the main menu,
  • the parent category,
  • the breadcrumb,
  • related sibling categories,
  • relevant product pages,
  • discovery areas inside the category.

The main “Dresses” category, for example, can carry subcategory links such as:

  • Black Dresses
  • White Dresses
  • Mini Dresses
  • Satin Dresses

Anchor Text

Internal link text should state the target page’s topic clearly.

Better:

“Browse black dress styles.”

Weaker:

“Click here.”

But linking from every product page to every attribute category is not right either. Links should be genuinely meaningful and relevant to the user.

Make Sure the Links Are Crawlable

On modern e-commerce sites, category navigation is sometimes built purely through JavaScript interaction.

For SEO, use real links wherever possible:

<a href="/black-dresses/">Black Dresses</a>

This makes it easier for Google to discover the URL and understand the site architecture.

Check That the Products Are Crawlable

Getting the category URL indexed is not enough.

The products inside the category also have to be reachable by the crawler.

On sites that use:

  • infinite scroll,
  • load more,
  • JavaScript-based pagination

in particular, make sure the product URLs are discoverable by Google.

Step 4: Assign a Primary Landing Page to Every Intent

The goal in SEO is not to have exactly one page rank for every keyword.

A category will naturally appear for dozens, even hundreds, of different queries.

The real goal is

not to create more than one landing page for the same search intent without reason.

KeywordPrimary landing page
dress/dresses
black dress/black-dresses
black mini dress/black-dresses
white dress/white-dresses
satin dress/satin-dresses

Here, if “black mini dress” does not justify its own category, it can be one of the secondary targets of the existing “Black Dresses” page.

Keeping this mapping in a keyword mapping table becomes a major advantage as the category tree grows.

When Does Keyword Cannibalization Become a Problem?

Two pages from the same domain appearing for the same query is not a problem in itself.

The problem arises mostly when:

  • two very similar categories exist for the same intent,
  • Google ranks the URL you did not expect,
  • the ranking URL keeps changing,
  • internal links are split between two similar pages,
  • backlinks and other signals are fragmented for no reason.

These two categories, for example, may be too close to each other:

  • /black-mini-dresses
  • /mini-black-dresses

If they serve the same search intent, they should be merged under one landing page.

The Most Common Category Tree Mistakes

Turning Every Filter Combination into a Category

A product can have dozens of attributes.

For example:

  • black
  • mini
  • satin
  • strappy
  • evening
  • slim fit

Turn every combination of these into a category and you can end up with hundreds or thousands of weak landing pages.

A category should only be created where there is:

  • search demand,
  • enough products,
  • a distinct search intent.

Opening Categories Without Looking at the SERP

Keyword volume alone is not enough.

Creating categories without checking which page types Google prefers for the query can multiply similar landing pages for no reason.

Opening All Categories at Once

Keyword research can surface hundreds of category opportunities.

Opening all of them at once usually causes operational problems.

Prioritise by:

  1. high demand,
  2. strong stock,
  3. clear SERP separation,
  4. high commercial value,
  5. existing organic opportunity.

Build the strongest category clusters first, then widen the tree once the results are in.

Adding the Wrong Products to a Category

A category name is a promise to the user.

Someone landing on “Black Dresses” wants to see black dresses.

Adding unrelated products to bulk up the category count breaks the experience.

Fewer, correct products are worth more than many irrelevant ones.

Incomplete Product Data

The category tree usually depends on product attribute data.

If colour, fabric, length or occasion is missing on the products, the category structure will not work properly.

That is why an SEO category project is also a product data quality project.

Using the Same Title Across Subcategories

Every subcategory should carry its own search intent clearly.

Black Dresses | Brand
White Dresses | Brand
Satin Dresses | Brand

Pointing the Special Category’s Canonical at the Parent

If you want an SEO category indexed, its canonical should normally point at its own URL.

For example, pointing the canonical of:

/black-dresses

at:

/dresses

can reduce the category page’s standalone value.

Forgetting the Categories You Opened

A category tree is not a one-off SEO project.

A category can hold 20 products the day it opens and be down to two in-stock products three months later.

That is why category performance and product counts need regular tracking.

Manage the Category Lifecycle

No category keeps the same product volume forever.

So the category lifecycle needs its own rules.

If Stock Has Dropped Temporarily

If the category is still getting search demand and products will be added again soon, keeping the page is more sensible than removing it outright.

If the Category Has Been Discontinued

If the product group will no longer be sold, depending on the situation:

  • a 301 redirect to the closest genuinely related category,
  • a 404 or 410 if there is no equivalent,
  • keeping the URL for a seasonal category and adjusting the off-season experience

are the options to weigh.

301 redirects should only go to pages that are truly equivalent or a close match.

How to Track Category Performance

Once a new category is live, do not only ask “did it rank?”.

Metrics worth tracking:

  • Google Search Console impressions,
  • organic clicks,
  • average position,
  • the number of non-brand queries reaching the category,
  • organic sessions,
  • organic revenue,
  • conversion rate,
  • the number of in-stock products in the category,
  • index status,
  • whether the wrong URL is ranking.

For newly opened categories in particular, Search Console query data shows whether the page is really capturing the intent it was built for.

SEO-Friendly Category Tree Checklist

Research

  • Keyword research done with Semrush or a similar tool.
  • Google Ads Keyword Planner data checked.
  • Search Console queries analysed.
  • On-site search data reviewed, where available.
  • Commercial and transactional queries separated out.

Category decision

  • The query has real search demand.
  • The category has meaningful product variety.
  • Product attribute data is correct and complete.
  • The top 10 organic results reviewed.
  • SERP overlap checked.
  • The need for a separate landing page confirmed.
  • No existing category targets the same intent.

Technical setup

  • The URL is short and readable.
  • The title is unique.
  • The H1 matches the target category.
  • The canonical tag points at the page itself.
  • The URL returns HTTP 200.
  • No noindex.
  • Not blocked by robots.txt.
  • Included in the XML sitemap.
  • Checked with Search Console URL Inspection.

Site architecture

  • The breadcrumb works correctly.
  • Breadcrumb links are crawlable.
  • Breadcrumb structured data applied.
  • Linked from the parent category.
  • In the main menu, where warranted.
  • Linked from related sibling categories.
  • Linked from relevant PDPs where it helps the user.
  • Links are real <a href=""> links.

Product and operations

  • The category only contains relevant products.
  • Product attribute data is correct.
  • New products are mapped to categories on entry.
  • In-stock product counts are tracked regularly.
  • Category products confirmed reachable by the crawler.

Performance tracking

  • Search Console impressions tracked.
  • Organic traffic tracked.
  • Organic revenue tracked.
  • Which URL ranks for the target queries is monitored.
  • Action is taken when the product count drops to a critical level.

Frequently Asked Questions

What is the difference between a category tree and a filter?

The category tree is the site’s permanent set of product groups and the hierarchy between them. A filter lets the user narrow the products inside the current category by attributes such as colour, size, fabric or price. Not every filter option needs to become its own category; SEO categories should be created where there is real search demand and a distinct user intent.

How many subcategories should you open?

There is no fixed number. The count depends on search demand, product range, site size, operational capacity and SERP behaviour. The goal is not to open as many categories as possible but to build the right landing pages for the needs users actually have.

What is the minimum number of products a category needs?

Google has no official minimum. But the category has to offer the user a meaningful choice. On most e-commerce projects, 4–5 in-stock products is a workable operational threshold, though some categories and sectors need more.

Can you build a category tree without Semrush?

Yes. Google Ads Keyword Planner, Search Console and manual SERP analysis are enough for strong category research. Semrush speeds the process up but is not required.

Can the same product sit in more than one category?

Yes. A black mini dress, for example, can sit in both “Black Dresses” and “Mini Dresses”. It only has to genuinely match the definition of each category it is placed in.

Can Search Console be used to find category opportunities?

Yes. The long-tail queries a general category page collects often point at new subcategory opportunities. Look especially at specific queries with high impressions where the current page does not rank well.

Can the same keyword be used on more than one page?

More than one page containing the same word is not a problem. The problem is building near-identical landing pages that serve the same search intent. That is why assigning one primary landing page to each core intent is the healthier approach.

Conclusion

Building an SEO-friendly category tree is not just opening new category URLs.

The real process is

understanding search behaviour, analysing the product inventory, comparing SERP results and matching every search intent with the right landing page.

A workable process runs like this:

  1. Find the search opportunities with Semrush, Google Ads and Search Console.
  2. Group the queries by search intent.
  3. Check the product variety.
  4. Review the top 10 organic results and the SERP overlap.
  5. Identify the queries that need their own category.
  6. Set the new category up properly with its URL, title, H1, canonical and internal links.
  7. Complete the XML sitemap and indexability checks.
  8. Assign a primary landing page to every intent.
  9. Track the categories you opened by product count, organic visibility and revenue.

A well-built category tree lets your existing inventory match more search demand without adding a single product.

If you would like to design your category tree together, from search demand, existing organic data and your product inventory, I can build a category and landing page roadmap for your brand as an e-commerce SEO consultant.

Get in touch

Write to me about training, speaking, a podcast guest spot or a collaboration; I am also happy to answer SEO questions.