A shopper searches for laptops and gets 2,400 results. She wants a model under a set price, with a certain screen size, from a brand she trusts. Without filters, she would scroll for an hour. With good filters, she gets there in four clicks. Filters and facets turn a huge list into a short, useful one. This guide explains how they work, how to design them, and which mistakes to avoid.
What Are Filters and Facets?
A filter is a control that removes items from a list based on a rule. For example, “Price under 500.” A facet is a group of related filter options built from the traits of the items, such as Brand, Size, Color, or Rating. Faceted search lets users apply several facets at once to narrow results step by step. People often use the two words as if they mean the same thing. In practice, a facet is the category of filter, and a filter value is one choice inside it.
Why Filter and Facet Design Matters
Large catalogs and content libraries overwhelm users. Too many items slow decisions and push people away, as explained in this guide on choice overload in UI. Filters cut the list down to a size people can handle. They also give a sense of control. Users can shape results to fit their needs instead of accepting what they are given. Good filters lead to faster searches, higher conversions, and fewer exits. Poor ones add clutter and make a good catalog feel hard to use.
When You Need Filters
Add filters when users face more items than they can scan in a few screens. Stores, job boards, real estate sites, travel tools, dashboards, and document libraries all benefit. If the list is short, filters add weight without value. A useful test is to ask whether users would otherwise scroll or search for a long time before finding the right item.
Types of Filter Controls
Checkboxes. Let users select several values in one facet, such as multiple brands. They suit lists where combinations make sense.
Radio buttons. Allow only one choice, such as “Delivery: Today, Tomorrow, Any time.”
Range sliders. Suit numbers such as price, distance, or year. Pair them with typed inputs for precision.
Dropdowns. Suit long lists, such as countries or categories, where space is tight.
Toggles. Switch a single rule on or off, such as “In stock only.”
Color swatches and chips. Show color or size as visual tiles, which are quicker to scan than text.
Search within filters. A small search box inside a long list, such as brands, helps users find an option fast.
Date pickers. Suit bookings, events, and reports.
Core Principles of Good Filter Design
Choose filters based on real user needs
Do not show every possible trait. Study how users search and which traits drive their choices. Search logs, interviews, and analytics show what people filter by most. Use card sorting to learn how people group and name attributes. Lead with the filters that matter most, such as price, brand, and rating in retail.
Order facets by importance
Put the most used filters at the top. Rarely used ones go lower or inside a “More filters” section. Users scan from the top, so order shapes what they see first. This also supports good visual hierarchy.
Use clear, familiar labels
Name facets and values in the words users use. “Screen size” beats “Display dimension.” Keep labels short and consistent. Match them with the terms on product pages and in the menu, so people feel confirmed.
Show counts next to values
A number beside each value, such as “Nike (42),” tells users what to expect before they click. It also prevents dead ends. Update counts as users apply other filters. Hide or gray out values that would return zero results, and explain why when you can.
Give instant feedback
When users apply a filter, update the list right away without a full page reload, and keep their scroll position sensible. Show the new result count at the top. If the update takes time, show a loading state so they know it is working.
Show active filters clearly
Display applied filters as removable tags near the top of the results, such as “Brand: Sony ×” and “Under $500 ×.” Add a “Clear all” link. This lets users see what is shaping their list and undo choices with one click.
Let users change their mind
Allow users to remove one filter without losing the rest. Keep filter choices when they go back from a product page to the list. Losing filters after a click is one of the most common frustrations.
Keep the panel manageable
Long lists of filters tire people. Group related facets, collapse less common ones, and use “Show more” links for long value lists. Show about five to seven values by default, and let users expand the rest. This follows the idea of progressive disclosure, which reduces cognitive load.
Layout Options: Sidebar, Top Bar, or Panel
Left sidebar. The most common layout on desktop. It holds many facets in a vertical list and stays visible beside the results. It suits catalogs with many attributes.
Top bar. A horizontal row of filter buttons that open dropdowns. It saves space and suits a smaller set of filters, such as five or six.
Slide-out panel or drawer. Opens on demand and covers part of the screen. It suits mobile and pages where results need the full width.
Inline chips. Quick filter tags above the results, such as “Free shipping” or “Open now.” They suit common, simple filters.
Pick the layout based on how many filters you have and how often people use them. A sidebar works for heavy filtering. A top bar works for light filtering.
Applying Filters: Instant or With a Button?
There are two patterns. In instant filtering, results update the moment a user changes a value. It feels fast and suits most cases, especially on desktop. In batch filtering, users set several filters and then press an “Apply” or “Show results” button. This suits mobile, slow connections, and cases where each update is costly. When you use batch filtering, show a live count on the button, such as “Show 128 results,” so users know what they will get.
Mobile Filter Design
Small screens cannot hold a full sidebar. Place a clear “Filter” button near the top of the results, ideally with the number of active filters, such as “Filters (3).” Open a full-screen panel or a bottom sheet with grouped facets. Use large tap targets of about 44 by 44 pixels, and keep values easy to read. Put “Apply” and “Clear all” in a fixed bar at the bottom. Let users see results behind the panel when possible, or show the count on the button. Plan this version first, as described in a mobile-first approach. These responsive design considerations and best practices show how to adapt layouts across breakpoints.
Accessibility Tips
Filters must work for everyone.
- Use proper form controls. Real checkboxes, radio buttons, and labels give keyboard and screen reader support for free.
- Group related options. Use fieldsets and legends so assistive tools announce the facet name.
- Show clear focus states. Keyboard users must see where they are.
- Announce changes. Tell screen readers when the result count updates after a filter is applied.
- Keep contrast strong. Text, tags, and swatches must be easy to see.
- Do not rely on color alone. Add text or icons to color swatches and active states.
- Make sliders usable. Offer typed inputs and keyboard control, not only drag.
- Keep tap targets large. This helps users with motor difficulties and everyone on phones.
Real-World Examples
Amazon. A left sidebar groups facets such as brand, price, rating, and delivery. Counts and ranges help shoppers narrow giant categories.
Airbnb. A “Filters” panel groups price, type of place, amenities, and more, and shows a live count on the button.
Zillow and property sites. Price ranges, bedrooms, and home types sit in a top bar, with a “More filters” panel for deeper options.
Job boards. Filters for location, role, salary, and date help candidates cut large listings to a short list.
Fashion stores. Color swatches and size chips make visual filters quick to scan.
Analytics dashboards. Date range, segment, and device filters let users slice data. For more on this, see these SaaS dashboard UX design best practices.
Common Mistakes to Avoid
- Too many filters at once. A long wall of options overwhelms users.
- Irrelevant facets. Showing traits that few people care about adds noise.
- Vague or inconsistent labels. Users cannot tell what a facet means.
- No result counts. Users click blind and hit empty pages.
- Zero-result dead ends. Letting users choose combinations that return nothing.
- Slow updates. Lag after each click makes the page feel broken.
- Hidden active filters. Users forget what is applied and wonder why the list is short.
- Losing filters on back navigation. Users must start again after viewing an item.
- Tiny targets and cramped panels. Hard to use on phones.
- Weak mobile design. A desktop sidebar squeezed onto a small screen does not work.
- Poor accessibility. Missing labels, silent updates, and low contrast exclude many users.
- Mixing up AND and OR logic. Within a facet, selecting more values usually widens results. Across facets, it narrows them. Breaking this pattern confuses users.
How to Test Your Filters
Watch real users try to find specific items and note where they hesitate or give up. A structured usability testing and feedback loops process can reveal problems that numbers miss. Review analytics to see which filters get used, which are ignored, and which lead to zero results. Check how filter use relates to conversions. Compare layouts, orders, and labels with controlled experiments, as explained in this guide to A/B testing in UX. Test on phones, with a keyboard only, and with a screen reader. Repeat after changes to your catalog, since new products often bring new attributes.
Final Thoughts
Filters and facets help people cut a large set of items down to the few that matter. Choose filters from real user needs, order them by importance, and use clear labels. Show counts, give instant feedback, and display active filters so users stay in control. Plan a thoughtful mobile experience and support keyboards and screen readers from the start. Then test with real people and refine as your content grows. When filters feel natural, users find what they want faster and trust your product more.