What is a Recommendation Engine?

A Recommendation Engine is typically used to predict the rating or preference that a user would give to an item. These engines use algorithms to predict this preference based on a user’s historical behavior, preferences, or similarities between users.

Recommendation engines, sometimes referred to as "suggestion engines" are a powerful tool used online to increase user experience and ultimately revenue.

What's an example of a recommendation engine?

Amazon uses recommendation engines to suggest products to its customers. Netflix uses it for recommending movies and TV shows. Google uses it for showing personalized search results and YouTube videos. Facebook uses it for showing posts in your news feed and Instagram uses it for displaying what posts you see in your feed and stories at the top of your feed. Twitter uses it for deciding which tweets to show you first when you open the app. Spotify uses it to recommend songs that you might like. Recommendation engines are found on almost every consumer-facing platform, and is powerful in a business-to-business (B2B) setting as well.

The recommendation engine is just one part of a broader category of machine learning known as collaborative filtering algorithms. These algorithms look at patterns of activities between two entities to match similar entities with each other based on their relationships and similarity in preferences. For example: you just finished a docu-series on Netflix that was 8 episodes in length in record time. Netflix's recommendation engine, or algorithm, would suggest you check out another docu-series, likely of the same length and of similar subject matter.

Many of us are familiar with the concept of recommendation engines as it relates to online shopping. Ever wonder how that Amazon "Frequently Bought Together" section knows exactly what you need? Or how Netflix knows you'll love Stranger Things? These are examples of recommendation engines at work.

But recommendation engines don't have to be restricted to the retail space. In fact, they're used by all types of organizations to help them better understand their customers and ultimately increase revenue.

In the world of Big Data, the amount of information that's being collected is staggering. It's nearly impossible for marketers to search through this data and gain actionable insights on a one-by-one basis — not without a powerful recommendation engine at least.

How does a Recommendation Engine work?

Recommendation engines can be set up and iterated upon by the data team or an engineering team, or typically some combination of both. This is because it directly relies on the data collected and stored within an organization. And, because they rely on machine learning and even artificial intelligence to continuously suggest new objects to users, the collaboration with software engineering is necessary.

Recommendation engines work by:

  1. Collecting data. Every action taken by the user (searching, clicks, purchasing an item, order history) is logged- this is considered implicit data. It is often combined with explicit data- which is input and information that the user has clearly volunteered and submitted, including ratings, likes, and direct input.
  2. Storing data. Whether your organization does this in a data warehouse, data lake or both, storing the data in such a way that makes it simple to pull insights from when needed is crucial to running a recommendation engine smoothly.
  3. Analyzing data. Understanding what certain user actions and input mean is what keeps the engine moving. Some organizations will analyze the data in real time, meaning as the data is analyzed as it's being created, while others "batch analyze"- meaning the data is analyzed on occasion.
  4. Filtering data. Taking what the organization understands of its users and values from its users actions, then making sense of it using code and rules is the final stage of a recommendation engine.

Types of Recommendation Engines

Recommendation engines fall under one of three categories: collaborative filtering, content-based filtering, and a hybrid model.

Collaborative filtering

This is based on collecting user behaviour, actions, and settings, then analyzing the data to make a prediction on what the user might like.

Content-based filtering

This is based on using the actions a user makes on a particular product or piece of content, and assuming that the user will perform that action again on similar or related products.

Hybrid model

A hybrid recommendation engine pulls data from both the user behaviour and the content or items that the user has already performed an action on, then makes a decision on what to suggest based on that.