Product recommendations

Suggest the right product to the right audience

According to Forrester’s Retail Benchmark Recontact Survey, 1 in 3 US adults say that product recommendations based on their past interactions are an important feature for online shopping.

This is a win-win situation, as customers get more of what they want, plus companies drive increased engagement, conversion rates, and customer loyalty.

What is a product-recommendation engine?

Product recommendations come at different levels of complexity and nuance, but the fundamentals are always the same – shoppers are presented with other products they may also like at some stage in the journey. 

This could be by email after a store visit, or in real-time at check out – the process will be more than familiar to anyone who buys their groceries online, as shown below.

How to build different levels of product recommendation engine

The above recommendations are actually based on fairly simple logic, you need to know who the user is (user identifier) as well as what they have purchased before and in what quantities (shopping history). The challenge comes when this information needs to be served back to the user in near-real time at the moment of checkout. If the suggestion arrives once they’ve made their purchases, they are unlikely to return.

The data would probably be modeled from a large table with all users and all products to look something like this:

Data from your data warehouse

User IDMost purchased items# purchases (past year)
Jay_01Mineral water25
Jay_01Kitty litter18

Data from your website

User ID

Data from your real-time stream

User IDItems to recommend at checkout
Jay_01Mineral water
Jay_01Kitty litter

So far so good, we have reasonable personalization and this will be effective enough in many contexts, but what about more complex recommendations?

We can take it further than just “item purchased before y/n”, to similarity scores, cohorts, predictive logic, and even full automation.

A similarity score can be calculated between products and used to recommend similar items when shopping. This requires scoring products based on how similar they are and feeding this into the recommendation engine.

The next step might be grouping users into cohorts based on the type of products they view or buy. This often takes the form: ‘people who liked X – like you – also liked Y’. 

You can go on to put users into cohorts based on every interaction with your sites and apps to create complex behavioral profiles and custom user journeys – this requires the use of advanced analytics tools.

The next step would often be machine learning or AI.

“Now we turn to Snowplow for about 90% of our use cases; it is a really structured part of the feature development process. ”


Using AI and machine learning to create highly-personalized product recommendations 

The behavioral profiles mentioned above can lead to effective automation, as machine learning algorithms calculate the optimal products to suggest based on any number of behaviors – blogs read, pages visited, videos viewed, internal searches, and so on…  As personalization increases, the results are better recommendations, which leads to increased click-through, add-to-basket, and conversion rates.

With AI and ML, you can also run tests to calculate the optimal metrics to base your recommendations on, by looking at the relative click-through rates.

Another interesting ML use case is to calculate the ‘relevance period’ for a recommendation, as there is an inevitable decay in levels of interest in a product as time goes on (this can be created with fixed logic, but ML can be more effective).

How to build a product recommendation engine

In terms of basic requirements, a recommender system should:

  1. Have access to historical data – behavioral, transactional, and demographic data
  2. Create and store a table so analysts can query this data and create automations 
  3. Expose an API to receive and respond to requests from the web server.

The technical architecture might look something like this:

Learn more about building recommendation systemsthis is for content recommendations, but the technical principles are the same.

Step-by-step instructions to build an e-commerce data product accelerator (DPA)

You can now build an e-commerce Data Product Accelerator (DPA) for free. This fast-tracks you on your way to making decisions from your data warehouse. 

A DPA gives you a data model which generates tables on your product views, cart interactions, transactions, and more. This gives you room to mature your data collection through customization, which is not possible with a pre-packaged product recommendation solution. 

Ultimately, you can generate better product recommendations and increase revenue.

Common challenges with product recommendations

Technical complexity

As the personalization of your recommendations increases, so too does the level of complexity. Without firm foundations, such as well-organized and understood data sets, this is not achievable. 

Furthermore, in order to create flexible and well-understood data for advanced analytics, a warehouse-first approach is generally required. This is both an opportunity and a challenge for organizations, as it requires adopting several tools and increasing the sophistication of your data capture, processing, and activation; but the rewards can be massive, as you gain the flexibility to slice and dice data into powerful data models which are customized to your business. 

Data latency

In order to serve relevant recommendations, near real-time data is often required. 

Unfortunately, a significant number of data tools cannot process your data in real-time, while providing the rich data models required for AI and advanced analytics. This can limit a company’s aspirations when it comes to increasing the effectiveness of product recommendations.

A product recommendation case study

This clothing retailer has used advanced analytics to improve product recommendations. Here’s an example of one of their store pages:

Notice the details present on this page:

  • This shirt was purchased 13 times in the last 48 hours
  • 7 people are looking at this right now
  • You may also like…

One aspect which facilitates advanced analytics of this type is Snowplow’s unique ‘events and entities’ structure – see below:

The entities represent key business concepts, which in the example above is ‘product’ (with associated information attached such as product id and category – aka. ‘properties’). Another likely entity would be ‘user’, which would also contain information like ‘location’ and so on as a property.

The huge benefit of this system for creating advanced analytics is that you can easily filter your data by these entities, creating tables such as ‘all the information about X product’ or ‘X group of products’ – and the same for users and groups of users. This is very powerful for creating tables that power more relevant recommendations.

How Snowplow helps you create better product recommendations 

Snowplow collects event data from your website, mobile app, or other digital properties. Data is then sent to your warehouse or lake where you can build a complete picture of your customers’ behavior, preferences, and interests. 

Once this data is modeled, you can automate the delivery of personalized product recommendations to each customer, in real-time, across all touchpoints, based on a detailed usage history (check out a modeled data set or our e-commerce documentation to learn more).

Unlock the value of your behavioral data with customer data infrastructure for AI, advanced analytics, and personalized experiences