16

Is returning search results while the user is inputting each character good usability practice or a pain in the rear for the user?

6
  • do you mean search results or autocomplete list?! I think showing search results while user is typing has so much overhead for server if you are developing web application. Aug 19, 2010 at 20:48
  • Results, your point is valid, however I am not concerned with the overhead and performance, just the usability concept. Aug 20, 2010 at 13:32
  • Looks like Google has answered with their Instant Search this week. :) Sep 10, 2010 at 15:37
  • 1
    It's a pain. I hate having my results sooner.
    – Dexter
    Jan 31, 2011 at 21:48
  • See also this question: ux.stackexchange.com/questions/1416/… May 28, 2011 at 16:44

8 Answers 8

16

From a user's perspective, I've never found it anything but helpful. The search results let me know how I'm most likely to find accurate information for my query and that's never a bad thing. That said, there are a few guidelines to implementing it that should or could be followed.

  • Make sure the search form works without the AJAX suggestions before adding them. Think enhancement to what's already there, not requirement.
  • Never update the search input with one of the results unless the user requests it.
  • Provide keyboard and mouse access for selecting results.
  • Look-behind is a nice complement to look-ahead.

Here's an Autocompleter for MooTools, my favorite JavaScript framework, and ones for jQuery, Dojo, Prototype, and YUI.

4
  • 3
    This seems to be talking about AutoComplete while the poster seems to be asking about auto-filtering results based on what the user types, without a needing to press a button.
    – Jake
    Aug 19, 2010 at 12:14
  • 1
    @Jake - Either way, much of the advice would still stand. Aug 19, 2010 at 15:21
  • Can you please explain "Look-behind is a nice complement to look-ahead"?
    – cottsak
    Nov 2, 2010 at 7:58
  • 2
    Look-ahead compares your query to the beginning of a string while look-behind compares the query to anywhere in the string. Nov 2, 2010 at 9:15
12

I agree with all the others saying "do it", with one exception:

Make sure it's instantaneous, always, or don't do it!

There is nothing worse than using an application that does this on, say, the iPhone, and every time you type a character there is a two second delay while the search/filter is performed. This makes it slow and painful instead of quick and helpful, and is a horrible user experience.

I'd say "instantaneous" is in the ballpark of a tenth of a second, maximum, because you should be able to type at normal speed and have the UI keep up.

1
  • 3
    Great point. Focus should be on not blocking input rather than the search being blazing fast. It's OK for the search to take a few seconds if (a) I can still type more letters and they appear instantly (b) typing more stops current search, starting a new one and (c) there is a UI indicator search is ongoing. Good place for multithreading.
    – dbkk
    Oct 20, 2010 at 0:22
4

In most cases it's great! Generally it's great because it helps to find something without trying to guess what exactly to type into the search field. And it definitely saves time - one can type one or two letters to find what he is looking for. But of course be sure that the input would not be blocked while the search results are loading. And don't forget about the keyboard navigation.

4

After typing a search query, there's (logically speaking) only one action that can follow: to hit the search button. Why not eliminate that extra step if it's the only logical next action.

Quote I read somewhere, can't remember by who or where I read it: "If there's only one thing left to do, have the computer do it."

1
  • How's the case in mobile applications? I mean anyway the user has to click a button to lower the keyboard (the search button and or in android : the down button that appears instead of back button) otherwise the user can't see a full view of the page and scroll it with ease. Aug 12, 2017 at 11:37
3

Do it! I can't tell you how many times it has saved me unnecessary trouble because sometimes I forget exactly what I search for and it reminds me just because I remember the first word for what I have been searching for it gives me what I am looking for. Especially because places like Google gives search history.

2

I think it's great usability in most cases, assuming it doesn't hurt performance:

  • It's very natural not know exactly what you're search for, so showing results of a partial input is great.
    Imagine you're looking for an email and you just remember one work of the title.
    The word might be very common and hence return a lot of results. If you see right away, before "submitting" the search, that there are too many, you'll try to type something else to narrow it down immediately.
  • Moreover, getting to the result you want is quicker this way.
2

You should usually prefer direct manipulation over indirect manipulation. That implies tasks are done iteratively with continuous feedback to make the user understand what he or she is doing. Returning results while user is typing is good, because it gives continuous feedback. Likewise property pages should change properties immediately rather than after you hit e.g. and apply button. E.g. selecting a color in a properties panel should immediately change the background color. Rather than it happening after you hit "apply". This helps discoverability of the user interface, because there is a one to one correspondence between what the user does and what happens.

0

I think everyone is getting so very very lazy. Whats wrong with typing in a question like "Where do lions come from" is it so hard to use the keyboard these days. Does everything have to be minimal. TUVM instead of Thank you very much. I know which one I prefer, and its the latter. There is only one place where saving a nano-second is worthwhile and thats in a laboratory, NOT in everyday lives. Does it really matter if your friend can download a program 3 nano-seconds faster than you. My goodness, WOW, what an earth shattering thing to happen. Get a grip folks. I am all for progress but lets not go stupid with it.

3
  • 1
    And how exactly does this diatribe answer the question asked? Jan 31, 2011 at 19:18
  • And actually, yes, it is much harder to use the keyboard these days, especially the virtual kind on small touchscreen devices.
    – calum_b
    Feb 1, 2011 at 14:43
  • Most progress is incremental. Search as you type will not change the world, but it is without a doubt an improvement over searching plus enter. There are a lot of people on this site that are enthusiastic about every little user design change, and I suppose you don't share their enthusiasm.
    – speedplane
    Nov 6, 2016 at 17:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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