By Roland Villemoes, CTO, Alpha Solutions
Consumers expect relevant content on any commerce site. And increasingly they expect recommendations to be more and more accurate (at least that’s my experience). Some years back, there was a skepticism around how much “they” know about me. That skepticism is gone. People now understand that tracking enables certain advantages, like good recommendations and personalization.
My intention is to dig a little bit into what strategies recommendation engines use, without going too deep into the underlying math. This blog will provide insights on a selection of the strategies that you can use on both free and commercial recommendation engines. The hope is that a better background will guide your efforts to choose the right strategy. Most importantly, it should help you to consider what dimensions can give your recommendations an edge for your business.
Creating relevance is key. Recommendation engines have made huge progress since Amazon set the standard for product recommendations in 1998. As a result, up to 35% of the sales on Amazon are generated by their recommendations1. Recommendation engines should absolutely generate better conversions that impact the bottom line. If that’s not happening, something is seriously wrong.
Recommendation engines are roughly based on two types of data:
- Basic information: Meta data, product information, product categories, tags, keywords, prices, etc.
- Interactions: Orders, ratings, add to cart, product views, etc.
A very basic technique is to examine the categories and products that other users viewed and create statistics of all product details page views, category views, and orders per user. The binding element is, of course, the user. We can interlink everything one customer does with others by registering the relationship between users, orders and products.
This allows you to answer questions based on statistics. For example, when user A is viewing product X, show me the top three products purchased or viewed by other users who purchased or viewed product X. Or, show the top three products that user A previously purchased.
More statistics and dimensions can be added, based on all we know about the users and the orders – to mention some more examples:
- Location – zip code, geo coordinates
- User’s gender
- User’s age
- Other user meta data and preferences, use of devices, etc.
- Time of day of the order
- Order size
- Promotions and discounts on the order
- Product categories or the product and order
Simple statistics like the above might be effective – and can be extended on a wide range of parameters to filter and segment. However, the above strategy has one drawback – with a lot of products and a lot of users, the computations can be heavy.
Note: Besides using for recommendations, this data is also a good source of insight into your customer base and candidates for segmentation and persona inspiration and validation.
The filtering-oriented strategies are normally based on user-item interactions. The fundamental assumption is that if User 1 likes Product A, and User 2 likes Product A and Product B, then User 1 likes Product B.
When Amazon started recommendations, they used item-based collaborative filtering, but they pivoted from being user-based (looking at what other users also purchased) and towards an item-based collaborative filtering looking at the users’ similarities and the products’ similarities instead.
This award-winning (and business-winning) strategy is based on defining a measurement for “similarity” on the products and users. Using a similarity measure is a simple way to identify and show “similar products.” This demands less computation and is a fast strategy that works better with a large product catalog. Remember that the similarity measure can be used in conjunction with other recommendation strategies.
Predictions and Machine Learning
Services like YouTube and Netflix use collaborative filtering for their recommendations. The challenge with the collaborative filtering techniques is that they require some history and data. You could call it a cold start if you introduce new products and base your recommendations on reviews that don’t exist yet – the same for new users with whom you have not yet interacted.
Some obvious mitigation techniques are to try to get at least some information from a first-time user, such as where do you live, gender, age, interests etc. – just something! This eliminates the cold-start risk that the user gets bored with the questions and leaves.
Collaborative filtering is an obvious fit for machine learning, and any machine learning expert will have a favorite algorithm. This can also be done without machine learning, but the ML approach adds the predictive aspect. I am not here to say what works the best – the users must decide that. They are the real judges.
So – what’s the best strategy?
Measure and evaluate! As with everything, you can make a lot of assumptions, but the only things that counts are the voices and actions of your users. So, ask them! Use the statistics, questionnaires, A/B testing and what you have in the tool box. Technology is interesting, but if it doesn’t solve the problem – it’s useless.
A simple and brief overview of selected and simple recommendation engine strategies have been presented. The hope is that it inspires you to move your business forward in that regards. Hopefully this also helps you to keep things simple, focus on the business and not technology and let your users/customers have the final vote!
Interested in a series of more technical posts? Our technical blog dives into implementing recommendations using different strategies and shows how to measure and evaluate them.
Roland Villemoes is CTO for Alpha Solutions in the US. Alpha Solutions is a Sitecore Platinum Solution Partner. Roland is a Sitecore Commerce MVP 2019 and is co-organizer of the NY Metro Sitecore User Group, and is an active contributor to the Sitecore Community. See more of his blog posts and follow him on LinkedIn or Twitter @RolandVillemoes.