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
Goodreads Reviewed: A Must-Use Site For Any Book Lover
Goodreads Reviewed: A Must-Use Site For Any Book Lover
If you enjoy reading, and like to use the Internet for finding great new reads, you may well have heard of Goodreads before: This is a superb website hosting a vibrant community of book lovers,...
Read More
. Only a month ago, Erez wrote up an in-depth review of Goodreads
Goodreads Reviewed: A Must-Use Site For Any Book Lover
Goodreads Reviewed: A Must-Use Site For Any Book Lover
If you enjoy reading, and like to use the Internet for finding great new reads, you may well have heard of Goodreads before: This is a superb website hosting a vibrant community of book lovers,...
Read More
.
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.
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.
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.
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.
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.
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.
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!
I'm supporting the Goodreads and Shelfari merger though I think that Amazon should deal with the migration themselves. Both sites belong to them and all they need is a DB Architect that knows both structures and could write the scripts that would migrate data from shelfari to goodreads.
But you know it is a big project and I don't know how shelfari works but I see you can add books without ISBN (which sometimes's great) that means that potentially there are books that might be at least duplicates. I think this is also a concern Amazon should have.
This merger is not only worth support. It simply makes sense. I guess it will need some adjustements in the near future.
Thank you for this guide! It helped me to import my books with succes from Shelfari to Goodreads!
112 books successfully imported.
This is still relevant and working in June 2015! Though Goodreads couldn't identify some of my book ISBNs. But anyway, bulk of my work is done. Thanks!
I did the changes, but when i try to import, it says "we are still processing this file import" but nothing happens after that. please help!
I realize I may be too late here, but hoping this is still alive:
I'm trying to follow the steps, but the very fist step fails for me when Shelfari gets stuck at "We’re creating a file that contains a list of your books." I never get the downloaded file in the first place. I'm wondering if anyone else has faced the same problem, and emerged a victor? Without that, I'm stuck with Shelfari forever :/
And also, thanks to Simon for such a comprehensive article. I hope to make good use of it :D
I hope he responds, I'm considering doing this as well. I wonder if tis too late.
I was able to successfully download my books from Shelfari yesterday. (It took a while, I have some 4000 books on Shelfari - I did this on a PC in Chrome.) I am working on making the changes and hope to upload to Goodreads today.
I've just migrated from Shelfrari to GoodReads using GR's import guide. I basically says export to csv from SF then import the file in GR. All books were imported but some fields weren't. Quoting import result:
"Your file contained 20 fields we didn’t recognize. We still added all the books we could find, but we couldn't include information in these columns:
editionid
edition author
publicationyear
note
datepurchased
purchaseprice
dateread
signed
loaned
loanedto
loaneddate
loanduedate
dateadded
private
favorites list
i plan to read list
wish list
i've read list
i own list
i'm reading list"
Goodreads and Shelfari name and organise their metadata differently. If you upload Shelfari's CSV without modification, Goodreads will recognise some fields and discard other.
Using the steps outlined above, you can put some of the data in a format that Goodreads understands. We're essentially mapping "Shelfari calls it X" to "Goodreads calls it Y".
Most of the data that Goodreads doesn't have an equivalent for and that we haven't covered in this guide (e.g. your 'loaned' books), you can add as a 'bookshelf' instead. You do this the same way we did for 'I plan to read' in step 3.1 and 3.2.
hi Simon, thanks for the article. I myself has created in Shelfari.com a large library that my friend owns (since I move to her house I want to keep track on the books that we have, which she never did) There are big amounts of books that Goodreads.com doesn't have, I wonder if this method works? Also since my purpose is to find a tool to keep track on the books - (not about what books I want to read,is reading,etc ,I already have a Goodreads account for that) , what do you recommend?
Hi Titanik,
I've never had any issue with the number of books Goodreads has. I moved a library of some 200-300 books and only had an issue with about five of them (Song of Ice and Fire #3 had transformed in a 'behind the scenes of SoIaF' kind of book).
Your mileage may very depending on the size of your library and the kind of books you read (e.g. Harry Potter VS obscure Romanian poetry). If you decide to go with Goodreads, just give it a shot. Worst case scenario the import fails, but your Shelfari library remains intact either way.
Both Shelfari and Goodreads work like a charm to catalog books. In my opinion, Goodreads wins out in the end because of the mobile apps, but go with the website you feel most comfortable with.
hi Simon, thanks for replying. I'm trying to migrate my book data now and is stuck with step 5. I don't know how to add the formula. Can you tell me,please?
Hi Titanik,
It might be easier to replace step 5 and 6 with what Roshan suggested in the top comment:
"using the menu option Format > Number > More formats > [first option in list] for changing the date formats in Google Spreadsheet"
Alternatively, just create a new column, paste the formula in the top cell (replacing the 'number' occurrences to point to your current date). Grab that cell and drag it down to apply the formula to below cells as well.
Thanks Simon!
I moved my books from shelfari to goodreads using your tutorial. Shelfari doesnt have any mobile app, hence.
Tip: I was able to skip steps 5 & 6 above by using the menu option Format > Number > More formats > [first option in list] for changing the date formats in Google Spreadsheet. Column titles still have to be changed as suggested above.
Cheers!
-Roshan
Thanks! That's the same reason I moved. :-)
Cool, thanks for the tip!