Skip to content

How Netflix builds a homepage just for you

  • Article
  • Media

Read the announcement on Facebook

Netflix had just over 213 million subscribers when this post went up, and a large part of keeping them is helping each one find something to watch quickly. In a post on the Netflix Tech Blog, Chris Alvino and Justin Basilico of the recommendations team explained how the homepage is put together for each member.

Rows, not lists

The Netflix interface arranges titles in rows, each with a theme: a genre, “Continue Watching”, “Trending Now”, titles similar to something you watched. The recommendation problem is therefore not one ranked list but a page layout. The team breaks it into three parts: choosing which rows are most relevant to a given member, filling each row with videos, and arranging the rows in the limited space of a screen. Placement matters because attention falls off both down the page and along each row. A title at the top left is far more likely to be seen than one several rows down and several positions across.

The first approach: rules

The pages were first built from a set of algorithmic rankers, each responsible for a type of row:

  • personalised video ranking, which filters titles by category,
  • trending now ranking, which accounts for time-bound events such as holidays,
  • continue watching ranking, which surfaces titles the member has started but not finished, and
  • video-video similarity ranking, which picks titles like ones the member already chose.

Rules and A/B tests then decided how these rows should be ordered. This worked, but the team judged that it was leaving a lot of the available data unused.

The second approach: learning the layout

The replacement was a machine learning approach to page generation. Rather than ordering rows by hand-written rules, the team trained a scoring function on historical member behaviour: which rows a member interacted with, which they ignored, what they played, rewound, or skipped. That function evaluates candidate rows and candidate pages, and the page a member sees is the one it scores highest. The blog post’s chart shows the learned layout reaching a higher recall of what members actually watched than the existing template, especially in the first few rows, which are the ones most people see.

Why it matters

The post noted that about 80 percent of what gets streamed on Netflix comes through its recommendation system. Small gains in how well the page matches a member’s interests therefore translate into a large amount of viewing. It is also a good example of a general pattern: a system that starts with expert rules, then replaces those rules with a model once enough behavioural data exists to train one.

Source: Learning a Personalized Homepage, Chris Alvino and Justin Basilico, Netflix Tech Blog

Originally shared on Facebook.

Query console

Connected to dssoc. Type \h for the commands this console understands.