When someone comes to your website needing specific information, they have two options: they can either use the site’s navigation to get where they need to go, or they can use the search function. We’re going to focus on the latter for this article.

Many of us do dozens or even hundreds of searches per day without even thinking about it: searching for an email, searching for that song on Spotify, figuring out what to make for dinner, looking up a contact on your phone, finding a word on this page. 

We just expect search to work—but that’s easier said than done.

One of the tenets of design is to make things simple. When building a search interface, the goal is to make the interface as simple as possible, while ensuring that users can actually find what they’re looking for. 

Before we get into specific design tips, let’s take a few seconds to think about how different users might interact with site search.

Information-seeking needs and behaviours

The type of information need a user has and how that user intends to retrieve said information will affect how they interact with a website’s search engine. 

There are four main types of information need:

  • Exhaustive research: “I need to know everything about this topic”
  • Exploratory seeking: “I need to find a few good things”
  • Known-item seeking: “I’m looking for this specific thing”
  • Refinding: “I need this specific thing again”

When it comes to information-seeking behaviours, we can split searchers into four categories:

  • Retrievers know both what they need to find and how to find it. If they’re looking for a specific document on a site, they’ll simply type the document’s title into the search bar and expect it to be the top result.
  • Adventurers have a more general idea of their information need and waiting for something to catch their attention 
  • Wanderers are unable to precisely define their information need 
  • Explorers know exactly what piece of information they need, but they don’t know where or how to look for it

Every search interface will be used by each of these searchers, so keep them top-of-mind as you design. 

Now, here are some key steps that’ll help you build out a solid search experience for your site.

  1. Define your user personas
  2. Map out your users’ search journeys
  3. Conduct user testing with real-life scenarios
  4. Scope the search functionality
  5. Incorporate incentives to search
  6. Design the results
  7. Add extra features
  8. Tweak the boosting

1. Define your user personas

We won’t get into the nitty-gritty details here, as you most likely already know who your personas are (and if not, we’d recommend taking the time to think about this before proceeding).

Personas—who your users are, how they think, what their habits look like—are the first step in most UX processes, and site search design is no different. Well thought out audience research will guide almost every decision you make throughout your search project.

2. Map out your users’ search journeys

Conduct user journey mapping exercises to gain insights on how a typical user would interact with the search.

Consider your personas and the types of searchers listed above. Who is using your search interface in each of these ways, and how should search fit into the larger user experience?

Be sure to consider these key variables that influence each search operation:

  • The user’s level of familiarity and comfort with search interfaces
  • The type of searcher (wanderer, explorer, adventurer, retriever) and their information need
  • The type of information being searched (content/page type)
  • The amount of information that needs to be retrieved

Another thing to keep in mind is the fact that searching isn’t always a straightforward, one-time process. On the contrary, browsing and searching often go hand in hand when a user is trying to fulfill an information need. The Wikipedia page about Cognitive models of information retrieval provides a succinct overview of these types of behaviours, if you’re interested in learning more.

3. Conduct user testing with real-life scenarios

Pick a few real use cases for the search interface and use them throughout the design, development, and QA process. When you conduct user testing, provide your subjects with a scenario-based goal and observe how they go about reaching it.

For example, if you’re testing the search functionality of a university website, you could ask your user something like “You’re getting ready to apply to the MA program in Film Studies. What documents do you need to include in your application?” or “You’re thinking about applying to this school as a non-resident. What fees can you expect to pay?”.

A few tips for carrying out user testing for search:

  • Work in pairs: one test subject with one member of the research team. One-on-one testing will provide the most valuable information.
  • During the test scenario, ask the subject to narrate their thought process out loud and take notes accordingly
  • Be ready to ask the test subject for any clarifications you might need as soon as the scenario is complete, so that it’s still fresh in their mind

4. Scope the search functionality

Start to plan out how the search interface would fit into the overall experience. Are there search pages embedded within specific sections of the website? Or a single search interface that the user is always directed to? Sometimes users want to focus on finding one thing (e.g. a directory of doctors or experts) and sometimes it’s more useful to allow them to expand their search to the entire website.

People have been searching for information online for quite some time now, which means users have all sorts of assumptions and expectations about search interfaces. Here are a few common ones that are useful to have in mind:

  • “I just need to type in some keywords and the search engine will do the rest”
  • “Using this search box will search the entire site”
  • “If I type in 'syllabus', the results will also find pages titled 'course list'”
  • “I don’t have time to learn which of these search forms to use”

5. Incorporate incentives to search

The easiest way to invite users to search is to put a big search box on the homepage. Sometimes providing “suggested search” terms helps users get started, or prompting them what to type using a search suggestion. But you can also invite users to search by embedding a search form into other areas of the site, maybe pre-filtered based on the topic they’re exploring.

One thing to keep in mind is that users don’t typically have the motivation to actively figure out your search system. Give them a simple box, and support other information needs by being ready to offer users more options when they’re ready to consider them.

6. Design the results

The first thing to figure out is whether you want to divide or group the results by the form (e.g. the content type or media type). And then what will each result look like? How can you make the results engaging so the user has a better idea of what to click?

If you’re showing ten results on the page, you’re making the user do the final filtering manually, so make their life easier with richer results. And figure out what filter they will use most often and focus on this information (for example, events can prominently display the date and destinations can be displayed on a map).

A couple more tips:

  • Identify the taxonomy-type filters and make sure the content has this data. Remember that in Drupal, you can combine multiple vocabularies into a single filter. 
  • Faceted search makes your filters more useful, because they will adjust based on all the other search criteria. This prevents the user from finding a dead-end in their search.

7. Add extra features

If you’re using Drupal and Elasticsearch or Apache Solr, it’s fairly simple to add more functionality to your search experience.

Here are just a few extensions that can make your site search more powerful:

  • Auto-complete
  • Highlighting
  • Infinite scroll
  • Search term correction (spell check)
  • Fuzzy search 
  • Document search

8. Tweak the boosting

Drupal’s Search API module allows you to easily adjust how each field is weighted when building the search results, which is referred to as “boosting”.

📚 Read next: Cludo + Drupal = Instant User-Friendly Search

Boosting lets you tell the system things like:

  • If a word is in a page’s title, it’s more important than the same word but in the body text
  • The more recent a page is, the more important it is
  • Prioritize results according to file type, in the following order: PDF -> .docx -> JPEG
  • Pages with more views have a higher priority

This will enable you to provide more relevant and accurate search results to your users. 

Join us live for more search insights

Site search is a complex beast, and each of the above points could easily have been its own article.

If you’d like to dive a bit deeper into site search UX best practices and case studies,