Goodreads Bulk Import (CSV) – Instructions

Created by Debarshi Das, Modified on Sun, 28 Dec, 2025 at 11:37 AM by Debarshi Das

At the moment, Biblophile supports bulk imports using a Goodreads-compatible CSV format, with a few Biblophile-specific enhancements.

If you’re coming from:

  • Goodreads

  • StoryGraph

  • Notion / Excel / Google Sheets

…you can modify your spreadsheet to match the format below and import your entire reading history.

Note: Always edit a copy of your spreadsheet, not the original.

Required Columns (must not be empty)

These columns must exist and must have a value in every row.

Column NameDescription
TitleBook title
AuthorAuthor name (e.g. Sally Rooney)
Exclusive ShelfOne of: read, currently-reading, to-read, did-not-finish, or a custom exclusive shelf
My RatingNumber from 0 to 5 (decimals allowed). Use 0 if not rated
Date AddedDate you added the book (format: yyyy/mm/dd)
Read Count0 if unread or DNF, 1 or higher if read

⚠️ If any required cell is empty, the import will fail.

Reading Status Mapping (Important)

Biblophile maps reading status like this:

CSV value (Exclusive Shelf)Biblophile status
readRead
currently-readingCurrently reading
to-readTo be read
did-not-finishDid not finish
Custom shelf (e.g. reference)Imported as a tag only, no reading status

This allows custom exclusive shelves (like reference, academic, etc.) to stay out of reading progress while still being searchable.

Ratings & Reviews

ColumnHow Biblophile handles it
My RatingImported into your ratings
My ReviewImported as your review
Rating = 0Ignored (no rating created)

If a book already has a rating, the newest one is used.

Re-Reads (Fully Supported)

If Read Count is greater than 1:

  • Biblophile will create multiple reading entries

  • Each re-read becomes a separate reading instance

This allows accurate re-read history (something Goodreads doesn’t handle well).

Shelves → Tags

CSV ColumnBehavior
BookshelvesConverted into custom tags
Multiple shelvesComma-separated
Multi-word shelvesUse hyphens (sci-fi, owned-books)

Example:

Bookshelves = owned, favourites, sci-fi

Creates tags:

  • Owned

  • Favourites

  • Sci-fi

Owned Books

If Owned Copies = 1:

  • Book automatically gets the Owned tag

Optional Columns (recommended but not required)

ColumnNotes
Date ReadFormat: yyyy/mm/dd
ISBN13Helps match exact editions
Number of PagesUsed for stats if available
PublisherInformational only
BindingHardcover / Paperback / Digital

What is NOT imported

These are left empty (by design):

  • Reading sessions

  • Pages-per-day history

  • Emotions

  • Streaks

You can start tracking these after import.

CSV Format Rules

  • Headers must match exactly

  • File must be saved as .csv

  • Dates must use yyyy/mm/dd

  • ISBN columns should be text, not numeric (to avoid truncation)

⚠️ Excel may truncate ISBNs (e.g. 9.78037E+12).
If that happens, use LibreOffice or Google Sheets and re-export.


Once you’ve done that, you can then upload it as a CSV on the Import Goodreads page here: biblophile.com/goodreads-import


If you receive an error message, before emailing into support please check:

  • That every cell in the mandatory columns listed above has something in them
  • That the header rows are pasted exactly 
  • That your file is definitely saved as a CSV file


If everything looks as it should and you still can't upload it, please email into help@biblophile.com, attach your import to your email, and let us know what the error message says.

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article