This has always been strange to me. On most ecommerce websites, they usually have a filter for something like colors. When the user sees the page for the first time, it shows all the colors. But none of the colors are included in the filter.

This has never bothered me as a user, but after thinking a bit more about it, it seems inconsistent with the filter model. From colors to prices, they should really be applied from the first page load. The only problem with this method is that the user is very likely to only want a couple of filters applied, and they would force them to uncheck more options.

Is what I'm talking about even a filter? Is it a different concept or is "show all" simply implied for this sort of a filter?


It's linguistically consistent because of specificity.

"I want to buy a car" includes all cars.

Only when you specify extra details they get taken in to consideration. "I want to buy a red car" or "I do not want a blue car" both add color as an extra chunk of information, and that's when it becomes useful for filtering. Before that moment the color data isn't relevant.

Nobody goes and initially says "I want a car that's red or yellow or green or blue or purple or pink or white or grey or black". That's unnecessary information, and just as unwieldy as having all boxes ticked by default and having to untick N-1 boxes if you just want one color.

That's not to say the most-used filter system is completely parallel to how we would verbally communicate. Generally we'd go up to a car sales man and ask for a car, and they might ask if the color is important. Or they'd show us a blue one and then we'd tell that we prefer red.

To mimic that interaction we would have a separate tickbox for 'filter by color'. If unticked show all cars, if ticked show a toggle for include/exclude and then some colors. But we skip that initial tickbox because having nothing selected implies that it's not important either way and we can just run a script and save the user a click.

I should note that it's okay to use that first tickbox to clean up the interface a bit (by using accordions) or have a dropdown like google images that defaults to 'any color'. But you really really want to avoid having 10 different tickboxes selected by default because, like you said, people will have to untick all of them.

In short; no user input means 'no filtering', not 'filtering but include every option'. Though the shown endresult is the same, the logical steps towards it are different.

  • So when would an explicit "show all" option be used? At the top of my head, a dropdown menu where it can't have a default state (e.g., all unticked, empty input) is a good candidate. – user1164937 Dec 30 '18 at 3:47
  • Or are dropdowns a bad component to use for filtering, and that we should avoid it altogether. Is there ever an explicit "show all" that is justified? – user1164937 Dec 30 '18 at 3:53
  • @user1164937 there is always some sort of default state. Generally, nothing ticked and everything are interpreted as the same; otherwise you'd have 0 results). Google Images is explicit in the dropdown (all colors), but for Tweakers Pricewatch (a more tech-savvy userbase). It is justified because because it's clearer for a lower common denominator and faster than ticking many individual boxes. Dropdowns are not bad, but they prioririze simplicity over fine control; you can't really select multiple options in a dropdown. – PixelSnader Dec 30 '18 at 13:53

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

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