Back to Blog

Using the Advanced Search to Sort and Filter Goodreads Data by Rating and Genre

November 11, 2020

Goodreads is my go-to for tracking my books. And I'm pretty sure I'm not alone in that, given the sheer number of reviews that flow into the platform (the recent Kindle integration definitely doesn't hurt either).

But aside from the book-tracking aspects of Goodreads, I also use it for book discovery. That said, there are a few features I've always found lacking. Or missing completely.

The main ones:

  • finding the most read books in a genre.
  • finding the best books in a genre

For reasons unknown, Goodreads never decided to build out a search feature beyond the semi-buggy site search they have. So I took it upon myself to build a small project based on their API that does.

Is it perfect? Nope. But it gets the job done. Mostly.

Anyways, here are some features of the site:

Sort Goodreads by Average Ratings

On the Goodreads website & app, you're unable to sort books by average rating at the moment. But you can use our search feature to find the top books reviewed on the platform.

Just open up the filters pane, set the 'Sort by' dropdown to 'Average Rating'. I'd suggest also setting a value for 'Minimum Ratings', which will limit the search to books with 'greater than x' ratings. Be sure to press the 'Apply Filters' button once you select everything, then 'x' to close the menu.

Sort Goodreads by Average Rating

Sort Goodreads by Rating

Another thing you're not going to be able to do on the Goodreads site/app - sorting by total number of ratings. But the search feature still has your back.

Just set the 'Sort by' dropdown to 'Total Ratings' and press 'Apply Filters'.

No one is going to be surprised to see that Harry Potter, The Hunger Games, and Twilight top out the list of the most read books on Goodreads...

Most Read Books on Goodreads

Sort Goodreads by Average Rating in a Specific Genre

Continuing to explore the search feature, maybe we want to find the best books in a specific genre. Lets say Fantasy. In order to do this, we'll need to set the 'Include Genres' filter to 'Fantasy'. Lets also play around with the 'Sort by' feature and use 'Adjusted Rating (Popular)' this time. There's a blog post that explains the calculation, but at a high level its a hybrid of # of ratings and average rating. Press 'Apply Filters' and see what you get.

Sort Goodreads by Average Rating in a Specific Genre, Excluding another Genre

Last experiment here - lets see if we can exclude a genre from the results. Maybe I'm looking for non-fiction, but don't want to see biographies & religion books. Just select 'nonfiction' as the included genre, and then select 'biography' and 'religion' as excluded. And there you go - all set.

Previous: Its Been Quiet