How to build a book tracker spreadsheet that you keep using
A good book tracker spreadsheet has one row per book and about nine columns: title, author, status, format, pages, start date, finish date, rating and a note. Add three formulas for days per book, books finished and pages read, and keep the sheet short enough that a new row takes thirty seconds.
Coming soon to iPhone
Why use a spreadsheet for books?
A spreadsheet is the most portable book tracker there is. It opens in Google Sheets, Excel, Numbers and almost every free alternative, it exports to CSV, and nobody can retire it or put its features behind a subscription. The Wikipedia article on spreadsheets traces the idea back decades, and the basic grid has barely changed because it works.
The tradeoff is friction. A sheet does the arithmetic for you but asks you to type every field, and typing into a grid on a phone is slow. That tension decides everything below: keep the sheet small, and decide early what you will do about logging on the go.
Which columns should you include?
Nine columns cover most readers. Add a tenth only when you catch yourself wishing for it.
The Status and Format columns should be dropdowns. In Google Sheets this is Data, then Data validation, then a list of items. Dropdowns stop you from typing Finished in three different spellings, which breaks every formula you write later.
| Column | Type | Notes |
|---|---|---|
| Title | Text | One row per book, per re-read |
| Author | Text | Last name first sorts nicely |
| Status | Dropdown | Want, Reading, Finished, Left |
| Format | Dropdown | Print, E-book, Audio |
| Pages | Number | Leave blank for audio |
| Started | Date | Format as YYYY-MM-DD |
| Finished | Date | Leave blank until done |
| Rating | Number | 0.5 to 5, or whatever scale you trust |
| Note | Text | One line, no essays |
Which formulas are worth adding?
Four formulas are enough to answer the questions most people ask at year end. The examples assume the columns above, with Status in column C, Pages in E, Started in F and Finished in G, and data starting in row 2.
For a year filter, use COUNTIFS with a date range on the Finished column. Keep the summary on a separate tab so that sorting the main sheet never moves it.
- Days per book:
=IF(G2="","",G2-F2+1)in a new column H. It leaves unfinished books blank. - Books finished:
=COUNTIF(C:C,"Finished")in a summary cell. - Pages read:
=SUMIF(C:C,"Finished",E:E)counts only finished books. - Average rating:
=AVERAGEIF(C:C,"Finished",I:I)if Rating sits in column I.
How do you add books quickly?
Most sheets stall at the moment of entry, so design for that moment. Copy the last row and overwrite it, or use a form. In Google Sheets, Tools, then Create a new form, produces a short form that writes rows into the sheet. Add the form to your Home Screen on iPhone and a new book is five taps.
For importing an old list, a CSV from another tracker works if the headers match your columns. If you are coming from Goodreads, the guide to exporting your Goodreads library explains how to get that CSV.
What does a spreadsheet do badly?
Three things. It cannot tell you where you stopped inside a book without a column for the current page, and updating that column every evening is a chore. It has no sense of days, so a streak or a missed evening means writing your own formulas. And it forgets the small moments: the line you underlined, the day you read on a train.
Those are the jobs a purpose-built app handles with one tap. A reading tracker such as Bookstub, which is in development for iPhone, logs a page with a wheel and a button and computes the percentage from it. It also keeps short quotes, called lines, with a page and a colored tab. If you want to compare the approaches, the app-versus-paper comparison lists what to look for.
When should you stay with the sheet?
Stay if you like to see all your books in one grid, if you enjoy building formulas, or if you want a record that outlives any app. Sheets are also better for odd questions, like average rating by format or the genre you finish fastest, because you can pivot anything.
Move to an app if you notice that you only update the sheet in bursts, once a month, from memory. A log filled in from memory is a list of what you remember, not what you read.
Can you use both?
Yes, and many readers do. Let the app handle the daily logging and export a CSV once a month into the sheet for analysis. The sheet becomes an archive and a place for curiosity, and the app takes the daily load. The only rule is to keep one source of truth. If the two disagree, the one you update daily wins.
How do you keep the sheet accurate?
Most broken sheets break the same few ways, so a short set of rules prevents them.
Check the totals once a quarter against something you trust, such as your library history or the list on your shelf. If the counts differ, find out why before the gap grows.
- Enter a book when you start it, with Status set to Reading, and fill the finish date the day you finish.
- Add a re-read as a new row. Overwriting the first read erases your history and distorts the page totals.
- Freeze the header row and turn on a filter so the grid stays readable at 80 rows.
- Use conditional formatting to shade rows where Status is Reading. The books in progress should be the first thing your eye finds.
What changes in Excel and Numbers?
Very little. The formulas above work the same in Excel, and Numbers has equivalents for each. Dropdowns are called Data Validation in Excel and Pop-Up Menu cell formats in Numbers. If you work across devices, Google Sheets is the one with a free mobile app that edits reliably, so it is usually the practical choice for a log you want to open on a phone.
Whichever you pick, store the file somewhere that syncs, and keep a monthly copy as a backup. A single accidental sort that scrambles one column is the most common way to lose a year of data.
Frequently asked questions
What columns should a book tracker spreadsheet have?
Title, author, status, format, pages, start date, finish date, rating and a one-line note. Make status and format dropdown lists so your formulas stay reliable.
How do I count finished books in Google Sheets?
Use =COUNTIF(C:C,"Finished"), changing C to the column that holds your status. Use COUNTIFS with a date column to count one year.
Is there a free book tracker template?
You can make one in a few minutes with the nine columns above. Starting from your own columns avoids the clutter that downloaded templates tend to carry.
Can I track audiobooks in a spreadsheet?
Yes. Add a Format column and leave Pages blank for audio, or add a Minutes column. See the guide on audiobooks and reading.
What is better, a spreadsheet or Notion?
A spreadsheet is simpler and more portable. Notion adds linked databases and nicer views but takes longer to set up. The Notion book tracker guide walks through that route.