How book recommendations work: popularity, “readers also liked”, and content matching
27 September 2026 · 7 min read
Every book site recommends books, and most of them do it the same few ways. Knowing how the machinery works helps you judge what you're being shown. You'll see why the same twenty titles follow you everywhere, why suggestions are good at “more of the same” and bad at surprises, and what to do about it.
There are three broad approaches. Most real systems blend them.
1. Popularity: “what everyone is reading”
The simplest recommender just shows you the most-read or best-rated books, perhaps within a genre. It's a surprisingly strong baseline. Popular books are popular partly because lots of people do like them, and for someone the system knows nothing about, it's a reasonable guess.
The weakness is that it's the same list for everybody. It can't tell a reader who loves quiet, melancholy novels from one who wants breakneck thrillers. It also feeds itself: books that get shown get read, books that get read get shown, and a good book that missed its moment never gets another. There's a separate guide on this: popularity bias and hidden gems.
2. Collaborative filtering: “readers like you also liked”
This is the approach behind most “readers also enjoyed” rows. It never looks at the books themselves. It looks at people. If you and a thousand other readers all rated the same ten books highly, and many of them also loved an eleventh you haven't read, that eleventh is a good bet for you.
In practice the system builds a huge grid, with readers down one side, books along the other, and ratings in the cells. Almost all of the cells are empty, and the maths is about filling them in sensibly. It works remarkably well when there's lots of data. It has well-known blind spots, though:
- Cold start.A new book with few ratings has no “readers who liked it” yet, so it rarely gets recommended, which keeps it from getting ratings. A new reader has the same problem in reverse.
- Popularity pull.Popular books appear in almost everyone's history, so they end up looking similar to almost everything. That's why a mega-bestseller shows up as “similar” to books it has nothing in common with.
- No reasons. It can tell you that people who liked A liked B, but not why. Maybe they share a mood, or maybe they were both in a book-club box one month.
3. Content-based: “books like this book”
The third approach looks at the books themselves. Describe every book by its features, then recommend books whose features resemble the ones you liked. The quality depends entirely on the features. Genre tags and keywords are cheap to get but crude. “Fantasy, magic, dragons” describes a bedtime story and a war epic equally well.
With richer features (mood, pace, weight, ending, theme, narration) content-based matching gets much better. It also escapes the cold-start problem: a book published yesterday can be described today and matched immediately, without waiting for anyone to rate it. And it can explain itself: “this matches because it's dark, slow-burning and about grief”.
Where language models come in
Large language models change the content-based approach in two ways. First, they can produce the rich descriptions it depends on, reading a book's metadata and their general knowledge of it and judging its mood, pace and themes. That used to take a human cataloguer. Second, they know about a vast number of books, so they can suggest candidates beyond any one site's catalogue.
They also have a notorious weakness: they will occasionally invent a plausible-sounding book that doesn't exist, or attach a real title to the wrong author. Any system built on them has to check suggestions against a real catalogue before showing them to anyone.
How Match Book does it
Match Book is content-based, and it builds the profile from your books rather than from other readers:
- It reads your five-star books (four-stars at half weight) across fifteen dimensionsand works out which values you consistently favour. That's your taste, described in dimensions rather than titles. The taste guide walks through the method.
- A language model proposes books that fit that description.
- Every proposal is checked against a public book catalogue, so nothing imaginary gets through, and then scored against your profile dimension by dimension.
- You see each match with its fit and the reasons: which of your dimensions it hits and which it misses.
Because the profile is in dimensions, you can also change it on purpose. Turn one dial and ask for the same taste but lighter, or shorter, or set somewhere new. That's the part neither popularity nor collaborative filtering can easily do, and the subject of explore or exploit.
The book pages on this site use the same idea in miniature. Every book lists the six books in the catalogue closest to it across those dimensions, and says what they share.