Faceted Navigation: Best Practices For SEO via @sejournal, @natalieannhoben

When it comes to large websites, such as ecommerce sites with thousands upon thousands of pages, the importance of things like crawl budget cannot be understated.

Building a website with an organized architecture and smart internal linking strategy is key for these types of sites.

However, doing that properly oftentimes involves new challenges when trying to accommodate various attributes that are a common theme with ecommerce (sizes, colors, price ranges, etc.).

Faceted navigation can help solve these challenges on large websites.

However, faceted navigation must be well thought out and executed properly so that both users and search engine bots remain happy.

What Is Faceted Navigation?

To begin, let’s dive into what faceted navigation actually is.

Faceted navigation is, in most cases, located on the sidebars of an e-commerce website and has multiple categories, files, and facets.

It essentially allows people to customize their search based on what they are looking for on the site.

For example, a visitor may want a purple cardigan, in a size medium, with black trim.

Facets are indexed categories that help to narrow down a production listing and also function as an extension of a site’s main categories.

Facets, in their best form, should ideally provide a unique value for each selection and, as they are indexed, each one on a site should send relevancy signals to search engines by making sure that all critical attributes appear within the content of the page.

Example of Facet Navigation from newegg.comExample of Facet Navigation from newegg.com, August 2024

Filters are utilized to sort items with a listings page.

While the user can use this to narrow down what they are looking for, the actual content on the page remains the same.

This can potentially lead to multiple URLs creating duplicate content, which is a concern for SEO.

There are a few potential issues that faceted navigation can create that can negatively affect SEO. The main three issues boil down to:

  • Duplicate content.
  • Wasted crawl budget.
  • Diluted link equity.

The number of highly related pieces of content continues to grow significantly, and different links may be going to all of these different versions of a page, which can dilute link equity and thus affect the page’s ranking ability as well as create infinite crawl space.

You need to take certain steps to ensure that search engine crawlers aren’t wasting valuable crawl budgets on pages that have little to no value.

Canonicalization

Turning facet search pages into SEO-friendly canonical URLs for collection landing pages is a common SEO strategy.

For example, if you want to target the keyword “gray t-shirts,” which is broad in context, it would not be ideal to focus on a single specific t-shirt. Instead, the keyword should be used on a page that lists all available gray t-shirts. This can be achieved by turning facets into user-friendly URLs and canonicalizing them.

For example, Zalando’s facets are great examples where it uses facets as collection pages.

Facets as collection pagesScreenshot from Zalando, August 2024

When you search in Google [gray t-shirts] you can see Zalando’s facet page ranking in the top #10.

Zalando's gray t-shirts page ranking in Google searchScreenshot from search for [gray t-shirts], Google, August 2024

If you try to add another filter over a gray t-shirt, let’s say the brand name ‘Adidas,’ you will get a new SEO-friendly URL with canonical meta tags and proper hreflangs for multiple languages in the source code

https://www.zalando.co.uk/t-shirts/adidas_grey/
<link rel="canonical" href="https://www.zalando.co.uk/t-shirts/adidas_grey/">
<link rel="alternate" hreflang="en-de" href="https://en.zalando.de/t-shirts/adidas_grey/">
<link rel="alternate" hreflang="en-gb" href="https://www.zalando.co.uk/t-shirts/adidas_grey/">
<link rel="alternate" hreflang="en-ie" href="https://www.zalando.ie/t-shirts/adidas_grey/">

However, if you decide to include a copy on those pages, make sure you change the H1 tag and copy accordingly to avoid keyword cannibalization.

Noindex

Noindex tags can be implemented to inform bots of which pages not to include in the index.

For example, if you wished to include a page for “gray t-shirt” in the index, but did not want pages with price filter in the index, then a noindex tag to the second result would exclude it.

For example, if you have price filters that have these URLs…

https://www.exampleshop.com/t-shirts/grey/?price_from=82

…And if you don’t want them to appear in the index, you can use the “noindex” meta robots tag in the <head> tag:

<meta name='robots' content='noindex' />

This method tells search engines to “noindex” the page filtered by price.

Note that even if this approach removes pages from the index, there will still be crawl budget spent on them if search engine bots find those links and crawl these pages. For optimizing crawl budget, using robots.txt is the best approach.

Robots.txt

Disallowing facet search pages via robots.txt is the best way to manage crawl budget. To disallow pages with price parameters, e.g. ‘/?price=50_100’, you can use the following robots.txt rule.

Disallow: *price=*

This directive informs search engines not to crawl any URL that includes the ‘price=’ parameter, thus optimizing the crawl budget by excluding these pages.

However, if any outbound links pointing to any URL with that parameter in it existed, Google could still possibly index it. If the quality of those backlinks is high, you may consider using noindex and canonical approach to consolidate the link equity to a preferred URL.

Otherwise, you don’t need to worry about that, as Google confirmed they will drop over time.

Other Ways To Get The Most Out Of Faceted Navigation

  • Implement pagination with rel=”next” and rel=”prev” in order to group indexing properties from pages to a series as a whole.
  • Each page needs to link to children pages and parent. This can be done with breadcrumbs.
  • Only use canonical URLs in sitemaps in case you choose to canonicalize your facets search pages.
  • Include unique H1 tags and content in case of canonicalized facet URLs.
  • Facets should always be presented in a unified, logical manner (i.e., alphabetical order).
  • Implement AJAX for filtering to allow users to see results without reloading the page. However always change the URL after filtering so users can bookmark their searched pages and visit them later. Never implement AJAX without changing the URL.
  • Make sure faceted navigation is optimized for all devices, including mobile, through responsive design.

Conclusion

Although faceted navigation can be great for UX, it can cause a multitude of problems for SEO.

Duplicate content, wasted crawl budget, and diluted link equity can all cause severe problems on a site. However, you can fix those issues by applying one of the strategies discussed in this article.

It is crucial to carefully plan and implement facet navigation in order to avoid many issues down the line when it comes to faceted navigation.

More resources:


Featured Image: RSplaneta/Shutterstock

All screenshots taken by author

Leave a Reply

Your email address will not be published. Required fields are marked *