Shelfari and Goodreads are both online tools to manage your book collection. Both websites help you create lists of books read and books yet to read, with reviews to help you decide and tips from friends to keep you going. Shelfari and Goodreads were previously covered in 4 Great Ways To Keep Track Of Your Expanding Book Collection. Only a month ago, Erez wrote up an in-depth review of Goodreads.

I got started with Goodreads, but moved to Shelfari for its visual appeal. Shelfari's integration with Amazon also added to the bargain. Nevertheless, last week I decided to move back to Goodreads. Don't misunderstand, I still love Shelfari something fierce, but the resource-heavy website and its lack of mobile apps or even an API were dealbreakers for me.

By this time, I had already amassed a few hundred books on Shelfari. I was determined to take as much data with me during the move. Read on, and I'll help you do the same.

Prerequisites

You won't need much to be able to follow this tutorial. Just make sure you've already created an account on Goodreads. You'll also need a spreadsheet editor. You can use Microsoft Excel, iWork Numbers, LibreOffice, or another data wrangler of choice. The spreadsheet editor needs to be able to import TSV files (tab separated values) , apply custom date formatting and export to CSV files (comma separated values).

We'll be using the free spreadsheet editor from Google Drive. The process is slightly more convoluted, but this allows you to follow the tutorial regardless of your operating system. It may help to keep the Google Docs cheatsheet at hand.

1. Export Shelfari Data

Shelfari allows you to export your data very easily. Log into Shelfari and select account settings in the top right corner. Select the Shelf tab.

shelfari to goodreads

At the bottom of the page is a download link that lets you download a tab-separated file of all your books, ratings, dates read, and so on.

2. Import Data In Google Drive

Go to Google Drive and log into your account. If you don't have a Google account, you'll have to make one now, or use a different spreadsheet editor.

migrate shelfari or goodreads

Create a new spreadsheet and select the import option from the file menu on the webpage. Browse to the file you downloaded from Shelfari in the previous step and select 'Replace spreadsheet' as your import action. Press import. If all went well, you should now see your Shelfari data in the spreadsheet.

3. Transfer Shelves Data

When I first imported my data from Shelfari, all the books ended up on my 'read' bookshelf. If you want to keep the shelves data from Shelfari, you'll have to change some data in your spreadsheet.

3.1 Create Bookshelves Column

Goodreads keeps its data in a Bookshelves column. In Google Drive, select Insert -> Column Right and type 'Bookshelves' (without quotes) in the column's first row.

3.2 Filter, Add, Repeat

Find your "I plan to read list" column. With the column selected, select Data -> Filter. You'll be able to specify the filter's details using the drop-down menu in the column header. We're looking for entries in your to-read list, so make sure only TRUE is checked and press OK.

migrate shelfari or goodreads

All the visible entries should be from your to-read list. Now, add "to-read" (without quotes) to the previously added Bookshelves column for all visible entries. Turn off the filter, and repeat the process for the other shelves, separating different tags in the Bookshelves column with spaces. Below are the column names and the corresponding Bookshelves tags.

- I plan to read list --> to-read

- I've read --> read

You can also add tags to Bookshelves for other Shelfari data, like your favorites and wish list, even though Goodreads provides no native support.

4. Change Names

Goodreads is looking for a lot of data that's already included in the exported file. We'll just have to change the header names, so Goodreads is able to recognise the information for what it is. Find the columns listed below, and change the names as indicated.

  • Author --> Author l-f
  • Edition Author --> Author
  • Rating --> My Rating
  • PublicationYear --> Year Published
  • Note --> Private Notes

5. Fix The Dates

We're trying to put the dates in a YYYY/MM/DD format. On a desktop spreadsheet editor, you can usually define custom date formats. We'll take a different approach using Google Drive.

migrate shelfari or goodreads

Create a new column, titled "Date Read" (without quotes). In the column contents, add the formula

=IF(NOT(ISBLANK(number)),TEXT(number,"YYYY/MM/DD"),)

Where 'number' refers to the contents of the DateRead column that was originally present in your Shelfari spreadsheet. Repeat the process for the other date columns, with the corresponding names listed below.

  • DateRead --> Date Read
  • DateAdded --> Date Added
  • DatePurchased --> Original Purchase Date

6. Make Columns Static

The date columns are currently generated using a function. To make the data static, right-click the column and select copy. Right-click the column again and select Paste special -> Paste values only.

transfer shelfari to goodreads

7. Delete Redundant Columns

Goodreads most likely will ignore columns it doesn't recognize, but we'll delete them from our spreadsheet to avoid confusion. To delete a column, right-click on the column's lettered header and select Delete Column.

You can delete the following columns:

  • EditionId
  • ASIN
  • DateRead
  • DateAdded
  • Favorites list
  • I plan to read list
  • Wish list
  • I've read list
  • I own list
  • I'm reading list

8. Export & Upload

Export the document to a CSV file by selecting File -> Download as -> Comma Separated Values. In Goodreads, go to the import page and upload the CSV file.

shelfari to goodreads

Alternatively, the import page can be reached through My Books -> add books -> import. Give Goodreads a few minutes to process the information, and you're done!

Why are you moving websites? Let us know in the comments section below the article!