Preface
Product recommendations & product boosting are one of the biggest contributors in the eCommerce personalization space. Retailers report higher customer satisfaction & conversions by showing the customer with their products of interest. There are plenty of personalization of-the-shelf tools available in the market which primarily bring in the recommendated items for a given product & customer history of purchases.
Customer who bought also bought Also viewed by others Accessories
But, the recommendations should not only come when the user is viewing a final product or after adding a product into the cart. Shouldn't these recommended products be planted when the customer is searching for the product itself ?
Proposed Personalization
How about we personalize the product we show to the customer is based on the customer's interaction with your site ?
Search Engines
The work horses to do this work are there in your ecosystem backyard. Yes, the search engines in your ecosystem could help to do these kind of personalization. Search engines doesn't have the domain knowledge, you need ask the right questions to get the right results from these engines. For the rest of the discussion, we will refer Solr as the search engine.
Based to Category Selection
When a customer is browsing and keep coming to a particular type of categories, then we can include
these category in the next query to the search engine and boost the products that belongs to these categories.
e.g.
A customer who wants to buy a Laptop may be interested in browsing the 'computer & laptop' department.
So when the customer searches for a 'Laptop', refine and boost the results from these departments.
Based on the facet customer selects
If the customers are interested in certain refinements of products in the current session, then you can
include these facets / refinements as part of your next keyword search from the very same customer.
e.g.
Customer selects the Intel I3 processor or a the 5 star ranked items as the search filter options.
You could be sure that the customer is looking for a laptop having a 5 star rating with intel i3 processor.
So, during the next keyword search, boost the products with these characteristics.
Based on the Product viewed
If the customers are looking frequently at the details of products of particular type e.g. Laptops with 8GB Memory, Laptops with 2.4 GHZ or particular Brand of laptops, etc., With these behaviour, you can bring in more refined search results from the search engine and show the Laptops which the customer might be interested to buy. These parameterized queries are supported by Solr with the help of functional queries.
Where POW, SUM, PROD are query functions in Solr. Refer Solr Functional Queries for more information.