So I was thinking this morning… have I complained about Kindle formatting enough?
Last week I read this blog post about how companies like Smashwords, Apple, Lulu, and Amazon actually read forum/blog feedback from users, so authors should never badmouth these companies if they want to be featured on their sites. Well… Smashwords, Lulu, and Apple… I love you! Formatting my epub was a painless experience that took me 30 minutes, and uploading to your sites was just as easy!
Amazon? You. SUCK. It’s been three months of trial and error with this .mobi file, and I’m about to bash my head into my computer screen. Am I worried about not being featured on your site? No. Do you know why? Because even if a billion people saw my ebooks, they wouldn’t buy them BECAUSE THEY LOOK LIKE CRAP.
It took me 10 minutes to make my table of contents (TOC) for every other eReader on the market. Three months later, I’m still trying to figure it out for Kindle. I asked Amazon customer service about it and they sent me this:
3.3 Table of Contents Guidelines
Amazon strongly recommends the use of an HTML TOC for all books that would benefit from this navigation feature. This applies to most books, with the exception of fixed-layout children’s books (see section 4) and fixed-layout graphic novels/manga/comics (see section 5).
3.3.1 TOC Guideline #1: Logical TOC (NCX) Is Mandatory
The logical table of contents is very important for a good reading experience, because it allows a reader to navigate between chapters easily. All Kindle books should have both logical and HTML TOCs. Users expect to see an HTML TOC when paging through a book from the beginning, while the logical table of contents is an additional way for users to navigate books.
Logical tables of contents are generated using a navigational control file for XML application (NCX). Creating an NCX exposes the hierarchical structure of a Kindle book and allows the user to navigate through it.
In NCX-enabled books, users can see where they are in the book because the part, chapter, or section is exposed. This progress indicator also shows relative progress through the book.
Logical tables of contents are part of the IDPF 2.0 specification and are described at
<navMap> <navPoint id=”L1T” playOrder=”1″> <navLabel><text>AUTHOR’S NOTE</text></navLabel> <content src=”Sway_body.html#preface_1″ /> </navPoint> <navPoint id=”level1-book1″ playOrder=”2″> <navLabel><text>PART ONE</text></navLabel> <content src=”Sway_body.html#part_1″ /> <navPoint id=”level2-book1chap01″ playOrder=”3″> <navLabel><text>THE HOUSES, 1969</text></navLabel> <content src=”Sway_body.html#chapter_1″ /> </navPoint> <navPoint id=”level2-book1chap02″ playOrder=”4″> <navLabel><text>ROCK AND ROLL, 1962</text></navLabel> <content src=”Sway_body.html#chapter_2″ /> </navPoint> <navPoint id=”level2-book1chap03″ playOrder=”5″> <navLabel><text>THE EMPRESS, 1928–1947</text></navLabel> <content src=”Sway_body.html#chapter_3″ />
Kindle Publishing Guidelines Amazon.com 15Publishing on Kindle: Guidelines for Publishers
</navPoint> </navPoint> </navMap>
The NCX example above defines the following TOC hierarchy:
AUTHOR’S NOTE PART ONE
THE HOUSES, 1969 ROCK AND ROLL, 1962 THE EMPRESS, 1928–1947
This excerpt from the OPF (publication header file) shows how to add an NCX table of contents to a book. Declare the NCX in the “manifest”:
<manifest> <item id=”toc” media-type=”application/x-dtbncx+xml”
And use it in the “spine”:
3.3.2 TOC Guideline #2: HTML TOC Must Be Linked
Place an HTML page with a table of contents at the beginning of the book, so that users can easily jump to locations within it (typically to a chapter). The entries in the TOC must be HTML links so that users can click to go to a specific location. A table of contents that is not made of links is not useful on Kindle.
3.3.3 TOC Guideline #3: HTML TOC Must Be Referenced as a Guide Item
To enable the customer to jump to the TOC from the Kindle menu, the OPF file must reference the TOC from a TOC guide item.
Every Kindle device or application has a user interface element that allows the user to jump to the TOC guide item from anywhere in the book. Here is an example of a guide item for a TOC (underlined elements are mandatory):
<guide> <reference type=”toc” title=”Table of Contents” href=”toc.html”/> </guide>
3.3.4 TOC Guideline #4: No Tables in TOC
Do not create a TOC using HTML <table> tags. When the TOC includes HTML <table> tags, the links of the TOC become not clickable/ non-functional. Tables are for tabular data only, not for layout.
3.3.5 TOC Guideline #5: No Page Numbers in TOC
Do not use page numbers in the TOC. Kindle books do not always map directly to page numbers in physical editions of the book.
If you are importing the document from Word, use the “Heading” styles and the “Table of Contents” feature of Microsoft Word. The TOC created by Word will be imported correctly and will convert to a TOC that follows these guidelines.
3.3.6 TOC Guideline #6: Place the TOC at the Front of the Book
Place the HTML TOC towards the beginning of the book and not at the end of the book. This ensures that a customer paging through the book from the beginning encounters the TOC naturally. Inaccurate placement of the TOC affects the accuracy of the “Last Page Read” feature. Correct usage ensures that the TOC appears in the book’s sample.
Kindle Publishing Guidelines Amazon.com 16
Publishing on Kindle: Guidelines for Publishers
3.3.7 TOC Guideline #7: Include a TOC for Bundled Editions
For bundled editions containing more than one individual book, include an overarching TOC at the beginning of the file.
3.4 Guide Item Guidelines
3.4.1 Guide Item Guideline #1: Recommended Guide Items
The Kindle platform supports guide items for defining the cover, the table of contents (TOC), and the start reading location (”Go to Beginning”).
Amazon does not recommend adding additional guide items to the OPF file, because they will be grayed out in the menu options and may cause customer confusion.
IMPORTANT: Guide items, especially the TOC guide item, do not replace the table of contents.
If any of my readers knows what this means, email me at firstname.lastname@example.org. You will have $50 in your Paypal account if you can fix my three Kindle files by Monday. Seriously.