How to Export Your Goodreads Library to StoryGraph

Moving your reading history from Goodreads to StoryGraph is one of the more straightforward data migrations in the book-tracking world — but a few variables determine how smoothly it goes and how complete your data ends up on the other side.

What You're Actually Moving

When you export from Goodreads, you get a CSV file containing your entire reading history: book titles, authors, ISBNs, your ratings, shelves, date added, date read, and any review text you've written. StoryGraph then imports this CSV and maps each field to its own data structure.

Understanding this file-based transfer matters because the quality of your export depends on what you put into Goodreads — sparse entries, missing dates, or books without ISBNs can affect how cleanly StoryGraph picks everything up.

Step 1: Export Your Data From Goodreads

  1. Log into Goodreads on a desktop browser (this feature isn't available in the mobile app)
  2. Go to My Books
  3. Click Import and Export in the left-hand tools panel
  4. Select Export Library
  5. Goodreads will generate a CSV file — this can take a few minutes for large libraries
  6. Download the file to your computer

The file will be named something like goodreads_library_export.csv. Keep it somewhere easy to find.

📌 Note: Goodreads has periodically changed where this option lives in the UI. If you don't see it immediately, check under your account settings or look for a "Tools" section within My Books.

Step 2: Import the CSV Into StoryGraph

  1. Create a StoryGraph account if you don't already have one
  2. After logging in, go to your profile icon and select Import your books
  3. Choose Import from Goodreads
  4. Upload the CSV file you just downloaded
  5. StoryGraph will process the file — for larger libraries (500+ books), this can take several minutes

StoryGraph will attempt to match each entry to its own database using ISBNs and title/author combinations. Books it can't confidently match may require manual review.

What Transfers Well — and What Doesn't

Not everything maps perfectly between the two platforms. Here's what you can generally expect:

Data TypeTransfers?Notes
Read books✅ YesMatches by ISBN when available
Star ratings✅ YesConverted to StoryGraph's scale
Custom shelves⚠️ PartialShelf names may import as tags
Date read⚠️ PartialOnly transfers if recorded in Goodreads
Review text✅ YesImports as private notes by default
Friends/followers❌ NoSocial graph doesn't transfer
Reading challenges❌ NoMust be recreated manually

ISBNs are the key matching mechanism. Books added to Goodreads from editions without ISBNs — older editions, self-published works, or manually added titles — are more likely to fail matching or land incorrectly on StoryGraph.

📚 Variables That Affect Your Experience

Library Size

Smaller libraries (under 200 books) tend to import cleanly with minimal review needed. Larger libraries — particularly those built over many years with inconsistent data entry — often require more post-import cleanup.

How You Used Goodreads

If you used Goodreads mainly as a read tracker with consistent date-read entries and ratings, your import will be rich and accurate. If you used it more casually — adding books without marking them read, using vague shelf names, or skipping ratings — StoryGraph will have less to work with.

Edition Mismatches

StoryGraph has its own book database. Sometimes the edition Goodreads has on file differs from what StoryGraph recognizes, which can result in the wrong cover, page count, or genre tags being applied. This is especially common with non-English titles, omnibus editions, and older public domain texts.

Duplicate Handling

If you've already added some books manually to StoryGraph before importing, you may end up with duplicates. StoryGraph provides tools to merge or remove these, but it's worth auditing your library after import if this applies to you.

After the Import: What to Check

Once StoryGraph finishes processing, scan through a few areas before considering the migration complete:

  • Currently Reading shelf — books sometimes land here incorrectly
  • Ratings — spot-check that your ratings converted as expected
  • Read dates — verify these transferred for books where tracking dates matters to you
  • Unmatched books — StoryGraph will flag these for manual resolution

StoryGraph's import tool is generally well-regarded for accuracy, but no automated migration between two independently maintained book databases will be perfectly clean.

One Thing Worth Knowing About the Timing

Goodreads doesn't always generate the export file instantly — and occasionally the export function produces an empty or corrupted file on the first attempt. If your downloaded CSV opens with no data or throws an error on StoryGraph, go back to Goodreads and request the export again. This is a known quirk, not a sign something is wrong with your account.

How much post-import work you'll face depends almost entirely on how consistently your Goodreads data was maintained over the years — and how closely your reading history skews toward mainstream titles with clean ISBN records versus more obscure or non-standard editions.