When it comes to location-based search, ensuring that you match location search results to user intent is a never-ending challenge for many product teams. The first hurdle is identifying a user’s intent when they enter a location into your search tool. The second is being able to filter mountains of location data in a way that provides meaningful relevancy to the search query.
But what is the best way to organise and filter location data so that your search algorithm provides only the most relevant location results to users?
In this post, we break down the top 6 ways to filter location data – and when best to use them to maximise conversion rates.
1. Straight-line distance search
Distance-based search works by drawing a radius circle around a point and retrieving all locations that fall within that distance radius.
Many search ranking algorithms include distance as a criterion because it is a relatively quick and straightforward way to retrieve location results. When searching by distance, all that is required is the distance between an origin and a destination – which assumes the user can travel in a straight line, ‘as the crow flies’. Distance-based search is also supported natively in most databases.
But there are some drawbacks to this approach. For instance, distance-based search doesn’t consider the reality of transport networks or geographical constraints, such as rivers or peninsulas. This could significantly impact the relevance of the locations that are returned to the user.
Let’s take Bristol, a city in the southwest of England, as an example. If you were to retrieve all locations within 20 miles (32 kilometres) of Bristol’s city centre, this would include locations in Wales, which is across the Bristol Channel.
As a result, you may end up displaying results that appear to be close by but are unreachable, and thus irrelevant, for the user – resulting in fewer click-through rates or users bouncing to third-party mapping websites.
When to use it
Distance-based search is the simplest way for app providers to display proximity data and is good for giving users a rough idea of which points are nearby.
For example, Appyparking+, a London-based parking app, uses distance to calculate straight line walking distance from a location point to a parking space. It uses a radius filter to display the parking spaces that fall within the walking distance defined by the user:
Similarly, hotel booking website, Hotels.com, allows users to search for hotels within their desired distance from key locations such as landmarks and train stations:
2. Time-based search
Unlike a straight-line distance search, time-based search answers the question, “Where is reachable within X minutes of my preferred location and by my preferred mode of transport?”
Search results within a defined travel time of a user’s preferred location is the most relevant way to filter the locations they can travel to within a specific time. In this regard, it closely reflects how we think and talk about locations.
Time-based search often provides more relevant search results than distance because it takes into account the actual transport mode, time of day and route that applies to the journey. Displaying more relevant search results increases the chance of higher click-through and conversion rates.
When to use it
Time-based search is ideal if your search needs to be personalised for a high volume of location search results. Key examples include:
- Recruitment search: with often hundreds or even thousands of job results to select from, you can allow users to search for jobs within their desired commute time and rank results accordingly.
- Property search: use time-based search to display the most relevant property listings based on their proximity to specified points of interest – such as an office or school.
- Travel search: where users are often looking for points of interest and destinations within a specific time frame, you can rank locations based on the time needed to travel there.
For example, recruitment website, Totaljobs, uses travel time as part of its site search functionality. As a result, it's seen a 10% increase in conversions:
3. Using pre-defined boundaries
This approach uses predefined criteria to store, identify and filter location data. Often, these criteria are based on governmental boundaries, such as postcodes, counties or municipalities.
For example, if you were to search for all plumbers within a given postcode, such as SW11 (London) the search results would return addresses within that postcode boundary:
While using pre-defined boundaries can be a helpful first step in the search process, this way of filtering location data doesn't always match how we understand the locations around us. Postcode districts also vary significantly in surface area and population – so comparing like with like is virtually impossible.
For example, the 'M4 corridor' in the UK is a common term used to refer to the area between London and South Wales, adjacent to the M4 motorway. However, it is not a defined location - although users may still search for the term.
The above example shows the biggest limitation of using pre-defined boundaries within a search algorithm - namely, the fact that a user’s understanding of an area may differ from its official categorisation. As a result, it is up to internal Search teams to define their location boundaries.
When to use it
For cases where users want to search within a specific area – for example, searching for a property within a specific borough or county.
4. Clustering search
In a nutshell, clustering search involves grouping sets of similar searches together.
When it comes to location search, a clustering search model groups users together based on similarities in the locations from which they are searching. Results are filtered and sorted based on this criterion. Clustering offers the flexibility to set a threshold on how close the location points must be to form a group (or cluster).
Because it uses patterns obtained from previous user behaviour, clustering search can be an efficient way to target entire groups of users.
On the other hand, by grouping users, you may miss out on ways to better personalise the search experience – a core criterion of modern search. And a lack of personalisation could ultimately impact your conversion rates.
When to use it
There are specific use cases where clustering should form part of your search strategy. For example it can be used for location-specific advertising, where ads can be served to users that are in similar locations.
Alternatively, it can be used to connect users living in the same area. For example, Nextdoor, a networking app that allows users living in the same neighbourhood to connect. Members whose addresses fall outside the boundaries of existing neighbourhoods can establish their own neighbourhoods.
5. Address grouping
Address grouping retrieves location results based on the exact address a user has entered. This approach uses text recognition to return results based on the input text.
Address grouping offers a simpler way to organise location search and works well for incomplete data – for example, capturing what may be part of an address.
However, address grouping can sometimes be inaccurate – providing false positives or missing locations, such as if an address has no postcode. This possibility of inaccuracy can create a negative search experience and impact conversion rates as a result.
When to use it
If you have a lot of incomplete or unorganised location data – such as an incomplete address.
One example is houseprices.io, which provides house price data for homes sold in England and Wales. Here, simply inputting a partial postcode is enough to return results:
6. “Search near me”
Otherwise known as a bounding box search, a “search near me” functionality displays a map view, with location results automatically refreshed as the user moves the map.
A good example of this is Airbnb’s search functionality:
A big advantage of this functionality is that it offers a dynamic, user-driven and discovery-based search experience. However, it will require more effort and input from the user.
When to use it
When you want to offer your users the ability for search for locations near to where they want to be – such as for booking travel accommodation or visiting points of interest.
Filtering location data the right way improves search experience and boosts conversions
For example, if users want to know the nearest location to them, the default is often a distance-based search. However, in this case, time may be a better metric to deliver more relevance and increase conversions.
The strategies highlighted in this post offer different ways to think about organising and filtering location data within your search algorithms to optimise the user search experience and maximise conversion rates.
Whatever you decide, it's also important to continually run experiments and tests to understand the best way to optimise the search experience for your users.
To learn more about optimising your site search, check out our guide on designing the best search experience.