Take the 2-minute tour ×
User Experience Stack Exchange is a question and answer site for user experience researchers and experts. It's 100% free, no registration required.

Almost all sites include a Search facility.

The usual format seen is one of these two:

mockup

download bmml source – Wireframes created with Balsamiq Mockups

The Question is

If the user keeps the input box empty, and then hits enter (or clicks the Search button), what should they be given as a result?

Which would be the smartest approach for the UX?

  1. return all possible results (e.g. Google's Jobs site),
  2. return nothing, and ask the user to a enter search term
  3. bring the user to a dedicated search page (e.g. UX.StackExchange)
  4. return the hot results for right now on the site
  5. return the most searched for items, or
  6. return some random results
  7. do nothing

Is there any standard, de facto result, or research findings on this topic?*

Update 1:

In light of ongoing discussion, I am going to add some more example sites:

Google / Bing

Google and Bing handle this and their flow is to just ignore the search request if there is no search value entered and keep the user in the same page. (Thanks, @Mervin)

Amazon

Amazon returns the normal homepage with an extra /ref=nb_sb_noss_null in the url.

Google Jobs

The Google Jobs site returns all possible results, with a default sorting by "logging-location" and reverse-chronological. Page navigation says "Page 1 of many"

Chrome Web Store

The Chrome Web Store, like Google and Bing, does nothing on pressing enter

Gmail

Gmail has an interesting solution. While in the inbox, pressing the search button does nothing. But when user gives no input in advanced search dialog, it (IMO, rightfully) returns all mails with a notice "Invalid search query - returning all mail." gmail blank query message

share|improve this question
1  
You could combine 2nd option and any of 4-6, it has sense both from UX and marketing point. –  Alexey Kolchenko Dec 15 '13 at 17:37
2  
My mother once complained that the Windows Live Messenger was broken, because she cannot send a message she has written. Turned out Microsoft removed the "Send" button in an update and replaced it with the Enter key. –  Uwe Keim Dec 15 '13 at 18:59
2  
I would say that returning all results on an empty query is perfect behavior for a filter but not for a search. –  dkhgh Dec 16 '13 at 10:25
    
@dkhgh Google job site do that –  kmonsoor Dec 16 '13 at 13:05
1  
Related question: Optimal page content for search page with no query? –  Brendon Dec 16 '13 at 13:43
show 2 more comments

13 Answers

There is a question you need to answer (which can be stated in different ways):

  1. How big is your dataset?
  2. Is "everything" a finite set?
  3. Is it sensible that the user might want to see everything?

If your dataset is small or finite, or it's sensible that the user would be able to deal with everything, then you could return everything.

If your dataset is large or infinite then you could return nothing with a suitable error message or help page to guide the user so that they use the search function sensibly.

share|improve this answer
    
Users get confused while you return everything. –  Omid Dec 16 '13 at 8:22
1  
@Omid - Well it depends. With a small dataset and if the idea of returning everything is "sensible" I don't see why a user would be confused. –  ChrisF Dec 16 '13 at 9:11
    
@ChrisF, & omid can't we run for a little AI to this fact by perceiving what a typical user might want ? –  kmonsoor Dec 16 '13 at 13:07
    
@ChrisF I think small or large dataset is a technical issue that should be discused in StackOverflow and programming side. While we are talking about UX, It really doesn't matter. –  Omid Dec 16 '13 at 15:59
2  
@Omid - I disagree. I'm not talking about absolute values here. Examples would be: A personal address book of 10s of entries is small and should return all entries if no search criteria is set. A shop's inventory of 1,000s of items is large and should probably return nothing. Implementation wise both are the same thing, but they are treated differently in your application. –  ChrisF Dec 16 '13 at 16:04
add comment

I did a quick check on how Google and Bing handle this and their flow is to just ignore the search request if there is no search value entered and keep the user in the same page.

While that does make sense since the user might be confused if search results are contrary to what he expected and if he gets some random results he might be confused as in his mental model he has not entered a value or accidentally clicked it but is getting these results. Hence going by your ideas

return ALL e.g. Google jobs site - This is going to be confusing since the user might have been thinking of entering something and before he did had accidentally clicked search or had clicked search by accident in the first place and being directed to a new page would confuse him

return NOTHING, and notify user to enter search term - This would be your best option as it informs the user that a mistake has been made and what his next steps

bring up the dedicated search page e.g. this site - This is similar to what Bing and Google do but the issue is the person might be confused about the lack of feedback and how this page came about

return the HOT items right now on the site - Not recommended since what might be a hot search topic for your site might not be for the user and it is not expected behavior

return the MOST_SEARCHED items, or - Not recommended since what might be a hot search or most search topic for your site might not be for the user and it is not expected behavior

return some RANDOM items - Definitely not recommended

share|improve this answer
1  
There is another possibility: They actually typed something, but the search bar was out of focus, so no characters were entered. –  AJMansfield Dec 16 '13 at 1:44
2  
Returning the hot/most searched items is actually pretty easy. I.E. torrentz.eu uses this feature, and I use it every time I go to the site. It informs me of what other users search for. –  2pietjuh2 Dec 16 '13 at 10:07
1  
@2pietjuh2 That's what i talking about. +1 for bringing up a concrete example –  kmonsoor Dec 16 '13 at 13:17
    
@2pietjuh2 give it its own dedicated button, then –  crdx Dec 18 '13 at 13:06
add comment

I don't think that there is a standard. But I like the idea of following principles of how people interact with each other and reflecting that in UI design. Sending a search request can be looked at as asking a person a question. You formulate a question and then make sure that the person hears and understands it. If you request a response without a question (basically saying 'I have a question'), the person you asked most likely will ask you to formulate the question in a clear form.

Following that analogy when a user clicks on a search button without providing any text in the text field, I'd bring focus to the text field asking the user to provide information to proceed with the search request.

That's what Google and Bing essentially do when they display blinking text cursor in the search box after you submit an empty search request. You may follow the same pattern, or you may make it more humanized, actually displaying some kind of message requesting text input.

share|improve this answer
    
thanks for ur answer. i agree with your point about very general search sites like Google etc. But, i feel, that's just not enough(acceptable, though) for a special site like forum, or jobsite. –  kmonsoor Dec 16 '13 at 13:13
add comment

I think we have to be honest with users. So return NOTHING, but not just nothing! Users have nothing to do while seeing NOTHING in the search result.

Another idea is to show them why there is nothing ? Maybe they are not searching in the right place. Maybe a word is misspelled so we can correct it. Finally, maybe we are not supposed to have such contents!

share|improve this answer
    
+1 for bringing up the point "but not just nothing! Users have nothing to do while seeing NOTHING in the search result." –  kmonsoor Dec 16 '13 at 13:18
1  
I like how the sentence "Return nothing, but not just nothing" actually makes sense in this context! –  JonW Dec 17 '13 at 13:57
add comment

My answer would depend on the website you are designing/building for.

For example, if you were developing an estate agents, I think there's mileage in displaying the search box at the top of the page with:

"No search term entered, here are our latest properties"

Then list 20 or so properties that have been entered in the database. The same principle could be applied to job sites et al.

When you have the potential to confuse the customer, say a multi-result website like on-line shopping etc... then I believe you need to be a bit clever with the non-search page, maybe listing categories but keeping the search box on the page.

Unlike the other users here, I think an empty search result of a message with no action could be equally infuriating.

share|improve this answer
add comment

Differ the users intention:

  • Mistake action. "Ups I hit the button! Whats going to happen? I hope nothing to serious??" => Don't change the page in a big manner. Stay on the same page, let the search bar and its button reside at the same spot is was before the user hit the search / enter button. Tell him what happened and why you are (or are not) displaying content.

  • Deliberate search. "I want to see everything!". (The opposite thought "I want to see nothing" makes no sense. => Show the user everything. Tell him why he is seeing everything. And if everything is to overwhelming, give him the opportunity to filter the search results by category, most used search terms, etc.

  • Fun. "Lets see what happens if..." => Depending on your communication standards with your customers (CI) or your domain, give your user a hint what happened in according manner. ("Wow, what was that? You can't search for nothing bro'!?" vs. "Please enter search term.")

Since the deliberate blank searchers are a minority, don't show any search results. Maybe a dialog with "show everything" to satisfy them. In any case: Tell the user what happened, why and what can be done to change that state.

share|improve this answer
    
+1 for "In any case: Tell the user what happened, why and what can be done to change that state." –  kmonsoor Dec 18 '13 at 16:15
add comment

Consider it this way, if the user is searching for nothing, then show them no results. The same way you would if they were searching for something that didn't exist in your database. In both cases you'd return no results and inform them to improve their search.

I would consider a "show all" action to be something the user explicitly wants to do outside of searching. While A search is typically something you do to filter or refine results.

share|improve this answer
add comment

IMO, if the user searched with no keywords then it shouldn't be consider a search action. This ux behavior is used by most sites. It doesn't really make sense to return a list of all results because over 90% of the results are not what the user is looking for so you're really just loading irrelevant contents (unless you don't have a lot of content or a really good filtering system for further browsing). In addition, some users might get overwhelmed.

If users intend to see all the results available then the "browse page" is where they should visit.

share|improve this answer
    
i would say over 99% instead of "over 90% of the results are not what the user is looking for" –  kmonsoor Dec 16 '13 at 13:21
add comment

Only best option I can think of is, take user to a "dedicated search page" as exactly done here in the ux.stackexchange.com . That is the only page user would be expect to see.

Else then show with error - "Invalid Request - No Results Found" in search results page.

UPDATE: Instead of showing an error, you can educate the user like "Enter your search - E.g. John Doe" below the search bar to make them sure about what they want.

share|improve this answer
1  
Agree with your first part. Not with the second though. Returning no results is not an 'error'. Also 'Invalid Request' isn't really that user-friendly a term. That all implies the user has broken something, when all they've done is intentionally press a Search button - that isn't an invalid action. Perhaps rephrasing the message so it doesn't read like the user is at fault would be a better solution. –  JonW Dec 18 '13 at 10:51
1  
Yeah @Jon you are right about that. Now I have updated my answer. If you have any opinion, glad to hear.. –  Dinesh Raja Dec 18 '13 at 11:34
1  
Yeah, that's much better. Far better to provide the user with useful instructions for what to do rather than just telling them off for doing something wrong. –  JonW Dec 18 '13 at 11:36
add comment

IMHO, I would say that this is the perfect edgecase for an easter egg. Pop open an icon of Buddha 'Unfortunately in this universe, nothing is not something' maybe?

share|improve this answer
add comment

As mentioned by @ChrisF in his answer, it is based on your dataset. If your dataset is large, then you can show Most Recently Hot Searches done.

share|improve this answer
1  
That is an option, but is that really what the end user is going to expect? –  JonW Dec 17 '13 at 9:05
    
@ JonW : No one knows what user expect, but we can provide some options to user, by chance thats what user looking for. –  Pankaj Jawale Dec 17 '13 at 10:26
    
I disagree. ...the answer does not depend of the amount of data it depends of the user need to achieve his task in his context... –  pierre lebailly Dec 17 '13 at 22:35
add comment

What I am sure and certainly not only me is that as Google makes to say nothing to the user is not a good ergonomic behavior.

To respect one of the ergonomic criteria the system always needs to keep the user informed of the status before, during and after an action of the user.

http://www.nngroup.com/articles/ten-usability-heuristics

Visibility of system status The system should always keep users informed about what is going on, through appropriate feedback within reasonable time.

So perhaps they need to alert the user the string typed is to short or perhaps they need to change the color of the search button disable when the string is empty...and enabled when it is not...or perhaps the two behaviors.

I often have a glance on Google product when I have an ergonomic issue because they often have an interesting solution. ...

But in your case their choose id not the best

Not more 6 choice in your 7 propositions. ...

share|improve this answer
add comment

If website has a huge database and storing the keywords by which users are searching the content the most, in this case most used keyword related search should be displayed else it should returned with proper message to input the keyword to be searched.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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