This feature isn’t available on every plan.
Refer to your pricing plan to see if it’s included.
Gather user data
To implement effective personalization, start by collecting the right user data. When users perform specific actions, send Algolia that describe those actions. Algolia uses these events to build individual user profiles. Before you begin sending events, analyze your users’ behavior and plan which corresponding events you’ll send.You’ve analyzed which user behaviors are meaningful for your business objectives
- You’ve made a comprehensive list of behaviors your users take that signal their affinities.
- You’ve classified behaviors as
view,click, orconversion. - You’ve classified behaviors as search-related or not.
- You’ve classified behaviors as item-based or category-based.
- You’ve selected consistent event names.
You’re sending valid events that capture all necessary information
- All your events include a unique
userTokenfor the user engaging in the behavior. - You are using
view,click, andconversionevents for the appropriate behavior. - All your events include a valid
eventName. - All your events include the name where you’ve declared the applicable facets as
attributesForFaceting. - If you’re sending events related to a search, you’ve included the
queryID. - If you’re sending item-based events, you’ve included the relevant
objectID. - If you’re sending category or -based events, you’ve included the relevant
filters. - Optional but recommended: you’ve included the
timestampfor when the behavior occurred.
Configure your personalization strategy
A personalization strategy determines how Algolia computes a using the events you send. You can configure the personalization strategy in the Algolia dashboard or with the API clients. The dashboard is recommended because it includes a visual simulator that helps you preview and understand how your strategy affects search results.You’ve defined a valid personalization strategy
- You’ve included and weighted events in your strategy.
- You’re sending the events that you chose in the strategy. You can see the events received during the last 90 days in the Personalization section of the dashboard.
- You’ve included and weighted facets in your strategy. To select facets for the strategy, you need to declare the attributes as facets.
- You’re sending events related to the facets you chose in the strategy.
- You’ve set a non-zero Personalization impact. You can set the Personalization impact at the app level in your Personalization dashboard, or with the
personalizationImpactsearch parameter, at query time.
You’ve simulated your strategy for real users
You’ve used the simulator in the dashboard’s Personalization section to simulate your strategy for various users and queries. The personalized results are as you would expect.Turn on personalization on searches
Personalized searches build on a user’s affinity profile to boost search results related to their preferences. It’s best to use the API clients or InstantSearch UI libraries to perform searches.You’re including enablePersonalization and userToken in your search requests
- You’ve set
enablePersonalizationtotrueeither as a search parameter or in the index configuration. - You’re using consistent
userTokens in events and searches. To have personalized results, you must use the sameuserTokenfor the events you send for a particular user and the searches that user makes.
If you haven’t sent events for a particular
userToken in the last 90 days, Algolia doesn’t personalize that user’s results.