Skip to content

Filter

Filters allow users to refine the displayed information based on specific attributes of their choice.

Usage

Filter parameters and functionality are highly dependent on a particular use case. The following proposals should serve as an introductory guide.

In terms of the positioning of filters, and where they should be placed on the page, we recommend starting with one of the three options below. The decision depends on the context and scalability needs.

Filter - pattern decision

Filter selection

Choose the filter method that makes sense for both the user and the data presented.

Apply filters

Batch display lets users set multiple filters before submitting with an Apply button. Use it when users need to make multiple selections across multiple different categories.

Dynamic display updates results immediately upon user selection, removing the need for an Apply button. Use it when immediate feedback or results are desired after each filter change.

Filter - display method

Applied filter visualization

Use the filter bar to display the specific filters that are applied. This is an optional feature, intended for situations where the current filter selection is not easily visible elsewhere.

To indicate the total count of active filters, use the information type badge component.

Best practices for filters

  • Always make it clear which filters are active.
  • Organize filters by understanding and aligning with user priorities.
  • If a category has more than 7-10 options, consider ways to group filters or use a Show more type of functionality.
  • If there are many filter options, consider adding a search functionality within the filter itself. For multiple filter categories, either add a search input for each one or provide a global search input.
  • Applied filters should be easy to remove.
  • Provide clear and descriptive labels for filters.
  • Use common UX writing forms for filter interactions like Reset filters, Select all, Deselect all, and Apply.
  • Refer to loading patterns for progress indication if filter changes cause a delay of +1 sec.

Except where otherwise noted, content on this site is licensed under MIT License.