Guides / Getting insights and analytics / Leveraging analytics data / Query Suggestions

Personalizing Query Suggestions

The Personalization feature can surface results that are better matches for specific users, based on their past interactions with your website or application.

In the context of Query Suggestions, this means you can show users different suggestions for the same query, based on their Personalization profile.

Let’s compare two result sets for user who has affinities for basketball and boxing.

Personalized qs example

What we see is that Basketball and Boxing are both getting promoted higher than they were initially. The boosting force depends on the initial position of the suggestion, the affinities scores, and the personalization impact settings. We suggest a personalization impact value between 90 and 99. We could imagine for example that Boxing takes the first spot and Basketball the second if the user has shown more interest in Boxing than Basketball.

Enabling personalized Query Suggestions

To enable Personalization on your Query Suggestions index, you need to:

  • Have a working Personalization setup (please refer to the implementation checklist).
  • Set the enablePersonalization attribute of the Query Suggestion index configuration to true. Ensure you pass the userToken parameter at query time when targeting the Query Suggestion’s index.

How it works

When enablePersonalization is set to true, the Query Suggestion’s index builder performs the following tasks:

  • For each suggestion, it sends a query to the source index to fetch the top 20 associated facet values.
  • It adds a new attribute to the suggestion record for each facet in the strategy, and adds the retrieved facet values.
  • It sets the attributesForFaceting setting of the Query Suggestions index to match the facets listed in the Personalization strategy.
  • It sets the enablePersonalization Query Suggestions index setting to true.

Did you find this page helpful?