Free tool

Goodreads stats visualizer

Your Year in Books, instantly. Drop in your Goodreads export and get charts of every book you have finished, in any month you like.

Goodreads hands you one summary in December and hides the rest of your history in a spreadsheet. This page turns that spreadsheet into books per year, pages read, your rating habits, your busiest months and your biggest shelves, ready to screenshot.

Nothing is uploaded. Nothing is stored.

What the visualizer shows you

Books per year Every year you have been reading, side by side, with your best year highlighted. Pick a single year and the same chart breaks down into months.
Pages read Page counts from the export, totalled by year or month, plus your average book length and the longest book you got through.
Your rating habits How often you give five stars, how many books you never rated, and whether you are kinder or harsher than the Goodreads crowd on the same titles.
Shelves, honestly The export has no genre field, so you get your own custom shelves ranked by size. Real data, labelled for what it is.
Library split Read against currently reading against want to read, so you can finally see how far the to-read pile has run ahead of you.
Authors and pace The authors you keep coming back to, your re-read count, the months you read most, and how many reviews you have written over the years.

How to get your Goodreads CSV

1 Open My Books Sign in to goodreads.com on a computer. The export only exists on the website, not in the mobile app.
2 Import and Export In the left sidebar, under Tools, click Import and Export.
3 Export Library Press Export Library and wait. Goodreads generates the file and puts a download link at the top of the same page, usually within a few minutes.
4 Drop it here Download goodreads_library_export.csv and drop it on this page. Nothing else to install.

The full walkthrough, with screenshots, is in how to export your Goodreads library.

Why it works this way Your file never leaves your browser. A Goodreads export is a personal document: every book you abandoned, every review you wrote at 2am. The CSV is read with the File API and drawn straight to the charts. There is no upload endpoint and no storage bucket, because no server is involved in the reading at all. Open devtools, watch the network tab, and load your file.

A Year in Books you do not have to wait for

Goodreads Year in Books arrives in December, covers twelve months, and disappears into a share card. Your export holds far more: the year you read forty books, the year you read four, the authors you quietly returned to six times, the two hundred titles you shelved as want to read and never opened. All of that is already in the file. This page just draws it.

The catch with any CSV is that it goes stale the moment you export it. If you would rather have live numbers, that is the whole idea behind booksense: a free reading app for iPhone and iPad with a session timer, streaks, goals and stats that update as you read. You can see everything it does, read how to move your Goodreads data to a new reading app, or compare the field first in our roundup of Goodreads alternatives.

booksense is an independent app and is not affiliated with or endorsed by Goodreads. Goodreads retired its public API in December 2020, so a library export is the only way to get your reading history out. It is your data, and this tool never copies it anywhere.

Frequently asked questions

How do I see my Goodreads stats?

Goodreads only shows you a Year in Books once a year, but your full history is in the export file. Open Goodreads on the web, go to My Books, click Import and Export in the left sidebar, then Export Library. Goodreads emails you a link to goodreads_library_export.csv within a few minutes. Drop that file on this page and you get charts for every year you have been on the site, not just the current one.

Does my Goodreads export get uploaded anywhere?

No. The CSV is read by your own browser using the File API, parsed in the page you are looking at, and charted from memory. Nothing is sent to a server, there is no account, no email box and no analytics event carrying your books. Close the tab and the data is gone. You can check this yourself: open your browser devtools, watch the network tab, and load the file.

Why are some of my read books missing from the year charts?

Goodreads leaves the Date Read field empty unless you filled it in, and it is empty on most books that were added in bulk or shelved as read years after you finished them. Those books still count in your library totals, your ratings chart and your shelves, but they cannot appear on a timeline without a date. The tool tells you how many are undated rather than guessing a date from when you added the book.

Does this show my genres?

It shows your shelves, which is not the same thing. A Goodreads export has no genre column at all, only the Bookshelves you created yourself, so a breakdown labelled genres would be invented data. If you tagged books with shelves like sci-fi, memoir or book-club, those become a chart. If you never used custom shelves, that chart will be short or missing, which is honest rather than broken.

Is this a Goodreads Year in Books alternative?

Yes, with two differences: it works in any month, and it covers every year in your history rather than the last twelve months. It is still a snapshot of one CSV though. If you want the numbers to keep moving on their own, import the same file into booksense, a free reading app for iOS. It parses the export on your phone, keeps your ratings, reviews and finish dates, and backdates the imported books so they land as history instead of flooding your feed.

A CSV goes stale the moment you export it. Import the same file into booksense and the numbers keep moving on their own, with a session timer, streaks and per-book stats. Download for free