Goodreads and algorithms

I’ve been using Goodreads to track what I’m reading for the past three years, and I thought I’d investigate the algorithm that drives its recommendations. I’ve added almost 300 books to Goodreads since I started using it, nearly all of which I have read and rated, so there’s a lot of data there on my reading habits. However, I don’t use Goodreads to plan what I’m going to read next – I don’t use it as a wishlist but as a way to record things. Subsequently I currently have just ten items on my ‘to-read’ list:

It’s not the most eclectic list of literature – two non-fiction (on Russian history and climate change), and eight novels which would probably just about fall into the genre of ‘literary fiction’ (as meaningless as that is). But I feel, at least, that this list roughly reflects my reading habits.

The recommendations right now are based on three of the ten books listed: This Changes Everything by Naomi Klein accounts for three of the books, The Romanovs by Simon Sebag Montefiore is the reason why there’s now a picture of Stalin on this blog, and Amy Tan’s The Joy Luck Club is responsible for the fifth one. Interestingly (maybe), I’ve only heard of one of these books. I’m an English Literature librarian, my partner is an English Literature teacher, and my idea of a fun day out is to a bookshop.

Goodreads lets you know why the recommendation is included, which is pretty helpful.

And it also gives some guidance on how to improve your recommendations.


The trouble is that I’m not really that interested in reading any of these books. My goal, using the guidance above, is to get my top five recommendations to actually be helpful, to suggest books that I want to read right now (I can think of at least a dozen off the top of my head). I’m going to try to fix it so that the algorithm reflects what I want, rather than the other way around.

With my librarian hat on, it might also be useful to compare how Goodreads recommends books to how a discovery layer (also known as a library catalogue) can recommend articles and other titles – if I have time I’ll look at that too.