Implementation checklist
Consult the following checklist to ensure you’re following best practices before going live.
You’ve defined your searchable attributes#
For better relevance and performance, select attributes that are useful for search as your searchable attributes. You can then order your attributes based on the priority or relevance to search.
You’ve set most of your searchable attributes as unordered#
You should define most of your attributes as unordered, as this ensures that the position of a word within the attribute doesn’t affect the ranking.
You’ve set up your custom ranking with business metrics#
Make sure you’ve added business metrics to your index, such as most-liked, most-watched, best-sold, and similar. These metrics enable you to customize your ranking. Custom ranking is second only to searchable attributes in importance, as it gives you direct control over every set of results and is critical to ranking and relevance.
You haven’t changed the default ranking formula unless necessary#
Unless you have explicit reasons not to, you should use the default ranking formula. It’s usually best to set it back to its default before going live.
You haven’t changed Algolia’s engine defaults unless necessary#
You should keep the default settings unless you have no alternative. These are some important defaults you shouldn’t change unless necessary:
typoTolerance
minWordSizefor1Typo
minWordSizefor2Typos
queryType
ranking
advancedSyntax
minProximity
If you change any of the defaults—for testing purposes or to solve a particular problem—make sure to set them back to their original values unless those changes are necessary.
You’re not revealing any sensitive information#
By default, Algolia includes all attributes in the JSON response, even if you don’t display them in your user interface.
To exclude some attributes from the response,
set them as unretrievableAttributes
.
You’ve added all necessary synonyms#
It’s best to think about synonyms right away. Every index has alternative words for the same meaning. For example, you may want to treat “film” and “movie” as equivalents. Synonyms also help you avoid queries with no results.
You’re using the common language or languages of your users#
Set the language of your search solution to the most common language or languages of your users.
You’re treating singulars and plurals as the same#
Make sure to treat plurals and singulars equivalently. For example, you may want the engine to consider “film” and “films” as being equivalent for search purposes.
You’re removing stop words#
Stop words are small common words like “of” and “the”. If these words appear in queries, they can introduce irrelevant results. Tell the search engine to ignore stop words.
You’ve tested the top 10 queries#
Test your top 10 queries and other analytics metrics to see if you’re satisfied with the results.
You’ve checked for insufficient results#
Check to see if your search is returning no or unsatisfying results.
You’re using highlighting in your results#
Make sure you’re highlighting matched text in your results.
You’ve implemented instant search results with facets#
Make sure you’re displaying full search results instantly with every keystroke. No “Enter” key is required. Set up helpful facets on your frontend.
You’ve hidden your admin key#
Don’t use your admin API key in your frontend code.
You’ve followed the security best practices#
Keep the security best practices in mind.
You haven’t hard-coded any API keys in your mobile app#
Make sure your mobile applications are using API keys appropriately.
You’re using the most recent versions of the software#
Ensure you use the most recent versions of all software in Algolia’s ecosystem.
You’ve implemented and validated Click and Conversion events#
To make the most of Algolia’s powerful features and analyze your search relevancy, send events and check whether you have sent them correctly.
When sending events, you’re using a pseudonymous or anonymous userToken
#
All events require a userToken
that relates a user profile to an event. Don’t include personally identifiable information in a userToken
. Ensure that you get and send the appropriate pseudonymous or anonymous token.
You’ve optimized search request usage#
The number of calls made to Algolia per search request affects your billing, so make sure that you have optimized your Algolia implementation.