Migrating from other apps via CSV Import

If your current book app can export your library as a CSV file, you can bring everything into Book Tracker. This guide walks you through the whole process step by step, and then explains exactly how to format every single field so your titles, authors, dates, ratings, and reading history all arrive the way you expect.

You do not need to be technical to follow this. If a section looks too detailed for what you need, just skip to the parts that matter to you. The most important rule is simple: only the Title is required. Everything else is optional, so you can import as much or as little as you like.

This guide is about the Other import format, which lets you map any CSV file by hand. If you are coming from Goodreads, StoryGraph, Bookmory, Bookpedia, Delicious Library 3, Book Crawler, BookBuddy, or Reading List, Book Tracker has a dedicated importer for each one that already knows the columns. Use those when available, and use Other for everything else.

What you will need

  1. A CSV file exported from your old app.
  2. Book Tracker installed on your iPhone, iPad, or Mac.
  3. A few minutes to match your columns to Book Tracker fields.

A CSV file is just a spreadsheet saved as plain text. The first row holds the column names (for example Title, Author, ISBN), and every row below it is one book. You can open and edit a CSV in Numbers, Excel, Google Sheets, or any text editor.

Step 1: Export your library as a CSV file

Before importing, export your library from your current app:

  1. Open your current book app.
  2. Find the export function (usually under Settings, Tools, or a File menu).
  3. Choose the CSV format.
  4. Include any fields you want to keep (Title, Author, ISBN, Pages, dates, rating, and so on).
  5. Save the file somewhere you can reach it, such as Files, iCloud Drive, or your computer.

If your app cannot export to CSV, check its support pages for a workaround. Some apps export to other formats that a spreadsheet program can convert to CSV.

Step 2: Open the importer in Book Tracker

  1. Open Book Tracker.
  2. Go to Settings and tap Import.
  3. Tap File and pick your CSV file.
  4. Tap Import format and choose Other.

As soon as you choose Other, Book Tracker reads the header row of your file and shows you a list of book properties you can fill in. Each property starts empty with a “Select header” placeholder.

Step 3: Map your columns to Book Tracker fields

For each Book Tracker property, tap it and choose which column from your CSV should feed it. For example, you might map the Book Tracker property Title to your column called Book Name, and Authors to your column called Writer.

  • You do not have to map every property. Map only what you care about.
  • If one of your columns does not match anything, simply leave it unmapped and it will be ignored.
  • The Import button turns on once you have selected a file and mapped the Title.

When you are ready, you have two choices:

  • Preview lets you see the books that will be created before anything is saved. This is the safest way to check your formatting. Preview does not change your library.
  • Import writes the books into your library.

A good habit is to run Preview first, look at a few books, fix anything that looks off in your CSV, and only then run the full Import.

The three golden rules of formatting

Almost every formatting question comes down to these three rules. If you remember nothing else, remember these.

Rule 1: Use commas to separate columns

Save your file as a standard CSV where commas separate the columns. This is what almost every app and spreadsheet produces by default. Book Tracker also understands files that use semicolons to separate columns, but commas are the safe default.

Rule 2: Use a semicolon to list multiple values inside one cell

When a single field holds more than one value, for example two authors or three tags, separate those values with a semicolon ; inside that one cell.

Authors
Tolkien, J.R.R.; Lewis, C.S.

This rule applies to Authors, Translators, Narrators, Illustrators, Publishers, Categories, Tags, Formats, and Languages.

Rule 3: Wrap a cell in quotes if its text contains a comma

Because commas separate columns, any cell whose own text contains a comma must be wrapped in double quotes so it is not split by mistake. The good news is that spreadsheet apps do this automatically when you export, so you rarely need to think about it. If you edit the file by hand, keep it in mind:

"Tolkien, J.R.R.; Lewis, C.S."

Field by field reference

Below is every field you can map, what it is for, and exactly how to format it. Fields are grouped to make them easy to find.

The only required field

Title. This is the name of the book. If a row has no title, that row is skipped and reported as an error. Map this field, always.

Subtitle. Free text for the book subtitle.

Isbn13. The 13 digit ISBN. You can include dashes or spaces; Book Tracker keeps only the digits. Example: 978-0-261-10357-9.

Isbn10. The older 10 digit ISBN, same rules as above. Example: 0261103571.

Link. A web address for the book, stored as is.

ISBNs are worth the effort. When you provide an ISBN, Book Tracker looks the book up online and fills in missing details for you, such as the cover image, description, page count, publisher, and more. A clean ISBN often turns a bare row into a complete book.

People: Authors, Translators, Narrators, Illustrators

All four people fields follow the same flexible format. Separate multiple people with a semicolon ;. For each person, you can write the name in either of these two styles, and you can even mix them in the same file:

  • Surname, First name style, using a comma between the surname and the first name:
Tolkien, John Ronald Reuel; Lewis, Clive Staples
  • First name Last name style, with a normal space. The last word is treated as the surname:
J.R.R. Tolkien; C.S. Lewis

A few details that help:

  • If you write only one word for a person, it is stored as the surname.
  • In the Surname, First name style, the part before the comma is always the surname and the part after it is the first name. This is the most reliable style if you want full control.
  • Remember Rule 3: because the Surname, First name style contains a comma, the whole cell should be wrapped in quotes if you edit the file by hand.

Classification

Publishers. One or more publishers, separated by ;.

Place of publication. Free text for the city or place where the book was published. Example: London.

Categories. Genres or subjects, separated by ;. You may also separate categories with an ampersand &, which is handy for sources that write things like Fantasy & Adventure.

Tags. Your own labels, separated by ;. Imported tags get a default color, which you can change later in the app.

Series. The name of the series the book belongs to, as plain text. Example: The Lord of the Rings.

Number in the series. The position in the series, as plain text. Example: 1 or 2.5.

Pages. The page count, as a whole number. Example: 423.

Languages. One or more languages, separated by ;. You can use either the two letter language code or the language name. Examples: en, it, fr, or English, Italian, French. Values that are not recognized are skipped.

Formats

Formats describes the kind of edition. You can list more than one, separated by ;. Type one of the exact values from the table below. If a value is not recognized, the book falls back to your default format from Settings, so when in doubt you can leave this unmapped.

Your editionValue to put in the cell
PaperbackPAPERBACK
HardcoverHARDCOVER
Mass market paperbackMASS_MARKET_PAPERBACK
Spiral boundSPIRAL_BOUND
Leather boundLEATHER_BOUND
EbookEBOOK
AudiobookAUDIOBOOK
MagazineMAGAZINE
Comic bookCOMIC_BOOK
Graphic novelGRAPHIC_NOVEL
MangaMANGA
Box setBOX_SET
OmnibusOMNIBUS
Reference bookREFERENCE_BOOK
OtherOTHER

Example of two formats in one cell:

PAPERBACK; AUDIOBOOK

Section: where the book lives

Section decides whether a book goes on your shelf, your wishlist, or is marked as not owned. The most reliable values are:

MeaningValue to put in the cell
On my bookshelfBOOKSHELF
On my wishlistWISHLIST
Not ownedNOT_OWNED

For convenience, Book Tracker also accepts these friendly words, in any capitalization: library, bookshelf, or book shelf for the shelf, and wishlist or wish list for the wishlist. If the value is empty or not recognized, the book is placed on your bookshelf by default.

Ratings

Your rating. Your personal rating on a scale of 0 to 5. Use a number, with decimals allowed. Example: 4 or 4.5. A value of 0 or empty means no rating. If your old app used a scale of 0 to 10, divide by 2 before importing (so 9 becomes 4.5).

Average rating. A community or external average rating, also on a 0 to 5 scale. This is informational and is not your personal rating.

Dates and reading history

Dates are the area where most surprises happen, so this section is worth a careful read.

Release date. When this edition was published. See the date formats section below for accepted styles.

Release year. The publication year of this edition, as a whole number, when you only have the year and not a full date. Example: 1937.

Original release date. When the work was first ever published, which can differ from your edition. Uses the same date styles as Release date.

Original release year. The year the work was first ever published, as a whole number. Example: 1937.

Purchase date and Purchase price. If you map a price, Book Tracker tries to read both the amount and the currency from the text, so values like $12.99, 12,99 EUR, or 9.50 all work. If it cannot detect the currency, it uses your default currency from Settings. You can map the date, the price, or both.

Start reading date and End reading date. These two are special, because together they decide the reading status of the book. There is no separate reading status column to map in the Other format; the status is worked out from these dates:

What you provideResulting reading status
Both a start date and an end dateRead, with a reading session between those two dates
Only a start dateCurrently reading
Only an end dateRead, completed on that date
Neither dateNo reading session is recorded

So if you simply want a book marked as finished, map the End reading date to a column that holds the date you finished it. If you want it marked as currently reading, map only the Start reading date. If you want the full reading span, map both.

Cover image

You have two ways to give a book its cover:

Cover image URL and Thumbnail image URL. Map these to columns that hold web links to the cover artwork, and Book Tracker uses them directly.

If you do not provide an image link but you do provide an ISBN, Book Tracker tries to download a matching cover for you automatically. This is another reason to include ISBNs whenever you can.

Physical location

If you track where your books physically sit, you can map Location, Bookcase, and Shelf. These work as a nested set:

  • Map all three to record a full position (Location, then Bookcase, then Shelf).
  • Map Location and Bookcase to record a partial position.
  • Map Location alone to record just the room or place.

Mapping Shelf on its own, without Location and Bookcase, will not create a position, because a shelf needs the bookcase and location it belongs to.

Notes

Personal comment. Free text that is saved as a note attached to the book.

How dates are understood

Book Tracker recognizes many common date styles automatically. These all work:

  • 2024-05-17 and 2024/05/17 (year first)
  • 17.05.2024 and 17.05.24
  • May 17, 2024
  • Friday, May 17, 2024
  • Full timestamps such as 2024-05-17T09:30:00Z

There is one thing to watch for. A date like 03/06/2024 is ambiguous, because it could mean March 6 or June 3 depending on where you live. Book Tracker is smart about this: it scans all the dates in your file and looks for a clear clue, such as a day greater than 12, to figure out whether your file uses month first or day first, then applies that to the whole file consistently.

To avoid any doubt, the safest choice is to use the year first style YYYY-MM-DD (for example 2024-05-17) for every date in your file. It is never ambiguous.

Tips for the best results

  • Include ISBNs. They unlock automatic covers and fill in missing details from online sources.
  • Preview before you import. Check a handful of books, then fix and reimport if needed.
  • Watch for duplicates. The Other format does not detect books you already have, so importing the same file twice will create duplicate entries. Import each file once.
  • Keep dates consistent. Use YYYY-MM-DD across the whole file.
  • Clean your data first. Remove empty rows and obvious mistakes in your spreadsheet before exporting.
  • Back up your library. Make a backup in Book Tracker before a large import, just in case.

Need help?

If you run into trouble, the import result screen lists any rows that could not be imported, with the reason, so you can fix them in your CSV and try again. The most common reason is a missing Title.

You are always welcome to reach out through the Contact page if something is not working the way you expect.