Should we mix instant filtering (i.e. when you pick an item from a dropdown and the table of results updates automatically) with filters that require an 'apply' button (such as if they require API hits to action so have too high a cost/performance hit to perform live).

It doesn't feel like the best experience to force users to select an 'Apply' button if the particular filters they selected can show the results in real-time as soon as they've selected their option, but equally it doesn't feel right to have some filters work live and others require you to press 'Apply' without the user actually knowing that some filters work in this different way.

Mostly we expect the 'Live' filters will be the ones with the most common usage here, but all filters could be used depending on the situation.

enter image description here

In the past I've gone with a slightly hacky fix for this, with the 'Apply' button actually acting as a 'close filters' button, so even though the results have already loaded why you hit 'Apply' you still get an actual UI action taking place (filters minimising). But this feels like it's a bit fake.

How can I combine Instant and 'Expensive' filters together?

  • Combining them sounds like a bad idea unless you can somehow make it clear which fields work which way (I can't think of a good way to do this). Personally I feel only a search field like what Google/Bing/DuckDuckGo have is good for automatically searching. For everything else I would want to tinker with the filters before applying. Feb 20 at 15:29
  • @Parrotmaster Some you want to tinker with, others probably not - think an eCommerce shop where you just want to filter to show only the Blue shirts. That's not something you want to tinker with 'just show me the blue ones!'. So adding in an extra step (having to click Apply) feels like an unnecessary step and a slowdown of the process when it doesn't exactly need to happen.
    – JonW
    Feb 20 at 15:47

1 Answer 1


It seems that combining live and not-live filters together breaks the consistency and standards heuristic. It might also break the "show system status" heuristic - since users are getting instant feedback from some filters and not others, does that mean the not-live filters aren't working due to a system glitch? Or (in this case) is the system expecting additional user interaction that isn't obvious?

I think another possible workaround could be dividing the filters that require interaction from those that can update instantly. If it makes sense in your design, you could show the "live" filters on a panel across the top of your data set, and hide the "expensive" ones under a Filter button that needs an interaction to fire.

  • I feel like combining them only really works for things like search engines, where the search bar is an automatic filter and there are manual filters for things like date ranges, file types etc. Feb 20 at 15:31

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.