CONTROL YOUR KINDLE BOOK FORMATTING

Simple Step-by-Step Instructions

Gayla Groom

©2015 Gayla Groom

Published by Gem's Press, gem@seethis.earth

INTRODUCTION
Get Oriented
STEP 0
Overview of What You'll Do in This Book
STEP 1
Assemble What You'll Need to Convert Your Book to Kindle
STEP 2
Create a New Folder on Your Computer
STEP 3
Assemble Your Book File
No Title Page? Create One
No Copyright Page? Create One
No Dedication Page? Create One
No Table of Contents? Create One
STEP 4
Assemble Your Graphics
STEP 5
Make Sure Your Graphics Are in Acceptable Formats
STEP 6
Consider Your Book Design
STEP 7
Identify Formatting Needed for Your Book
STEP 8
Learn a Bit of HTML
Basics of HTML Coding
Charts of HTML Formatting
STEP 9
Choose Your Path to Create HTML Code
PATH 9A
WITH THE ONLINE MS-WORD-TO-HTML CONVERTER: Convert Your Book Formatting to HTML
Prepare Your Book File for Conversion
Use Olly Cope's Online Converter
Turn Your Book into a Plain Text (.txt) File
Make Adjustments to Your Converted File
Page Breaks
Paragraphs
Special Line Breaks
Bold Text
Italic Text
Table of Contents
Symbols
Curly Quotes and Curly Apostrophes
Graphics
Captions
Centered Text and Graphics
Indented Blocks of Text
Headings and Subheadings
Lists
Tables
Links, Including Footnotes
Additional Formatting
Guide Items
Checklist
PATH 9B
WITHOUT ONLINE MS-WORD-TO-HTML CONVERTER: Create HTML Code to Format Your Book
Hand-Code HTML
Page Breaks
Paragraphs
Special Line Breaks
Bold Text
Italic Text
Table of Contents
Symbols
Curly Quotes and Curly Apostrophes
Graphics
Captions
Centered Text and Graphics
Indented Blocks of Text
Headings and Subheadings
Lists
Tables
Links, Including Footnotes
Turn Your Book into a Plain Text (.txt) File
Guide Items
Checklist
STEP 10
Turn Your Book into a .html File
Add HTML Language
Change Your File Type to .html
STEP 11
Download the Kindle Previewer
STEP 12
Preview Your Kindle Book
STEP 13
Troubleshoot Your Book
STEP 14
Assess and Correct Your Book
STEP 15
Optimize Graphics for Kindle
STEP 16
Add a Little CSS?
STEP 17
Enter Information on the Kindle KDP Site about Your Book
STEP 18
Create and/or Upload Your Book Cover
STEP 19
Upload Your Book
STEP 20
Preview Your Book Online
STEP 21
Choose Territory, List Price, and Royalty Percentage
STEP 22
Publish Your Book
STEP 23
Review and Make Any Changes
STEP 24
Buy a Copy of Your Book and Do Some Marketing
EXTRA INFORMATION
Supplemental Notes

Get Oriented

This guide will show you step-by-step how to create a Kindle book using the text editor of your choice. If your book has pictures, you may also need a graphics editor of your choice. You don't need an actual Kindle device. And you don't need any out-of-the-ordinary software. Through a series of simple steps, you will not only convert your book from MS Word (or whatever) to Kindle, you will also understand what you're doing, or at least have a serious clue, so that you have real control over your book.

I set out to turn my print books into Kindle books, but after many hours digging through Amazon.com's documentation, and a mostly fruitless search for useful third-party documentation, it became obvious I was going to have to figure out a sensible process for myself. Now that I've done that, and since I am experienced at writing instruction manuals, I've written up what I learned so you don't have to suffer.

Amazon's marketing language says they offer an "easy self-publishing system for the Amazon Kindle. Upload your content, enter sales copy and pricing information, and publish in minutes." That's a nice thought, but I have seen many people driven to distraction and failure on Kindle "community support" forums, begging someone to help them escape from a nightmare that Amazon said was going to be a walk in the park.

Messages regarding formatting questions: 18,670? And most of them are unanswered. I like Amazon a lot, but their documentation has problems. (Here's a link to Amazon's Kindle Help FAQs, should you ever feel inclined.)

Converting your book to Kindle doesn't have to be that hard. There is a better way.

What if your book is in Microsoft Word? I suggest that, instead of using Amazon's instructions, you follow the steps in this book in order to convert your MS Word document into a Kindle book. (Here's why you should avoid Amazon's instructions for Word documents.) (Here's a summary of Amazon's instructions for Word documents.)

What if your book is in a format other than Microsoft Word? I suggest that you follow the steps in this book in order to convert your book into a Kindle book. (Here's info about other options.)

Fixed layouts. The Kindle is based on reflowable text. Fixed page layouts, such as a children's picture book or a graphic novel, are a very different concept, and this guide does not show you how to do them. Fixed layouts work on only some devices. If your book requires a fixed layout, see Amazon's Kindle Publishing Guidelines, sections 4 and 5.

Overview of What You'll Do in This Book

The steps in this book are designed to take you through the Kindle conversion process in a deliberate order. If you skip around and do the steps out of order, you are guaranteed to get unexpected results.

This is just an overview. Step-by-step instructions will be provided in a minute.

  • Following the steps in this book, you'll create a folder and put a .doc file into it containing your entire book.

  • You will also put into the folder any graphics (except the cover) used in your book. If the graphics are not appropriate file types, you'll use your graphics editor to convert them (for instance, save a .tif as a .jpg).

  • Since HTML (HyperText Markup Language) is the key to communicating with the Kindle processor — and thus controlling the Kindle process — you will need to learn a few HTML tags. It is not hard. Once you know a little HTML, you are in control of your book's Kindle destiny. You can deal with problems or weirdnesses that come up — because you have actual control over what's going on.

  • You will format the contents of your .doc file using HTML code (the computer language Kindle uses, also the language of the web). If your book is an MS Word file, you will paste the contents into Oliver Cope's online Word to clean HTML converter, which should do a lot of the coding work for you. For finishing touches — or if your book file is not an MS Word file — you will do HTML coding "by hand".

  • You'll make a few simple changes to turn your .doc file into a .html file.

  • You will download the Kindle previewer from Amazon, and open your .html file with it. Your book will automatically be processed and presented for previewing. You can see how it will look on various Kindle-supported devices. Then you'll correct any problems by editing your .html file (which your text editor will be made to display as code), and re-process/re-preview.

  • You will learn how to optimize any graphics that the Kindle previewer did not convert to your satisfaction.

  • You will finish formatting your book file using simple CSS code if needed.

  • You'll make corrections/changes, and re-process/re-preview, until your book looks great.

  • When your book is ready for publication, you will zip your folder containing your .html file and your graphics and upload it to Amazon.

  • You will also learn how to create a quick book cover, or optimize the one you already have.

  • You will learn, too, how to fairly painlessly shepherd your book through Amazon's Kindle Direct Publishing (KDP) process and into the Kindle store.

Assemble What You'll Need to Convert Your Book to Kindle

Text editing software. You'll need a text editor, one that lets you deal with a book-length document and lets you "Find and Replace". It also needs to let you open a .html page as Plain Text (.txt). (If you're not sure, see how text editors open .html as code.)

If your book is already in Microsoft Word, or can easily be got there, that is excellent.

Whatever text editor your book is currently in is probably fine. An old standby is the Mac's built-in TextEdit. (With newer versions you may have to fiddle with TextEdit preferences in order to get Plain Text files, and to get it to "ignore rich text commands in .html files"). Or you can download various free to cheap text editors from the internet. You can also use a code editor, such as Dreamweaver, if you know how.

Graphics editing software. If your book has pictures in it, you will probably need a graphics editing program that will let you resize files and save them as JPEGs or GIFs. I use Photoshop or Preview on the Mac; you may already have your own favorite, or there are free to cheap graphics editors for both PC and Mac.

A free Kindle Direct Publishing account. You can sign up on the "Kindle Direct Publishing" home page. If you like, you can see Amazon's instructions for how to create an account, although it's simple. You can also see their video about the KDP process (which is notable for completely skipping the part where you get your processed book file back from Amazon and try to figure out how to make corrections to it).

To fully activate your KDP account — so you can publish your book, and receive royalties — you'll need your social security number (or employer ID number), and information to authorize direct deposit to the bank account where you want book proceeds to go (or you can opt to be paid by check). You can wait until you're ready to publish to add this information.

A digital version of your book. Your book is probably already a digital file, most likely a .doc file. However, if you have only a print version, you're going to need to digitize it, whether by typing it into a word-processing program, or by scanning it using OCR (optical character recognition) software, which is usually included in scanner software.

Create a New Folder on Your Computer

Create a new folder to contain your Kindle book. You can call this folder anything you like, but we'll refer to it as Your Book Folder. This is where the text and graphics of your book will reside (and nothing else). When your book is ready to be Kindled, you will send this zipped folder to Amazon to publish.

Assemble Your Book File

If your entire book is already in one text file, put that file into Your Book Folder (keep a back-up copy). The file should ideally be in .doc format, not .docx or .rtf. If needed, your text editor can convert it to .doc using the "Save As" command.

If your entire book is not already all in one file, use your text editor to combine the various pieces of your book into one document (copy and paste works fine). Put the resulting .doc file in Your Book Folder.

If there are already graphics in your file, fine. If not, don't bother inserting any at this point.

Note: If your book is currently a PDF or InDesign file, click to explore choices for getting your PDF or InDesign file into some semblance of a .doc format.

The file name needs to show the file extension — for instance, Your Book.doc — not just the file name. You can probably find a checkbox to turn on the extension in your text editor's "Save" or "Save As" dialogs. In MS Word, check the box to Append File Extension, and under Format choose any .doc extension.

If your book file already has a Title page, Copyright page, and/or Dedication page, make sure those are in their correct locations — the Title page at the very beginning of your book, followed by the Copyright page and Dedication page. If you don't have those pages, we'll show you how to create them soon. (The Dedication Page is optional.)

If your book already has a Table of Contents, make sure it comes next in your document, and make sure it has the title "Table of Contents" (no quotation marks). (The pages listed in the above paragraph don't need titles.) Delete the page number references and any leaders. You want to end up with just the title "Table of Contents" and a list of chapter titles.

Exception: If MS Word auto-generated your Table of Contents, don't delete any of it for the moment.

If your book has a Preface, Prologue, or Introduction (in the front), or a Bibliography, Glossary, Appendices, or similar (in the back) (indexes are not supported), include those in their correct locations. Make sure the Introduction, Bibliography, etc., pages each have a title identifying them.

If your book has footnotes or endnotes that were not inserted using MS Word's footnote tool, you should place all the footnote or endnote contents at the end of your main text. It will be a new page; title it "Footnotes" or "Endnotes".

Go ahead and follow the instructions below to create a Title page, Copyright page, and (optional) Dedication page, if you don't already have them.

With your book all in one file, it's a great time to:

  • Spell-check and grammar-check your book file.
  • Make a backup copy of your book file.

No Title Page? Create One

If your book doesn't already start with a Title page, create one by typing, at the very beginning of your book file, the name of your book. (Don't type the words "Title page".) If your book has a subtitle, put it on its own line. Then, on another line, type the author's name. You can center text, or make it bold or italic, but don't worry about other formatting for now.

No Copyright Page? Create One

If your book doesn't already have a Copyright page, create one after the Title page. (Don't type the words "Copyright page".) You can insert a page break with your text editor so this is a new page. If you want to make some text centered or bold or italic, that's fine, but don't worry about other formatting for now.

You can look at various books to see ways the copyright page is done. Basically, you need the copyright symbol, or the word "copyright", followed by the name of the copyright holder and the year of publication.

Your copyright page should also show the ISBN (International Standard Book Number) if your book has one, but you don't need one for a Kindle book. If you already have published a printed copy of your book, you should not use that ISBN for your Kindle Book.

The Copyright page often contains a sentence or paragraph telling people not to reproduce the book without your okay (or giving them permission to do so), and a disclaimer saying that whatever the problem is, it's not your fault. The publisher's name and address is usually here, as are credits for other people involved in the making of the book (such as cover designer), and sometimes the sources of text or graphics you are using by permission, and acknowledgment of trademarks.

No Dedication Page? Create One

(Optional) If you're dedicating your book to someone or something, type your dedication after the Copyright page. (Don't type the title "Dedication".) You can insert a page break with your text editor so this is a new page. If you want your dedication text to be centered or bold or italic, go ahead and do it. Don't worry about other formatting.

No Table of Contents? Create One

A Table of Contents is an expected part of every Kindle book. If your book currently does not have one, you need to create it. And if your book currently does not have chapter titles, you need to create them, even if just to say "Chapter One", "Chapter Two"... (a real waste of marketing potential — your chapters should have great names. Potential purchasers who preview your Kindle book online or who get a free sample will be seeing your Table of Contents!).

After the Dedication page (or after the Copyright page if you don't have a dedication), you can insert a page break with your text editor so this is a new page. Type the words "Table of Contents" (no quotation marks). Below that, list the chapters, each on a separate line, using bold or italics if you like. Don't put in any page numbers. Don't worry if the titles are so long they wrap to the next line.

If your Table of Contents has, or should have, multiple levels to show headings and subheadings, just go ahead and type those one per line for now, without worrying about indentation levels. If they already have indentation levels, that's fine.

Later, you'll link the Table of Contents to the locations of your chapters, which means a reader can just click on the Table of Contents to go to a particular chapter, making it much easier to find his or her way around your book.

Assemble Your Graphics

  • If your book doesn't have graphics (other than the cover), skip to Step 6.

  • If your book has graphics, put the graphics files (except for the cover) into Your Book Folder. Use your best-quality versions, whatever the file type (.tif, .psd, .jpg, whatever); you'll convert them to Kindle-friendly file types in Step 5. Use color versions if you have them. Make sure that there are no spaces in any of the names of the graphics files.

  • If your graphics are already inserted into your MS Word book file, and you don't know where the originals are, you can use "Save as Picture" (right-click on picture in MS Word) to save each picture as an image file, saving the files into Your Book Folder. Save the graphics as JPEGs (except save line art as GIFs). Be sure the "hide extension" checkbox (at the bottom of the "Save" dialogue window) is not checked; you want to be able to see the file extension. After you've exported the graphics, you can leave them showing in your Word file. (Click for non-preferred alternative.)

  • If graphics are already inserted into your MS Word book file, but you have better-quality versions elsewhere, use the better-quality ones — put them in Your Book Folder.

  • If your book is currently a PDF or InDesign file, click to explore choices for extracting the pictures from your PDF or InDesign file.

Note: Supposedly Amazon wants graphics files to be less than 256K in size, but in practice files quite a bit larger than that seem to work fine. But if you have a lot of big graphics files, you should reduce their size in order to avoid giving Kindle excessively large files to process. See Step 15, "Changing your file size," for more info.

Note: Your file size actually can affect your royalty amount (see Step 21)! But the Kindle processor converts your graphics to a size pleasing to it anyway, so that, for instance, a 50MB file you upload (maximum allowed size) turns into a 30MB file after the Kindle processor is through with it.

Make Sure Your Graphics Are in Acceptable File Formats

We're talking about the graphics in Your Book Folder. If file extensions (such as .tif or .jpg) are not showing up in the names of your graphics, they should be. Somewhere there's a place to turn them on and off. Your graphic editor's Preferences pane is a likely spot. Here's how Photoshop does it:

Preview for Mac, on the other hand, has a "Hide extension" checkbox in the "Save" and "Export" dialogs.

Although Amazon says Kindle will accept .gif, .bmp, .jpeg or .jpg, non-transparent .png, and .svg images, it is generally wise to take their advice to make your graphics into either .jpeg/.jpg or .gif format.

If your file types are not acceptable, you will need to use your graphics program (or a file converter) to convert them into acceptable file types. (You can't just type a different file extension.) Usually, with a graphics editor it's a choice under the File menu: "Save As" or "Save for Web" or "Export". A window will come up with a pop-up menu of format choices.

Also, if you have photos that are .gif (photos should be .jpg), or if you have line art that's .jpg (line art should be .gif), change them here. Amazon defines line art as "graphics drawn with a limited number of solid colors", such as in Illustrator, Paint, or Power Point, and graphics of text, charts, and tables. If your line art is in .jpg or .jpeg format instead of .gif, Kindle processing will supposedly blur the sharp edges, although my experience has been that most line art tends to look fine whatever. You'll learn how to optimize line art (if you need to) in Step 15.

Once you're done converting your graphics files to Kindle-friendly file types, move any graphics files with wrong file extensions out of the folder. The only graphics that should be in Your Book Folder are graphics of acceptable file types — preferably .jpegs/.jpgs or .gifs — that are going to be used in your Kindle book.

Consider Your Book Design

Think about how readers will experience your Kindle book. Whereas print, online, and PDF pages can have multiple columns and fancy layout, you will save yourself serious aggravation by remembering that your Kindle book may be seen on any of several different Kindle models — as well as on iPhones, iPads, and other devices, and on the free Kindle-reading software Amazon makes available for both Macs and PC.

You basically have a scrolling one-column screen to fill with your book.

Amazon rightly says you need to forget about any fancy layouts or absolute placements of elements and keep your book to one column. If your book has sidebars, you will need some other way of signifying the sidebar text — perhaps italic or bold type, or use graphics that let the reader know a sidebar is beginning, and ending. And you'll need to figure out where sidebars go — at the end of a section? in between certain paragraphs? as an optional link, like a footnote? — because having them appear at the side, looking good on the whole range of Kindle devices — is not going to happen.

Be sure to treat your book elements consistently and clearly so your reader has an easy time finding his or her way around. For instance, don't sometimes center headings and sometimes not.

Since the reader of your Kindle book can choose to see it at a variety of different sizes, and since it can be seen on various devices with various sizes of screens, any page number references in your book (such as "see p. 72") are useless and will need to be turned into links, which you will learn how to do in this book.

Amazon will choose the font for your main text — it will be Georgia or PMN Caecilia depending on the device. Amazon says that the main font of your book needs to be free of any kind of added formatting — don't try to make it a certain font or a certain size or all italic or all bold, for instance. (Amazon needs to be able to control it so as to create a good reading experience, and your code could battle with theirs.)

You will be able to specify fonts (from a limited selection) for elements other than the main text — you might want your headings, indented blocks of text, sidebar text, and/or pull quotes to be in a sans-serif font, for instance — but the font change may not show up on some devices. With the same limitations, you can use different fonts for different types of text, such as headings, indented blocks of text, sidebar text, or pull quotes.

Since your ability to format text as different font families is limited, consider creating graphic elements that use a nice font you couldn't otherwise get, as I did with the "Step" headings in this book.

On some Kindle devices, Amazon automatically makes the first line of each paragraph indented, so if you want no first-line indentation or a different amount of indentation, you will be able to find out how to do that using CSS in Step 16.

Increasingly, Kindle devices display color, so consider adding color as an element of your design. For graphics, make sure that the color will also look good in grayscale on other devices. The graphics I use to preface each step in this book are royal blue so they look nice on color devices, while also looking fine as a dark gray when viewed on other devices. Text on non-color devices will display as black, not grayscale, so you can use a lightish color font in your book without worrying it will look pale gray in non-color devices (although you must be sure the color is not so light as to affect legibility when displayed in color).

Identify Formatting Needed for Your Book

If your book is an MS Word document, this book will show you how to use Oliver Cope's online "Word to Clean HTML Converter" to automatically do most of the HTML coding needed in order to format your book. In some cases, you may need to make some changes to the code that Olly's converter creates. Also, you might need to do some coding yourself if your book calls for types of formatting that the converter doesn't handle.

If you don't use Olly's converter, you'll do all the format coding yourself.

In both cases, detailed instructions are included in this book. Just keep reading.

Here are the kinds of formatting that need to be specified in code, so you have an idea what to expect:

  • Page breaks
  • Paragraphs
  • Special line breaks
  • Bold text
  • Italic text
  • Symbols
  • Graphics
  • Captions
  • Curly quotation marks and apostrophes
  • Centered text and graphics
  • Indented text blocks
  • Page titles
  • Headings and subheadings
  • Lists
  • Tables
  • Links
  • Footnotes
  • Subscripts and superscripts
  • Different font faces
  • Different font sizes
  • Colored text
  • Indented first lines of paragraphs
  • Drop caps

Learn a Bit of HTML

You probably won't need to know much HTML (Hypertext Markup Language) to convert your Kindle book, but knowing even a little will be very useful. Everything you need to do in order to convert your book formatting for Kindle can be done using HTML or its adjunct, CSS. HTML is the simple code used to format web pages, and it is also a "universal language" that Kindle and other devices understand.

You may or may not choose to also use CSS (Cascading Style Sheets), an enhancement to HTML that allows you to specify a particular format one time and then just "call" for it at the spots in the text where you need it instead of specifying the formatting each time.

If your book has a lot of repetitive formatting — for instance, headers that are in an alternative font, size, and color — you might consider using CSS for those elements. CSS is a lot like the "styles" function in MS Word — in fact, if your book uses MS Word paragraph and/or character styles, some of that formatting can be converted, or re-created, with CSS. These styles are very useful if you want to be able to make sweeping changes to your book very easily — to experiment with headings changed from bold to italic throughout, for instance.

Another reason to use CSS is that it is the only sane way of obtaining certain formatting, such as drop caps.

Since everyone using this book will be using HTML, at least to a small extent, and relatively few readers will be using CSS, instructions for CSS are reserved for later. If you think you'll be using CSS to format certain elements (such as headers), you can skip the upcoming instructions for formatting those elements using HTML. If you go ahead and format certain elements using HTML and then later decide to use CSS, you can just delete the relevant HTML code you wrote.

Why use HTML (which can include CSS) to format your book? Because Kindle is happiest when you talk to it in HTML. If you don't, when Kindle processes your book, it turns whatever you gave it into HTML to the best of its ability and processes that — and then displays that for you as a preview of your book. The preview will show you things you want or need to change about your book — typos, code that didn't work the way you wanted, weird line breaks, etc. The simplest, most effective way to make any changes is, again, to communicate directly with Kindle using HTML.

Basics of HTML Coding

We will go through the basics of HTML as they apply to the Kindle, but be aware that if you ever want more HTML information, w3schools.com has a great free website.

HTML code is typed directly into your book document, but you won't see any results until the document is processed by Kindle. In other words, typing <strong>very much</strong> in your book document is not going to make the words "very much" display in bold until Kindle processes your book document.

HTML code is typed inside of symbols < and >, found on your keyboard as "less than" and "greater than" signs. (If you want to display actual "less than" or "greater than" signs in your text, see Symbols.) On most keyboards, you type < by using the shift key with the comma, and to get > you type shift plus the period.

HTML code does not need to be in any special font. This book shows it in a different font (at least on some Kindle displays) in order to help you differentiate it as code, but it could be in the same font as your book text, no problem.

When the Kindle processor-previewer sees < it starts treating your document's text as code, and it continues to do so until it encounters >, at which point it treats your text as actual book text again.

You can imagine how confused the processor gets if you forget to tell it when the code stops — and it tries to process your book text as if it were code. It may spit out a string of error messages that may lead you seriously astray. So it's very important that whenever you type a < to start the code, you remember to type a corresponding > to end the code.

For most HTML commands, you put a begin tag and an end tag around the text you want to be affected. For instance, the begin bold tag is <strong> and the end bold tag is </strong>. When a slash is used in HTML code, it is the forward slash / (usually on keyboards as the unshifted question mark key).

If you forget to type the slash in the ending tag, if you forget a < or >, or if you make a typo with the code, you will not get the results you hoped for! So be scrupulous about typing clean code, and things will go much more easily. What you don't foul up in the first place does not have to later be hunted down and fixed.

Don't worry if your text editor breaks the code across lines in odd ways, such as:

Do not add any spaces or paragraph returns to try to make the code look better!

Most HTML tags surround text (which will be affected by the tags), but some do not, such as the tag to make a horizontal rule (line). In that case, a single tag starts and ends the code, within one set of braces: <hr />. There's a space before the ending slash. Other tags that don't surround text include <img /> (used to insert an image) and <br /> (used to insert a line break).

When nesting multiple tags together, such as making text bold and italic, keep the order of the tags consistent. In the example below, the start-bold tag <strong> comes first, followed by the start-italic tag <em> (meaning emphasis). Since the italic begins inside the bold, it needs to end inside the bold also. It might help to think of it like this: [ (  ) ] .

When nesting tags, it may or may not matter which one goes first or which ones goes next. For instance, it doesn't matter if bold or italic goes first.

But it does matter if your font tag is before or after (inside or outside of ) your paragraph tag (it should be inside). The common sense of the system will probably become apparent to you after a while, and even if not, as long as you follow the instructions and examples in this book, all should be well.

Charts of HTML Formatting

The following charts give you an idea of how various kinds of formatting can be specified using HTML or CSS. This is just an overview; we'll deal with these step-by-step. It is common for style characteristics to not work consistently across the range of Kindle devices, so you should plan on your sans-serif headers sometimes not displaying as sans-serif, for instance.

Formatting with HTML

Occurs in document at spot formatting is needed. Usually affected text is surrounded by begin and end tags < > and </>.
<big>Wow!</big>

Formatting with CSS

Using "internal" CSS stylesheet (shown in this book), create style definitions (to apply to elements or spans) between <style> and </style> tags in .html document <head> section. Can specify style classes in stylesheet and then "call" for them in document at spot where formatting is needed.
p.alert {color: red;}
<p class="alert">I want everything in this paragraph to be red.</p>

"Inline" CSS style characteristic(s) can be specified on a one-by-one basis in the text, without having to create a style definition in your document <head>. For instance, maybe you want just one or a few paragraphs in your book right-aligned. You could specify the alignment, using CSS attributes, inside HTML tags around the relevant paragraphs.
<p style="text-align:right">I want this paragraph to be right-aligned.</p>



Page breaks <mbp:pagebreak /> (special Kindle code)
Paragraphs HTML <p>text</p>
<p align="justify">I want this paragraph justified.</p>
Paragraphs CSS

You can create style definitions to format paragraphs.
p.sans-serif {color: blue; font-size: 14px; text-align: center; font-family: Arial;}
<p class="sans-serif">This paragraph will be blue text, 14 pixels, centered, Arial.</p>

Line breaks To be used sparingly for special occasions, such as to break lines of poetry.
<br />


Headings and subheadings HTML <h1>The Pacific Northwest</h1>
<h2>The Oregon Coast</h2>
Headings and subheadings CSS

Style definitions can be used to format headings and subheadings.
h1 {color: orange;}
<h1>This heading will show up orange in my book.</h1>



Bold HTML <strong>text</strong>
Bold CSS Can be specified in a style definition:
h1 {font-weight: bold;}
Makes all 1st-level headings bold.
Italic HTML <em>text</em>
Italic CSS Can be specified in a style definition:
h2 {font-style: italic;}
Makes all 2nd-level headings italic.


Center (horizontally) HTML

<div align="center">text</div>
OR
<p align="center">text</p>

Or instead of text, you can center an image:
<p align="center"><img src="imagename.gif"></p>

Center (horizontally) CSS

Can be specified in a style definition:
p {text-align: center;}
Centers the contents of all paragraphs that are surrounded by <p> and </p> (which would be all your default paragraphs, i.e., most your book). Amazon will override this.

To center only some paragraphs:
p.centered {text-align: center;}
Centers the contents of all paragraphs that are surrounded by <p class="centered"> and </p>.

To center all images:
img {display: block; margin-left: auto; margin-right: auto;}

To center only some images:
img.centered {display: block; margin-left: auto; margin-right: auto;}
Then, in your document, for the images you want centered:
<img class="centered" src="nameofyourgraphic.jpg" />



Bold, italic, and centered HTML

<p align="center"><strong><em>text</em></strong></p>
OR
<div align="center"><strong><em>text</em></strong></div>
OR
<h1 align="center"><em>text</em></h1>

Bold, italic, and centered CSS Can be specified in a style definition:

h3 {text-align: center;
font-weight: bold;
font-style: italic;}

Makes all 3rd-level headings centered, bold, and italic.


Symbols For instance, &copy; to get ©, &#233; to get é. See webmonkey for list.
Subscripts and superscripts <sub>text</sub>
<sup>text</sup>


Bulleted lists <ul> <li>text</li> </ul>
Numbered lists <ol> <li>text</li> </ol>
Tables <table> <tr> <td>text</td> </tr> </table>


Links <a href="http://www.spot.com"> text</a>

Link to spot within same document:
<a href="#george">click here to go to George</a>
Anchors <a name="george">George</a>
Footnotes At the footnote location in the text:
<a href="#fn1" name="fnref1"><sup>1</sup></a>

At the location of the footnote contents:
<a href="#fnref1" name="fn1">1</a> K.D. Kirby and C.J. Mardon, "Solid Phase Fermentation".


Insert graphics <img src="imagename.jpg" />


Indented text blocks HTML <blockquote>text</blockquote>
Indented text blocks CSS

Style definitions can be used to format the <blockquote> tag:
blockquote {margin-left: auto; margin-right: auto; width: 6em;}
Then, in your document, for the text blocks you want indented:
<blockquote>This paragraph will be a centered block of text (individual lines will not be centered), 6 ems (96 pixels) wide.</blockquote>

You can also define and apply a class for special indents for specific blocks of text:
p.quotation {padding-left: 10%; display: block; color: blue;}
Then, in your document, for the text blocks you want indented:
<p class="quotation">This paragraph will be a block of text indented 20px from the left margin.</p>

Indented first lines of paragraphs CSS

Can be specified in a style definition:
p {text-indent: 15%;}
For all paragraphs (unless overridden by another style), indents first line.

p {text-indent: 0;}
For all paragraphs (unless overridden by another style), no first-line indent.

Odd indentations HTML

&nbsp;
Inserts a nonbreaking space.



Different font faces HTML <font face="helvetica">text</font>
Different font faces CSS

Can be specified inline:
<p style="font-family: verdana">I want this paragraph to be in Verdana.</p>

Can be specified in a style definition:
p.sans {font-family: Verdana, Geneva, sans-serif;}
For all paragraphs that are surrounded by <p class="sans"> and </p>, makes text Verdana; if that's not available makes text Geneva; if that's not available, makes text any sans-serif font.

.sans {font-family: Verdana, Geneva, sans-serif;}
For all text that is surrounded by <span class="sans"> and </span> (does not have to be an entire paragraph), makes text Verdana; if that's not available makes text Geneva; if that's not available, makes text any sans-serif font.


Different font sizes HTML

<small>text</small>
<big>text</big>
<big><big>text</big></big>
<font size="140%">text</font>
<font size="2em">text</font>
<font size="32px">text</font>

Different font sizes CSS

Can be specified inline:
<p style="font-size:20px">I want this paragraph to be in type that's 20 pixels high.</p>

Can be specified in a style definition:
p.mysmalltype {font-size: .8em;}
For all paragraphs that are surrounded by <p class="mysmalltype"> and </p>, makes font size .8 em (1 em is 16 pixels).

.ridiculouslybig {font-size: 300%;}
For all text that is surrounded by <span class="ridiculouslybig"> and </span>, makes text 300% size of main font.



Colored text HTML <font color="red">text</font>
<font color="#ff0000">text</font>
Colored text CSS

Can be specified inline:
<p style="color: purple">I want the text in this paragraph to be purple.</p>

Can be specified in a style definition:
.green {color: green;}
For all text that is surrounded by <span class="green"> and </span>, makes text green.



Styles with multiple specifications CSS

Can be specified in a style definition:
.style1 {text-align: center;
font-size: 200%;
font-weight: bold;
font-style: italic;
color: orange;}

Applies specified formatting to all text surrounded by <span class="style1"> and </span>.

Drop caps CSS

Can be specified in a style definition:
span.dropcaps {float: left; font-size: 3em; margin-bottom: -0.3em; margin-top: -0.3em;}
Creates drop cap from text character surrounded by <span class="dropcaps"> and </span>.

Appendices 11.1 and 11.2 of the Amazon Kindle Publishing Guidelines provide Amazon's list of HTML and CSS commands supported for various Kindles, but you don't have to look at it if you don't want to. We are going to keep things simple.

HTML was designed for the web, and just because it can perform some feat on the web doesn't mean the code will work on Kindle. For instance, many web pages are built using an HTML table structure for page layout, which is not acceptable on Kindle.

Don't use curly quotation marks for code. HTML code frequently uses quotation marks, for example: <font color="red">Stop!</font>. Use straight quotation marks, not curly ("smart") quotation marks, for HTML code. If your text editor is set to use curly ("smart") quotation marks instead of straight ones, reset it to use straight quotation marks.

To turn curly quotes off in MS Word, go to Preferences/Autocorrect/AutoFormat as You Type. Uncheck the radio button that says '"Straight quotation marks" with "smart quotation marks".

The change will affect only quotation marks you type from here on out, not the curly ones that are already in your document.

Choose Your Path

You're now ready to create the HTML code to format your Kindle book.

According to its website, Oliver Cope's free online MS-Word-to-HTML converter is a "free converter tool for documents produced by Microsoft Word and similar office software" which "strips out invalid or proprietry tags, leaving clean HTML behind for use in web pages and ebooks."

  • If you want to use Oliver Cope's free online MS-Word-to-HTML converter, go to Path 9A. This could save you a lot of work and is the best option if your book is an MS Word .doc file. (Note: Even if your book is not an original MS Word .doc file — for instance, it's a .rtf — you still may want to follow Path 9A. However, if the converter succeeds in processing your file, it may work only partially. For instance, paragraph tags might get inserted, curly quotes and other symbols might get coded, but maybe no bold or centering or headings tags are inserted. Thus, using Olly's converter can make your life easier in that some HTML code will automatically get written for you, but it can make life more complicated in that you will need to be aware of where the converter failed you, and be proactive to cover those bases.)

    Choose Path 9A.

  • Path 9B is the path to choose if you don't want to, or can't, use Olly Cope's online Word to HTML converter. This might be, for instance, because you tried to use Olly's converter on Path 9A above but it refused to process your file (which is especially likely if your book is not a good solid MS Word file). Path 9B teaches you to do the needed HTML coding yourself. Together with the HTML basics we saw in Step 8, Path 9B serves as a good overall primer for how to format your book using HTML.

    Choose Path 9B.

Whichever path you choose, we'll all meet back up again in Step 10 to continue converting to Kindle.

WITH THE ONLINE MS-WORD-TO-HTML CONVERTER: Convert Your Book Formatting to HTML

This path is for you if you want to use Oliver Cope's free online MS-Word-to-HTML converter.

(Otherwise, use Path 9B.)

You're going to prepare your book file for optimum conversion into HTML, then run it through Olly Cope's converter. You'll then make a few adjustments to the converted file so Kindle will like it. Then, if you still need more formatting, you'll code that "by hand".

Make sure you have a backup copy of your book file.

Prepare Your Book File for Conversion

Before converting your book (.doc) file to HTML, you'll go through the file and optimize it for use with Olly's online converter, so that as much high-quality HTML code gets produced for as much of the formatting as possible.

Page breaks. Use MS Word's "Insert" menu to insert a page break at every part of your book that needs to start on a fresh page of its own — for instance, your Copyright page, Dedication page, Table of Contents, the first page of every chapter....

Do not insert page breaks within your text to try to control page layout! Kindle needs to be able to re-flow your text depending on which device it's being seen on and which size the reader chooses to view it at. Only insert page breaks at places where they logically belong.

Paragraphs. Turn on MS Word's "show formatting" function. It's found on the Standard toolbar and looks like a paragraph symbol (backwards "P").

Go through your book and look at the paragraphs.

Every paragraph needs to end with a paragraph symbol. The below paragraph looks fine. It is followed by a blue paragraph symbol.

The following paragraph has a problem. There's a blue paragraph symbol midway through the paragraph.

It is not okay to have paragraph symbols inside of paragraphs — this might happen if you had used the "return" key to break lines instead of letting the text editor break them automatically. If you are in the habit of using the "return" key, your paragraph might even look like this:

You need to delete any paragraph marks that are inside of paragraphs. To delete a paragraph mark, just select it and press the "delete" key on your keyboard. You may also need to insert a space between the words it was dividing. (If you have a ton of this kind of problem in your document, you can devise a shortcut for fixing it using "Find and Replace".)

It's okay if you have a blank line between your paragraphs, which shows up with a paragraph symbol on it. Olly's converter will remove those "empty paragraphs".

It's also okay if you have a ton of extra blank lines that you inserted to try to get MS Word to do the page layout you wanted.

But it is not okay if any of the blank lines in your document have formatting attached to them, such as bold or italic or centering, since that will create extra blank lines in your Kindle book. In the picture below, the "bold" symbol on MS Word's Formatting toolbar is showing as in use — meaning that at least one of the selected blank lines has bold formatting applied.

Delete any blank lines that have bold, italic, centering, or other formatting assigned to them.

Bold and/or italic text. Any text you want to be displayed bold in your Kindle book should be displayed bold in your MS Word document. If all instances that you want to be bold are not already displayed in bold in your MS Word document, use MS Word's Formatting toolbar (or your favorite method) to make them bold.

Any text you want to be displayed italic in your Kindle book should be displayed italic in your MS Word document. If all instances that you want to be italic are not already displayed in italic in your MS Word document, use MS Word's Formatting toolbar (or your favorite method) to make them italic.

If text should be both bold and italic, display both qualities in your MS Word document.

Centered text and graphics. It's good if text and graphics that you want to be centered in your Kindle book are centered in your MS Word document. Use MS Word's Formatting toolbar (or your favorite method) to center any that need it.

Headings and subheadings. Your book may be complicated and have headings, subheadings, sub-subheadings, etc. Or it may be simple and have headings only for a few pages — for instance: your Table of Contents and the beginning of each chapter (Chapter One, Chapter Two...).

If you have not already done so, you can assign MS Word header styles to your headings and subheadings. This way, Olly's converter will automatically mark them as headings when it converts them to HTML, retaining the hierarchy of heading, subheading, sub-subheading as you specify. I suggest assigning "heading 1" to page and chapter titles, "heading 2" to headings within your book, "heading 3" to the next level of (sub)heading, and so on.

For your Title Page, you could assign "heading 1" to your title, "heading 2" to your subtitle, and "heading 3" to the author's name.

Below is an example of applying headings in MS Word using the style pop-up menu located in Word's Formatting toolbar. The headings available in your copy of MS Word may look different, but it doesn't matter. Olly's converter will only notice the fact that the headings exist and their hierarchical relationships with one another — no formatting will be retained.

Lists. If you haven't already done so, use MS Word's Formatting toolbar to specify any bulleted lists.

You may also want to specify your numbered lists as bulleted lists, since Olly's converter converts only bulleted lists; in that case, you'll learn how to add the number info after conversion.

Tables. If parts of your book file should appear in table form in your finished Kindle book, it's a good idea to create those tables in MS Word, using the "Tables" menu.

If your book uses a picture of tabular information, be aware that this often will not look acceptable when scaled for Kindle — so you may want to go ahead and create the information as an actual table in MS Word now. Or you can always create a table using HTML later.

Links. If certain text in your book should link to websites, use MS Word's "Insert/Hyperlinks" function to hook those up. Click on the text you want the reader to click on, then choose the "Insert" menu and select "Hyperlinks". Type the website URL in the "Link to" box, then click OK.

If certain text in your book should contain a link to another part of your book, select a word or two at the spot you want the link to go to, and specify it as a bookmark, using "Insert/Bookmarks". Then select the text you want the reader to click on, choose the "Insert" menu, and select "Hyperlinks". Type the name you gave the bookmark into the "Anchor" box (MS Word will then automatically fill in the "Link to" box), and click OK.

Footnotes. If your book has footnotes or endnotes, they should be inserted using MS Word's "Insert/Footnote" function for best results.

Use Olly Cope's Online Converter

Now that you've optimized your book file, it's time to automatically convert it into HTML code, using Olly Cope's online MS-Word-to-HTML converter at http://word2cleanhtml.com.

Check the three checkboxes that are by default unchecked: "Replace non-ascii with HTML entities"; "Replace smart quotes with ascii equivalents"; and "Indent with tabs, not spaces" — all six checkboxes should be checked.

Exception: If your book uses curly quotation marks and you want to keep those, do not check the "Replace smart quotes with ascii equivalents" box.

Select and copy the contents of your MS Word book file (including any graphics) and paste into the window of Olly's converter. Then click the "convert to clean html" button.

The window should change to show that conversion has successfully taken place.

If the converter is unable to convert your text, it is probably because your text is not enough like an MS Word file. You'll want to switch over to Path 9B.

Converter Notes: If for whatever reason you want to try the conversion again, my experience has been that when using the converter multiple times in a row, it is best to avoid using the "Start again" link at lower left of the results window. Instead, just type in the converter URL anew to reload the site. Sometimes clicking twice in the text window, or reloading the page, will wake up a sleepy converter.

If the converter works for you, consider sending Olly Cope a financial token of your appreciation, as suggested at the bottom of the results window. He has saved you quite a lot of work.

Turn Your Book into a Plain Text (.txt) File

Copy the contents of the converter's results window ("Clean HTML" tab) by clicking the "Copy HTML to clipboard" link (at right beneath the results window). Do not select and copy the window contents any other way, or you will not be happy with what you get!

When you click the "Copy HTML to clipboard" link, you'll be presented with a window like this:

Press control-C (or command-C on a Mac) to copy.

Using your text editor, create a new document. Use control-V (command-C on a Mac) to paste in the new text that you copied from Olly's converter.

Use "Save As" to save your new document as a Plain Text (.txt) file, in Your Book Folder. Call it the name of your book or whatever you like.

This is your new book file. Close it and then re-open it, choosing "Plain Text" when you're presented with various options for how to open it.

Note: After you "Save As" your book file as Plain Text (.txt) some formatting will initially still be showing in your document. Once you close the file and re-open it (as Plain Text), you should be seeing a true Plain Text version of your file. (If you have your .txt file open, and Word shows anything other than "Plain Text" as the current style, you should close the file and re-open it.)

Close your old .doc book file and remove it from Your Book folder, putting it anywhere else that makes you happy, and leaving the new .txt file in Your Book Folder.

Note: If it turns out that this first conversion is less than perfect, and you want to go back and make some changes to your MS Word .doc and try Olly's converter again (or multiple times), go ahead. Just make any changes in the old Word.doc file, paste the contents of the .doc file into the converter, and then save Olly's results in your new .txt file.

Otherwise, you should ignore the .doc file from here on out (unless you use it for reference), and deal only with this new .txt file you've created.

Make Adjustments to Your Converted File

Your new .txt file will have a lot of HTML code mixed in among your text. (It may also have strange indentations and generally look weird; don't worry about it. Only the HTML code will control the formatting, and those results won't appear until after processing.)

Go through your .txt file and make any needed adjustments to the code, as shown below. In most cases, no adjustments will be needed. But for some kinds of formatting, Olly's converter code may need a little help from you. In other cases, the converter may not have been able to convert your desired formatting, and you'll learn how to do that yourself.

Don't use Word's formatting tools in your .txt file. All formatting from here on out is done with HTML code.

You may notice that the converter has added some <div> and </div> tags. Just leave those alone.

Any MS Word page headers or footers you had in your document will now be at the bottom of your file. You should delete those.

Save your file as you make changes. Do not "Save as", just "Save".

Variations are possible in the results the converter gives, depending on which Word version you used, which formatting capabilities you used, how consistently and correctly you used them, etc. Below are the most common formatting types converted by Olly's converter, and notes re adjustments you might need or want to make.

You can always go to Path 9B for more information. The "More info" links in the paragraphs below take you to the expanded information on each type of formatting in Path 9B.

Page Breaks

The converter inserts the tag <br clear="ALL"/> for page breaks. You need to "Find and Replace" it, changing it to Kindle's preferred page break tag <mbp:pagebreak />. More info.

Paragraphs

The converter has inserted the begin and paragraph tags <p> and </p> around each paragraph, saving you a lot of work. More info.

Special Line Breaks

The Kindle automatically wraps your text from line to line unless you tell it not to on specific lines. This ability should be used very sparingly so that your Kindle book will be a flowing experience for your readers no matter which text size or device they're using.

An appropriate use of a line break would be in a poem, where you would put a break code <br /> at the end of each line. (Note that the break code does not surround any text, so it begins and ends inside one set of braces. There is a space before the ending slash.)

The converter may have inserted a few <br />tags in your document as it saw fit. You might want to double-check to see if you agree with the converter's choice of special line break locations. More info.

Bold Text

The converter puts begin and end bold tags <strong> and </strong> around bold text. (The tags <b> and </b>would also be acceptable.) More info.

Italic Text

The converter puts begin and end italic tags <em> and </em> around italic text (for "emphasis"). (The tags <i> and </i>would also be acceptable.) More info.

Table of Contents

Most likely the converter has surrounded the lines of your Table of Contents with paragraph tags. Whatever the converter has done to your Table of Contents, just let it be until you see how the Kindle previewer interprets it. (Amazon may prefer that you surround the lines of your Table of Contents with <div> and </div> tags rather than <p> and </p> tags.)

Exception: If your Table of Contents requires multiple levels of indentation (to reflect headings and subheadings), follow the instructions here.

Note: If your Table of Contents had been automatically assembled by MS Word, Olly's converter will probably put in the HTML code to "name" the chapter title, headings, and subheadings, which will save you having to do that part later when linking your Table of Contents. But the converter puts in numbers for the names, so can be tedious to deal with.

More info.

Symbols

Olly's converter does a great job of converting troublesome symbol characters into code symbols (character entities) that Kindle can understand (assuming you clicked the "Replace non-ascii with HTML entities" before conversion, as suggested). For instance, instead of seeing the trademark symbol "™" in your book file, you would see the code "&#8482;", which Kindle much prefers. If your book file had curly quotes, Olly's converter has changed them into symbol codes so you can avoid choking the Kindle previewer in the future.

A few things may get converted into symbol codes that you would prefer not; just keep an eye open. You can easily take a tour of symbol codes in your document by searching for all the ampersands (&). More info.

Curly Quotes and Curly Apostrophes

If you checked the converter's checkbox "Replace smart quotes with ascii equivalents" as suggested, the converter has replaced your curly quotation marks (whether double or single, including apostrophes) with straight ones. If instead you chose to keep your curly quotes (leaving that checkbox unselected), the converter has replaced them all with their symbol codes so they will show up properly. (This was done via the "Replace non-ascii with HTML entities" checkbox.) The Kindle processor hates curly quotation marks, and if they aren't turned into symbol code, you could have a hard time getting your book processed. More info.

Graphics

Graphics that were in your Word document. The converter has put the begin and end image tag <img /> in every location where a graphic was in your Word book file.

(Note that the <img /> tag does not surround any text and thus begins and ends in the same set of braces.)

Although the converter places the <img /> tags, it does not include the correct name of each graphic; you need to do that. Your graphic files should already be located in Your Book Folder. At each spot where a graphic was inserted in your book file, the converter will have written something like:

<img src="file:///Users/George/ Library/Caches/TemporaryItems/msoclip/0clip_image002.png" alt="smart-old-horse.jpg" height="326" width="481"/>

The "alt" tag in the code above tells you the actual file name of the graphic. (If there is no "alt" tag, you'll just have to figure out which graphic it is via context.)

You need to replace the img src specification (everything inside the quotation marks) with the name of the actual graphic file that should be at that spot, like this:

<img src="smart-old-horse.jpg" height="326" width="481"/>

Notice that the converter also plugs in the height and width of each of your graphics, so make sure you're putting the right graphic name in the right <img /> code, or your graphics will be stretched funny (and located in the wrong spots). More info.

Graphics that were not in your Word document. Some of your book's graphics may not have been inserted into your Word file, and therefore the converter knew nothing about them, and thus created no <img /> tags for them.

So you need to type the <img /> tags for those graphics, in the locations in your book file where you would like those graphics to be. (Remember, all your graphic files are located in Your Book Folder.) It is best to place each image code on a new line by itself, between paragraphs, for instance after one of the many end paragraph tags </p> that Ollie's converter has created for you.

You should follow the format below. (You don't have to insert image height and width information as was done in the examples above.)

<img src="cute-pup-guatemala.jpg" />

Captions

If your document has captions to accompany graphics, any bold, italic, or centered formatting they had was probably coded by the converter. The conversion may or may not have left the caption near the graphic it applies to.

Your caption should have some kind of difference from the text so the reader knows it's obviously a caption — for instance, a smaller, italic font. Amazon suggests you put your captions after each graphic so the reader sees the graphic first and then the caption. I like doing that, and then I add a horizontal rule <hr /> after the caption to separate the graphic and caption from the main text.

<p align="center"><img src="cute-pup.jpg" /><br />
<i><small>
"Who you calling cute?"</small></i></p>
<hr width="40%" />

"Who you calling cute?"

When you get to Step 16, you could use CSS code to define a style class with the characteristics you want your captions to have, which you apply at each caption spot.

More info.

Centered Text and Graphics

The converter surrounds every piece of centered text or graphic with begin and end paragraph tags; the begin tag specifies center alignment: <p align="center"> </p>

If you added any <img /> tags (for graphics the converter didn't know about), and if you want those graphics to be centered, you can format them by adding the paragraph tags, like this:

<p align="center"><img src="cute-pup-guatemala.jpg" /></p>

Note: Depending on how your graphic was positioned in MS Word, the converter may sometimes consider it to be part of a text paragraph, rather than in its own independent paragraph. This would remove your ability to control the centering of the graphic independent from the centering of the paragraph, so you may want to fix any instances like this. You can wait until you preview your Kindle book, and if any graphics are not centering properly, or if paragraphs of text are centering along with the graphics, you could check to make sure graphics are in their own paragraph, with center align code as above.

More info.

Indented Blocks of Text

The converter does not do a great job of recognizing indented blocks of text and tagging them with <blockquote>. You may need to go through your document and put <blockquote> at the beginning of each instance of indented text block, and </blockquote> at the end. More info.

Headings and Subheadings

If you assigned headings and subheading styles in MS Word (that the converter can recognize as such), the converter inserts appropriate begin and end header tags for the level of the heading or subheading: <h1> and </h1>for the largest/top level, then <h2>, and so forth down to <h6> if needed.

Depending on how confusing your Word file was, you may find that the converter has put heading tags around several lines, when you only wanted one line.

<h2>
&copy; 2014 Gayla Groom
Table of Contents
</h2>

You can correct your code to reflect more what you probably wanted:

&copy; 2014 Gayla Groom
<h2>Table of Contents</h2>

If your headings still lack formatting you want — such as red text — you can create CSS style definitions (as shown in Step 16) to assign formatting to the various heading levels. And you can then easily change that formatting unilaterally should you later decide you want your <h1> headings to be, for instance, green or larger or centered. More info.

Lists

The converter does a good job recognizing bulleted lists and converting them to HTML. If your bulleted lists were converted, each list will begin with <ul> (for "unordered list") and end with </ul>. Each line to be bulleted should be surrounded by <li> (for "list item") and </li>. (HTML will automatically fill in the bullet characters when it processes your file.)

The converter does not do a good job recognizing numbered lists. The HTML code for numbered lists should look just like the code for bulleted lists, except beginning with <ol> (for "ordered list") and ending with </ol>. (HTML will automatically fill in the list item numbers when it processes your file.)

But it's likely that the converter has surrounded your numbered lists (and maybe some of your bulleted lists) with paragraph tags <p> </p> and you are going to have to go turn them into proper HTML lists yourself. But it's not hard.

This code…

<ul>
<li>Apples</li>
<li>Oranges</li>
<li>Bananas</li>
<li>Pears</li>
</ul>

… gives you:

  • Apples
  • Oranges
  • Bananas
  • Pears

This code…

<ol>
<li>Apples</li>
<li>Oranges</li>
<li>Bananas</li>
<li>Pears</li>
</ol>

… gives you:

  1. Apples
  2. Oranges
  3. Bananas
  4. Pears

Note: Be aware that the converter may have converted your book file's bullet symbol into the ascii equivalent character entity &#183; — if so, delete those. (HTML lists create their own bullets.)

The converter may have temporarily lost its senses and given you something like this:

<li>
<strong>T</strong>
<strong>he</strong>
<strong>Civil</strong>
<strong>Rig</strong>
<strong>hts</strong>
<strong>m</strong>
<strong>ov</strong>
<strong>e</strong>
<strong>me</strong>
<strong>nt</strong>
(early/mid 1950s-mid/late 1960s or early 1970s). </li>

You could fix the problem like this:

<li>
<strong>The Civil Rights Movement</strong> (early/mid 1950s-mid/late 1960s or early 1970s). </li>

More info.

Tables

If you had any MS Word tables in your book document, the converter has probably done a great job of turning those into HTML for you.

But if the tables are wide or long, they may not preview well on the small screens of some Kindle devices. If you find that to be the case after previewing your Kindle book (coming up), you may want to split the tables up into smaller tables. You could do this in your book file before using Olly's converter, or after conversion using HTML. This will also help tables that seem to forget that they're tables if they go on for more than a couple of screens. More info.

Links, Including Footnotes

The converter does a good job of converting links that have been inserted into your Word document, into HTML. This includes internal (anchor) links, including footnotes. However, you need to do some coding to finish hooking up any footnotes that are in your book.

Footnotes. If you had footnotes set up in MS Word, you'll find tags inserted at appropriate spots throughout the document (where your footnotes are referenced), and you'll find your footnotes' contents at the end of your converted book file.

The converter does most of what's needed to turn the footnote into a double-ended link — when the reader clicks on the footnote number in the text, he or she will be taken to the appropriate footnote content. But then when the reader tries to return to where he or she was reading in the text, the current code takes him or her always back to footnote 1's location. This is easy to change.

The code that the converter inserted in the text at the spot where the footnote is referenced looks something like this:

<a href="#_ftn1" name="_ftnref" title="">[1]</a>

For each occurrence, add a number after "_ftnref" to agree with the number that's shown after "_ftn". In other words, the second term within quotation marks needs to end in the same number as the first term.

The code for footnote 1 should be like this:

<a href="#_ftn1" name="_ftnref1" title="">[1]</a>.

The code for footnote 2 would look like this:

<a href="#_ftn2" name="_ftnref2" title="">[1]</a>.

If you don't want the footnote number to be in brackets, delete those.

<a href="#_ftn2" name="_ftnref2" title="">1</a>.

If you want the footnote number to be raised, add the begin and end superscript tags <sup> and </sup> around each number.

<a href="#_ftn1" name="_ftnref1" title=""><sup>1</sup></a>.

Once you've changed all the code in the text at footnote locations, go to the bottom of your document where the footnotes' contents are. The code that the converter inserted there looks like this (just ignore the <div> tags):

<a href="#_ftnref" name="_ftn1" title="">[1]</a>

For each occurrence, add a number after "_ftnref" to agree with the number that's shown after "_ftn". In other words, the first term within quotation marks needs to end in the same number as the second term.

The code for footnote 1 would look like this:

<a href="#_ftnref1" name="_ftn1" title="">[1]</a>

The code for footnote 2 would look like this:

<a href="#_ftnref2" name="_ftn2" title="">[1]</a>

If you don't want the footnote number to be in braces, delete those.

<a href="#_ftnref2" name="_ftn2" title="">1</a>

Now the reader will be able to click to read your footnote, and click again to return to his/her reading spot in the text.

More info.

Additional Formatting

If all your document's formatting needs have not been addressed at this point, don't worry. Many kinds of formatting can only be accomplished using CSS (Step 16), and some cannot be accomplished at all (how liberating). At any rate, if you just keep going through this guide step by step, you will achieve the best results possible.

Remember, if your document was not a bona fide MS Word document, you may have only gotten some of the formatting converted that we discussed above. If you still need some more formatting done in HTML, or need help with existing HTML formatting, this would be a good time to switch over to Path 9B to check out the in-depth HTML instructions for people who did not use the converter. (Just ignore the instructions in 9B that tell you to save your file as Plain Text .txt, since you've already done that.)

Guide Items

According to Amazon, the Table of Contents and the beginning of your book (the spot where the reader should start reading) need to be identified so that the person reading can go to them at any time using Kindle menus.

To make this happen, you are told to use the begin and end <div> </div> tags with a specification for "id". (You're giving the division an ID to be known by.)

"toc" guide item. The id for your Table of Contents needs to be "toc":

<div id="toc"><h1>Table of Contents</h1></div>

It also works to assign the name "toc" to the Table of Contents, instead of using <div>.

<a name="toc"><h1>Table of Contents</h1></a>

Now Kindle users will be able to easily find your Table of Contents.

"start" guide item. My experience with using the "start" code to mark the beginning of a book is that it does not work, and actually makes things worse. (For instance, despite your best intentions, your start point may be in the middle of your Table of Contents instead of the beginning of Chapter One.) And so I suggest you leave the "start" guide item out. These kinds of things tend to magically be okay when your book is ready for the Kindle store. And the worst thing that could happen is that when a reader chooses to "go to" the beginning of your book, they'll go to the very beginning — your Title page — instead of the first chapter.

But, FYI, here's an example of implementing the "start" guide item:

<div id="start"><h1>Chapter 1</h1></div>

Checklist

You're almost ready to submit your book file to Kindle for processing.

Since all or most of your code was written by Olly's converter, you're less likely to have errors than if you had hand-coded your HTML. So you may want to just go ahead and process your file without checking your code first, and see what happens. If you want to check your code first — or if your Kindle conversion crashes and burns and you need to know what's wrong — here's a handy checklist, below. To skip the checklist and move forward, go to Step 10.

Although Kindle processing can survive some pretty serious coding errors, there are some little mistakes that can stop it in its tracks. Here is a troubleshooting checklist of some common coding mistakes:

Quotation marks. Missing or misplaced quotation marks inside of code cause an amazing amount of trouble. Search for quotation marks in code; make sure they're not curly, and make sure that each instance has matched sets: a beginning quotation mark and an ending quotation mark, as in this example:

Missing tags. Make sure that code has its beginning tag and its ending tag.

  • Search for <p> (or <p if your file uses code like <p align="center">) and make sure each one has an ending </p>.
  • Search for <a which will bring up all the <a href> and the <a name> tags. Make sure each one has an ending </a>.
  • Search for <b> or <strong> and make sure each one has an ending </b> or </strong>.
  • Search for <i> or <em> and make sure each one has an ending </i> or </em>.
  • If you have any bulleted lists, search for <ul>, and make sure each one has its ending </ul>.
  • If you have any numbered lists, search for <ol>, and make sure each one has its ending </ol>.
  • If you have any lists, search for <li> and make sure every one has its ending </li>.
  • If you have indented blocks of text, search for <blockquote> and make sure each one has its ending </blockquote>.
  • Search for <img and make sure each instance has a closing space and slash like: <img src="mypicture.jpg" />.
  • Search for <br and make sure each instance has a closing space and slash like: <br />.
  • If you used any heading codes, make sure every instance of <h1> (or whichever heading levels you use) has its closing </h1> (or whatever).
  • Search for < and make sure each one has an ending >. It is easy to accidentally type ? instead of >.

Invalid nesting: When you have multiple tags nested, make sure you close them in the right order. If Tag A starts inside Tag B, it should also end inside Tag B.

<a name="wings"><em>Dragon Wings Extraordinaire</em></a>

Although it doesn't seem absolutely necessary, Amazon says it wants anchor tags (<a name> or <a href>) to be located outside of formatting (such as <em>).

Once you're finished coding your HTML, skip to Step 10.

WITHOUT THE ONLINE MS-WORD-TO-HTML CONVERTER: Create Your HTML Code

Hand-Code HTML

If you don't want to or can't use Oliver Cope's online MS-Word-to-HTML converter, for whatever reason, this path is for you. (To use Olly's converter, follow Path 9A.)

Together with the HTML basics we saw in Step 8, this Path 9B serves as a good overall reference for how to format your Kindle book using HTML.

Note: This Path 9B may also be for you even if you did use the online converter and thus much of your HTML code has already been written for you. If you used the converter and you're happy with your situation, skip ahead to Step 10. If you used the converter but you want more information on formatting with HTML, this current Path 9B will help you.

Page Breaks

Kindle will automatically wrap your text from page to page, depending on the viewing size the reader has selected on his or her Kindle. But sometimes you need to tell the text to stop flowing and instead start a new "page" (screen) — for instance, a new chapter, or the Introduction, Table of Contents, Appendix, etc.

Everywhere you want a new page to begin, use Kindle's preferred page break tag:

<mbp:pagebreak />

Paragraphs

Your book needs to have begin and end paragraph tags <p> and </p> around every paragraph.

That's a lot of paragraph tags to type or paste in. I have looked at tons of automatic adders of paragraph tags, but they all have perils I do not want to expose you to.

You could think of hand-coding paragraph tags as a chance to go over your book carefully.

It's also possible to use the "Find and Replace" function in MS Word (and presumably in other text editors) to make the process fairly painless. For instance, search for formatting — a paragraph return (or two paragraph returns if you have blank lines between paragraphs) — and replace it with </p><p> — that's the ending paragraph tag followed by the beginning tag. The reason I'm copying and pasting like this is because these two tags should appear next to each other in between paragraphs — and it's something I can use "Find and Replace" for. (Searching for a begin tag followed by an end tag <p> </p> would find nothing.) To finish, add a <p> at the beginning of the very first paragraph and a </p> at the end of the very last paragraph.

It is very important that every beginning <p> tag have its ending </p> tag, so be careful and you'll save yourself some trouble.

Paragraph tags surround paragraphs, but they do not need to surround headings, subheadings, lists, items in your Table of Contents, images, etc. When in doubt, go ahead and put paragraph tags around whatever it is. It's unlikely to hurt anything much — you should get a blank line above and below whatever you put the tags around — and you can always change it later.

If you really really don't want to add <p> and </p> tags by hand, you can use an online converter to do it for you. This can be an okay choice if your book has essentially no formatting — because you will lose it. If you're going this route, do it before any code gets added to your book file, and be prepared to lose all formatting that is showing in your book. Save your file in MS Word as Plain Text (.txt), make sure you have a blank line between your paragraphs, and feed it through the Text to HTML converter at, for instance, Textfixer.com.

Special Line Breaks

Kindle automatically wraps your text from line to line unless you tell it not to on specific lines. You never or rarely tell it where to break a line, and thus your Kindle book will be a flowing experience for your readers no matter which text size or device they're using.

If you need to control where a line ends, as in a poem, type a break code <br /> at the end of each line. (Note that the break code does not surround any text, so it begins and ends inside one set of braces < >. There is a space before the ending slash.)

<p> Look on the bright side<br />
It could always be worse.<br />
You could be enchanted<br />
as a talking horse. </p>

Another use for the break tag, for example, is to put a break at the end of each line on your Copyright page that you don't want to wrap.

&copy; 2014 Gayla Groom<br />
Cover Design by Molly Michelle Smith<br />
Published by World-Class Books<br />

Bold Text

Type the begin and end bold tags <strong> and </strong> around all your book text that should be in bold. (You can use alternate tags for begin and end bold if you prefer: <b> and </b>.)

Exception: There is no need to put bold tags around text that is part of a heading, such as a page title or chapter title, since those will automatically be bolded when you designate them as headings (coming right up).

It doesn't matter whether the text is currently displayed in bold or not.

You can see that my text editor has split the code funny, but it doesn't matter.

If bold text continues from one paragraph to another, it's best to begin and end code separately for each paragraph. If an HTML bold tag continues across a blank line or from one paragraph to one another, it can irritate the code processor.

MS Word will let you search for formatting (using "Find and Replace"), making it easy to find all your bold (or italic or whatever). Leave the font face unselected, and all bold in whatever font will be found.

Italic Text

Everything that should be italic, surround with <em> and </em> (for "emphasis") to begin and end the italic. It doesn't matter whether the text is displayed in italic or not. You can use alternate tags for begin and end italic if you prefer: <i> and </i>.

As with bold text, it's best not to continue the italic across a blank line or into a new paragraph. Instead, code the italic in each paragraph separately.

What if you want bold and italic applied to the same text? Both these ways work:


And of course, the <strong> and <em>tags would work similarly.

Table of Contents

If your Table of Contents is simple (without multiple levels of indentations), just surround each line with the begin and end division tags <div> and </div>.

<div>Chapter One</div>
<div>Chapter Two</div>

Multi-level Table of Contents. If your Table of Contents has multiple levels (for headings and subheadings), requiring multiple levels of indentation, use the following instructions. Note: The indentation levels will not show up on all Kindle devices.

For a multi-level Table of Contents, surround each Table of Contents entry with the begin and end division tags <div> and </div>.

Then, for entries that are not top-level, add code to indent them, by typing style="margin-left:" (include the quotation marks) like this:

Now, after each colon, fill in the amount to indent. One em is equal to 16 pixels. Notice that in the example below, the heading (second level) gets indented 1em, and the subheading (third level) gets indented 2em. You can use decimals, also, such as 1.2em or .8em.

Wow, it really looks like you know what you're doing!

Symbols

You can be proactive and use symbol codes (character entities) in place of symbols (including accented letters), and probably save yourself some problems. For instance, I'm pretty sure from past experience that em dashes in my book — this comment is surrounded by em dashes — have a good chance of displaying incorrectly.

I'm going to go ahead and practice defensive formatting by replacing all the em dashes in my book with the appropriate "character entity" code — which will show up as the symbol when processed by Kindle.

I go to a site like Webmonkey and consult its list of special characters (ISO Latin Alphabet No. 1). I see from the chart (of which a section is shown below) that I can choose between two ways of specifying an em dash: &mdash; or &#151;. So I go through my book file using "Find and Replace" to change all occurrences of — with &mdash; .


Symbol codes start with an ampersand (&) and end with a semicolon (;). So if you have actual ampersands in your text, it's a good idea to replace them with the symbol code &amp; just to stave off problems — but be careful not to accidentally replace the ampersands in any symbol codes you've put in (such as &mdash;).

If you're on a Mac, it's good to replace three periods (...) in your book with the character entity for the ellipsis (…), a fancy name for three periods. The advantage of replacing the three periods with &#8230; is that the line will not break between the three dots in the ellipsis. In my experience, the ellipsis code kills the PC version of the Kindle processor.

Amazon says it supports all the symbols shown on the Webmonkey list, except for spades, clubs, hearts, up-arrow, down-arrow, alpha, beta, and gamma. Amazon provides an online list of symbols they accept, but I think Webmonkey's list is perhaps more accurate and easier to use.

Curly Quotes and Curly Apostrophes

The Kindle processor hates curly quotation marks, and if they aren't turned into symbol code, you could have a hard time getting your book processed. The PC version of the Kindle previewer is especially touchy. In my experience, if you have a curly apostrophe in your book, the PC previewer will choke and die. So you will want to give some serious attention to replacing any curly apostrophes or quotation marks with their symbol code instead.

If you don't replace curly quotes with their symbol codes, the previewer may give you something like this:

Decorative but not really what you had in mind.

The simple solution is to ditch the curly quotes: use your text editor's "Find and Replace" function to replace all your curly quotation marks with straight quotation marks.

But if you want to keep your curly quotation marks, use "Find and Replace" to:

  • Replace curly left double quotes with &ldquo;

  • Replace curly right double quotes with &rdquo;

  • Replace curly left single quotes with &lsquo;

  • Replace curly right single quotes (includes apostrophes) with &rsquo;

Be careful not to accidentally replace quotation marks inside of code with the symbol code.

Graphics

Insert code in your file to place your graphics. At each location in your book text where you want a graphic to appear, type, on its own line (not as part of a paragraph), the code <img src="" /> (that's a pair of double quotation marks followed by a space and a /). (Since the <img> tag doesn't surround anything, the begin code and end slash are together, as you saw earlier with the break <br /> tag.) This tag means "image source".

In between the two quotation marks, put the file name of the graphic that belongs at that place. Remember, the graphic files are in Your Book Folder. You don't need to specify any folder location, just the graphic's file name.

Remember, you won't see the results of your coding until you preview your document later in the Kindle previewer.

You may or may not eventually need to use your graphics editor to do some work on your images. You will know more after processing and previewing your book, coming up soon. The Kindle processor will convert your graphics as it in its wisdom deems best, and frequently the results are pretty good.

Captions

Your caption should have some kind of difference from the text so the reader knows it's obviously a caption — for instance, a smaller, italic font. Amazon suggests you put your captions after each graphic so the reader sees the graphic first and then the caption. I like doing that, and then I add a horizontal rule <hr /> after the caption to separate the graphic and caption from the main text.

<p align="center"><img src="pushpak.jpg" /><br />
<i><small>
The Pushpak Aircraft</small></i></p>
<hr width="40%" />


The Pushpak Aircraft


When you get to Step 16, you could use CSS code to define a style class with the characteristics you want your captions to have, which you apply at each caption spot.

Centered Text and Graphics

You have choices for how to center text and graphics in your document — depending on how much and what type of centering your book uses.

If you need to center only a few random pieces of text, or only a few graphics, it's easy to just surround them with the begin and end tags <div align="center"> and </div>. For example:

<div align="center"><p>Everything should be made as simple as possible but not simpler. — attributed to Albert Einstein</p></div>
<div align="center"><img src="pup.jpg" /></div>

You can also insert center align code directly into paragraph tags surrounding text or images.

<p align="center">Text to be centered goes here.</p>
<p align="center"><img src="pup.jpg" /></p>

A more efficient way to center a large number of items — for instance, if a ton of graphics or headings need to be centered — is to use some simple CSS. This method has the further advantage of letting you easily choose to un-center all your centered objects should you later change your mind. The basic idea is you create a style to be applied to all (or certain classes of) images, or paragraphs, or whatever, which specifies centering. A disadvantage is that it's less likely to work on all Kindle devices. We'll look at CSS in Step 16.

You may also get centering results using the old (and denigrated) tags <center> and </center>.

Indented Blocks of Text

Surround indented blocks of text, such as long quotes, with begin and end blockquote tags <blockquote> and </blockquote>.

<blockquote>I once had a sparrow alight upon my shoulder for a moment, while I was hoeing in a village garden, and I felt that I was more distinguished by that circumstance that I should have been by any epaulet I could have worn. — Henry David Thoreau </blockquote>

Most devices will display the blockquote text indented on the left (after Kindle processing), but not indented on the right.

Headings and Subheadings

Any part of your book that starts on a new page and has a title — your book's Title Page, your Table of Contents, Introduction, each Chapter, Bibliography, Appendices, etc. — should have its title tagged as a heading.

<mbp:pagebreak />
<h1>Introduction</h1>
<p>I hope you like this book.</p>
<mbp:pagebreak />
<h1>Chapter One</h1>

Additionally, if your book itself has headings ("Section 4" or "Animals"), and (sub)headings ("Section 4.1" or "Birds"), those should be tagged as appropriate levels of headings.

Headings are displayed in bold and come in six sizes: You can use any heading size from <h1>(largest) to <h6>. The actual size displayed in your book will change depending on what size the reader chooses for display, but the relative sizes of the various heading levels to each other remain the same.

So, for instance, you might use <h1> for page and chapter titles, <h2> for headings in your book text, <h3> for subheadings, etc.

If, after previewing your book, you want smaller headings, you can "Find and Replace" all the <h1> and </h1> with <h2> and </h2> for instance — or you can assign custom sizes (and other formatting) to the header tags using CSS, as you'll learn in Step 16. (In the below example, <h2> tags are shown in bold, and <h3> tags are shown in italics, but it makes absolutely no difference to the code.)

Lists

If you have bulleted lists in your book, format them by putting <ul> (meaning "unordered list") at the beginning of the list and </ul> at the end of the list.

For numbered (as opposed to bulleted) lists, surround the list with <ol> ("ordered list") and </ol>.

For bulleted or numbered lists, delete any bullet symbol or number showing at the beginning of each item in your book file. Instead type <li> at the beginning of each list item, and type </li> at the end of each item.

This code…

<ul>
<li>Apples</li>
<li>Oranges</li>
<li>Bananas</li>
<li>Pears</li>
</ul>

… gives you:

  • Apples
  • Oranges
  • Bananas
  • Pears

This code…

<ol>
<li>Apples</li>
<li>Oranges</li>
<li>Bananas</li>
<li>Pears</li>
</ol>

… gives you:

  1. Apples
  2. Oranges
  3. Bananas
  4. Pears

Nested lists. Here's an example of a simple nested list, courtesy of w3schools.com. This code…

<ul>
<li>Coffee</li>
<li>Tea
<ul>
<li>Black tea</li>
<li>Green tea</li>
</ul>
</li>
<li>Milk</li>
</ul>

… gives you:

  • Coffee
  • Tea
    • Black tea
    • Green tea
  • Milk

Here's a more complicated nested list, also courtesy of w3schools.com. This code…

<ul>
<li>Coffee</li>
<li>Tea
<ul>
<li>Black tea</li>
<li>Green tea
<ul>
<li>China</li>
<li>Africa</li>
</ul>
</li>
</ul>
</li>
<li>Milk</li>
</ul>

… gives you:

  • Coffee
  • Tea
    • Black tea
    • Green tea
      • China
      • Africa
  • Milk

In addition to bulleted lists and numbered lists, you have another option, called a definition list, which can be very helpful for glossaries. You surround your list with the begin and end definition list tags <dl> and </dl>. Then surround the word you're defining with the begin and end definition term tags <dt> and </dt>. Then surround the definition with the begin and end definition description tags <dd> and </dd>. This code…

<dl>
<dt>Coffee</dt>
<dd>- black hot drink</dd>
<dt>Milk</dt>
<dd>- white cold drink</dd>
</dl>

… gives you:

Coffee
- black hot drink
Milk
- white cold drink

Tables

You can wait and look in the Kindle previewer (coming right up) to see if tables in your book turn out okay. Especially if your tables are graphics, they may not be easily legible or may show "artifacts" from being compressed. You can choose to make better-quality graphics, and that is Amazon's recommendation.

If the tables are wide or long, they may not preview well on the small screens of some Kindle devices. If you find that to be the case after previewing your Kindle book, you may want to split the tables up into smaller tables. This will also help tables that seem to forget that they're tables if they go on for more than a couple of screens.

You can also choose to redo your tables using HTML. It isn't hard, and the results can be very crisp and attractive.

  • Start by typing the begin and end table tags <table> and </table>.
  • Within those, type begin and end table row tags for each row in your table: <tr> and </tr>.
  • Within each set of row tags, make as many begin and end table data tags <td> and </td> as you have columns in your table.
  • Inside the data tags, paste or type your table content.
  • If your table needs a header row(s), make it your first table row(s), but instead of typing <td> around entries in the header row, type <th> ("table header") around entries.
<table border="1">
<tr>
<th>Header 1</th>
<th>Header 2</th>
</tr>
<tr>
<td>row 1, cell 1</td>
<td>row 1, cell 2</td>
</tr>
<tr>
<td>row 2, cell 1</td>
<td>row 2, cell 2</td>
</tr>
</table>
Header 1 Header 2
row 1, cell 1 row 1, cell 2
row 2, cell 1 row 2, cell 2

For more on tables, or anything having to do with HTML or CSS, see w3schools.com.

For more on tables on the Kindle, see the Amazon Kindle Publishing Guidelines, section 3.7.

Links, Including Footnotes

Link external references. If your book mentions any websites in it, you should link the mentions up to the actual websites, so that the reader can click and be taken there on the web. This is surprisingly simple.

See the image below for an example. Locate the text you want to turn into a link (such as "online menu"). In front of it, type <a href ("a" means "anchor"; "href" means "hypertext reference") followed by an equals sign. Then type a set of quotation marks followed by the right brace >. Then, at the end of the text that should appear as a link, type the closing </a>.

In between the quotation marks, type or paste the address (URL) of the website you want people to go to. This needs to be the full web page address, including the "http://" (or whatever). You can get the website's full name by displaying the website in a browser and copying its URL out of the box at the top (where you type in web addresses you want to go to). Even though the full URL may not be displayed in your browser, when you copy and paste it into your code, you should get the full URL.

After the book is processed by Kindle, the words "online menu" will be a link that the reader can click on to be taken to the web page thai_takeout.com.

You can also make graphics into links, like this:

<a href="http://cute-pups.com"><img src="pup.jpg"></a>

Link internal references. Suppose your book text says, "See p. 42". With the Kindle devices' adjustable type size, and their varying screen sizes, page 42 is no longer a thing. So you need to change that reference to something like "See Dragons" (or whatever the subject is) and then link it to the spot on (what used to be) page 42 where you want the reader to go. If your book says, "See the section on Red Fruits" or "See Glossary", you need to link those references to the spots you want the reader to go to.

The procedure is basically the same as "Link External References" above, except instead of linking to an external spot, you're linking to a spot inside your own book. So the first thing you have to do is give that spot a unique name (meaning that you did not specify any other spot in your book with the same name) so you can link to it.

Let's say you want your readers to be able to click on the word "dragon" in a certain sentence in your text and be taken to this information elsewhere in your book:

A dragon is a legendary creature, typically with serpentine or reptilian traits, that feature in the myths of many cultures. There are two distinct cultural traditions of dragons….

Give the spot you want readers to go to a name, for instance, "dragon-info" (be sure there are no spaces in the name). Type begin and end codes around the spot's first word or words (as you prefer), like this:

When you use the <a name> tag to name a spot in your text, you're creating an anchor.

[Note: Nowadays (2023), you can use the simpler "id" tag to create an anchor instead of having to use <a name>. More info.]

Now go to the place in your text where you want the reader to click so as to be taken to your anchor — which would be the word "dragon" in the example below.

Use the begin tag <a href> with the end tag </a> (as with external references, above) to tell the link where to go. Since the location it's going to is in the same file (your book text), you just need to tell it where on the page to go to, which you do by typing a # (sometimes called a number sign or a pound sign or hashtag) followed by the name you gave the anchor spot.

Now when the reader clicks on "dragon", he or she will be taken to the information about dragons.

The reader should be able to easily navigate back to where s/he was at previously, using the Kindle device functions. But if you want to get really fancy and take the reader back with a link from dragon-info to where he was reading in the text "His best friend was a dragon…", follow the instructions coming right up for linking footnotes.

Link the Table of Contents. Depending on how things have been going, your Table of Contents might be set up with paragraph tags <p> and </p> around each line, or with div tags <div> and </div>around each line. Whichever, you'll now link the items in the Table of Contents to their actual spot in your text. That way, when the reader clicks "Chapter Three" in your Table of Contents, he or she will immediately be transported to "Chapter Three" in your book.

You follow the same linking procedure as in "Link Internal References," above, since you're linking internally, from one spot in your book to another spot in your book.

At the spots where the chapter titles appear throughout your book (not in the Table of Contents list), give each one a unique name, using the <a name> code. Don't forget the ending </a>.

<a name="ch1"><h1>Chapter One</h1></a>

Note: Amazon says to be sure to put the anchor code outside the heading code. So, whenever you type an anchor <a name> or <a href> around formatted text, make sure your beginning <a> goes before any formatting begins, and your ending </a> goes after the formatting is ended.

Once all your chapters and book pieces have been assigned names, go to your Table of Contents and surround each item in <a href> and </a> tags. (It's okay if your Table of Contents has <p> and </p> instead of <div> and </div>.)

<div><a href="">Chapter One</a></div>
<div><a href="">Chapter Two</a></div>

These tell the link where to go.

Now fill in between the quotation marks with a # followed by the name you assigned each chapter title. For instance:

<div><a href="#ch1">Chapter One</a></div>
<div><a href="#ch2">Chapter Two</a></div>

If you want only part of each chapter title to be a link, put <a href> and </a> tags around only that part.

<div>Chapter One: <a href="#ch1">The Hand of Moriah</a></div>
<div>Chapter Two: <a href="#ch2">Ian's Foot</a></div>

If that all went right, once your text is processed by Kindle your customer should be able to click on a chapter name or other location in the Table of Contents and be transported to the correct spot in your text. You'll check to make sure the links work later, using the Kindle previewer.

Footnotes. These are glorified links, set up so that when the reader clicks on the footnote number in the text, he/she is taken to the footnote contents; then the reader can click on the number there and be taken back to the text where he/she was reading.

At each footnote number location in the text type in something like this (the <sup> and </sup> tags raise the number to be a superscript):

<a href="#ftn1" name="ftnref1"><sup>1</sup></a>
<a href="#ftn2" name="ftnref2"><sup>2</sup></a>

And so forth. Once you've tagged all the footnote locations, go to where the footnotes' actual contents are (should be at the bottom of your document if you've followed this book's suggestions). For each footnote, type in something like this:

<p><a href="#ftnref1" name="ftn1"> 1.</a>Contents of footnote 1 go here.</p>
<p><a href="#ftnref2" name="ftn2"> 2.</a>Contents of footnote 2 go here.</p>

That's it.

Turn Your Book into a Plain Text (.txt) File

Now that you've gone through your .doc book file and coded its formatting into HTML, use "Save As" to save your new document as a Plain Text (.txt) file, in Your Book Folder. (Do not choose "Save as HTML" or "Save for Web" if your text editor offers those kinds of choices.) Call it the name of your book or whatever you like.


If you're using MS Word, it will warn you that saving as Plain Text will delete all your formatting and graphics (which it will), and you click OK fine and then Word shows you your .txt document with formatting and graphics (for the moment). Confusing, but it doesn't matter.

This .txt file you've just created is your new book file. Close it and then re-open it, choosing "Plain Text" when you're presented with various options for how to open it.

Note: After you "Save As" your book file as Plain Text (.txt) some formatting (and maybe graphics) will initially still be showing in your document. Once you close the file and re-open it (as Plain Text), you should be seeing a true Plain Text version of your file. (If you have your .txt file open, and Word shows anything other than "Plain Text" as the current style, you should close the file and re-open it as Plain Text.)

Drag your old .doc book file out of Your Book folder, putting it anywhere else that makes you happy, leaving the new .txt file in Your Book Folder.

You should ignore the .doc file from here on out (unless you use it for reference), and deal only with this new .txt file you've created.

Guide Items

According to Amazon, the Table of Contents and the beginning of your book (the spot where the reader should start reading) need to be identified so that the person reading can go to them at any time using Kindle menus.

To make this happen, you are told to use the begin and end <div> </div> tags with a specification for "id". (You're giving the division an ID to be known by.)

"toc" guide item. The id for your Table of Contents needs to be "toc":

<div id="toc"><h1>Table of Contents</h1></div>

It also works to assign the name "toc" to the Table of Contents, instead of using <div>.

<a name="toc"><h1>Table of Contents</h1></a>

Now Kindle users will be able to easily find your Table of Contents.

"start" guide item. My experience with using the "start" code to mark the beginning of a book is that it does not work, and actually makes things worse. (For instance, despite your best intentions, your start point may be in the middle of your Table of Contents instead of the beginning of Chapter One.) And so I suggest you leave the "start" guide item out. These kinds of things tend to magically be okay when your book is ready for the Kindle store. And the worst thing that could happen is that when a reader chooses to "go to" the beginning of your book, they'll go to the very beginning — your Title page — instead of the first chapter.

But, FYI, here's an example of implementing the "start" guide item:

<div id="start"><h1>Chapter 1</h1></div>

Checklist

Before you submit your book file to Kindle for processing, you should spend the time to check your code. It is a lot of work, but it is a lot more fun than later wondering why the Kindle previewer has refused to process your book, thrown up its hands, and said "Forget it!" So many anguishing HTML problems have been caused by a missing quotation mark in code or by a missing >, or by forgetting to type the ending slash in a tag. Why struggle with that if you don't have to?

Although Kindle processing can survive some pretty serious coding errors, there are some little mistakes that can stop it in its tracks. Here is a troubleshooting checklist of some common coding mistakes:

Quotation marks. Missing or misplaced quotation marks inside of code cause an amazing amount of trouble. Search for quotation marks in code; make sure they're not curly, and make sure that each instance has matched sets: a beginning quotation mark and an ending quotation mark, as in this example:

Missing tags. Make sure that code has its beginning tag and its ending tag.

  • Search for <p> (or <p if your file uses code like <p align="center">) and make sure each one has an ending </p>.
  • Search for <a which will bring up all the <a href> and the <a name> tags. Make sure each one has an ending </a>.
  • Search for <b> or <strong> and make sure each one has an ending </b> or </strong>.
  • Search for <i> or <em> and make sure each one has an ending </i> or </em>.
  • If you have any bulleted lists, search for <ul>, and make sure each one has its ending </ul>.
  • If you have any numbered lists, search for <ol>, and make sure each one has its ending </ol>.
  • If you have any lists, search for <li> and make sure every one has its ending </li>.
  • If you have indented blocks of text, search for <blockquote> and make sure each one has its ending </blockquote>.
  • Search for <img and make sure each instance has a closing space and slash like: <img src="mypicture.jpg" />.
  • Search for <br and make sure each instance has a closing space and slash like: <br />.
  • If you used any heading codes, make sure every instance of <h1> (or whichever heading levels you use) has its closing </h1> (or whatever).
  • Search for < and make sure each one has an ending >. It is easy to accidentally type ? instead of >.

Invalid nesting: When you have multiple tags nested, make sure you close them in the right order. If Tag A starts inside Tag B, it should also end inside Tag B.

<a name="wings"><em>Dragon Wings Extraordinaire</em></a>

Although it doesn't seem absolutely necessary, Amazon says it wants anchor tags (<a name or <a href) to be located outside of formatting (such as <em>).

Turn Your Book into a .html File

Add HTML Language

In order to process your HTML code, the Kindle previewer needs a few key tags so it knows what it's dealing with.

At the very top of your .txt book file, type:

<html>
<head>
<title>The Name of Your Book</title>
</head>
<body>

At the very end of your book file, type:

</body>
</html>

Your book should be between the <body> and </body> tags.

Note: The above basic HTML language should be all you need for the Kindle processor-previewer to be able to process your book's .html file. Since you're not using a code editor (which automatically generates appropriate HTML version info), keeping this language simple is a big help to avoiding rejection.

Change Your File Type to .html

Close your .txt file. Change the file's extension so it will be recognized as a .html file. To do that, on a Mac, click on the file name (in a finder window) twice (slower than a double-click) to make the name editable. Change the name by simply replacing .txt with .html, and press "Enter". On a PC, right-click the file name and choose "Rename", then replace .txt with .html, and press "Enter". You may get a warning message, but just tell it you know what you're doing ("Use .html").


How to open your document as code (Plain Text). Since your document is now a .html file, your text editor (trying to be helpful) will by default want to open it with the HTML formatting implemented (in its opinion). But you will instead want it to show the coded version you made, so you can make any changes needed to your HTML code. So you need to override the default and open your document as Plain Text.

Different text editors have different ways of opening an HTML file as Plain Text. Poke around to find your text editor's way of making it happen. In MS Word, at least in some of its multitudinous versions, the capability is found in the General Preferences panel — choose "Confirm conversion at open":

That preference will make the text box below pop up when you try to open an HTML file. It may try to tempt you with a default choice of opening as .html — but resist. You want "Text Only" (.txt) so you can see the file's code.

If you're using the Mac's TextEdit program, clicking the "Ignore rich text commands" radio button lets you open the file as code:

Now when you open your book file (which has a .html extension), you will open it as Text Only, and you will be able to see your HTML code without having Word try to implement your HTML formatting for you.

Note: If Word shows anything other than "Plain Text" as the current style, you have not succeeded in opening your document as Plain Text. You need to close your document and re-open it — you should get the option of opening it as a Plain Text file. If you don't get that option, you need to follow the instructions above for making your text editor open the document as code (Plain Text).

Download the Kindle Previewer

It's time to process and preview your book using the Kindle previewer, so that you can see how everything's looking so far, before dealing with any additional formatting or work needed on graphics.

Download and install the Kindle previewer (currently v2.92), so that you can test your book file quickly any time you like, without going online, across a range of devices (instead of using the Amazon KDP online previewer, which has some disadvantages).

[Note: Nowadays (2023), the Kindle previewer is at version 3, which looks quite different from the version below and is much improved. The basic process is the same, but specifics may not be the same. Once your book file is ready, you can use the Kindle previewer to export the .html file (including images) as a .kpf file, Amazon's new preferred format, which you can upload directly as your book manuscript at your Kindle Direct Publishing account.]

When downloading the previewer, choose to save the file. Then double-click the zipped folder (which will be in your Downloads folder or wherever you have downloads set to go), and the previewer will appear.

If your computer system is uncommonly old or not very powerful, you might not be able to use the downloadable Kindle previewer and would thus need to use the Amazon KDP online previewer, which is okay, but a slower process. More info.

Preview Your Kindle Book

Open the Kindle previewer that you downloaded in the previous step, and choose "File/Open Book" to open your book file (.html) (located in Your Book Folder).

The previewer will then automatically convert your file.

If all went well, you'll see this message:

However, to get this happy result on your first try through the Kindle previewer would be surprising.

Much more likely, you will get a message that conversion failed, so do not be dismayed. Probably it is some typo or maybe a quotation mark you left out. Let's figure it out.

If the Kindle previewer can't process your book: If you get a message that your book has "failed to compile"…

… Click on the orange "Compilation Details" and scroll to the bottom to see the point at which the processor choked and gave up. In the case below, it's easy to see from the compilation details that I forgot to put begin body code <body> like I was supposed to.

So I go back to my .html file (remembering to open it as .txt Plain Text) and type <body> in the correct spot. Then I save my file and open it again in the previewer and see if it compiles.

Do not be deceived — getting your file to compile can be a massive undertaking. This is where you will wish you had run through the checklist of things you have possibly done wrong, which you will probably be referring to again soon. The future may look dire, but it's probably just an illusion. It's probably a typo, a tiny error you made in coding, or more likely a series of tiny errors you made in coding.

In the Compilation Details window, you can usually find the line number where the compiler choked and gave up. This is especially useful information if you have a code editor, such as Dreamweaver, that shows code line numbers. For instance, if I know the compiler met an insoluble problem at line 1074, I can temporarily remove a chunk of code from around that location. If I then get a file that will actually compile, I can start adding pieces of the removed code back in until the compiler chokes again, and then I know which bit of code is causing the problem.

The Compilation Details window may also give you helpful information about which of your links are broken and which images can't be found.

If the Compilation Details don't help you find the reason why the Kindle previewer can't process your file, make sure that your file name has the .html or .htm extension. Save your file again; then open it again with the previewer. If your file still won't compile, check your code using the checklist of common problems. If you have web editing software such as Dreamweaver, or a friend who does, run your file through a verification or validation process and see what gets complained about. Or use an online HTML validator such as validator.w3.org and see what happens. Also, check carefully to make sure you have followed the steps in this book correctly. Make a back-up copy of your file, and then try cleaning up your file so that there's no code in it except code this book specifically told you about.

If you've got a nice clean file following the instructions in this book, you are talking to the Kindle previewer using solid simple HTML, and your file should compile.

Once the Kindle previewer successfully compiles your book: Even if your file is converted, you'll almost certainly be told, "But there are warnings!" Don't worry; it's not a problem. (These warnings can contain useful clues regarding broken links and images.)

Note: You'll also be offered a link (see image above) to the "output file". That is not the output you want — it's a .mobi file the previewer created; it's in a folder the previewer created in Your Book Folder. You can ignore this .mobi file (unless you want it for some other ebook-related purpose). One of these .mobi files will be created every time you preview your file. You'll remove them and their folder before you upload Your Book Folder to Amazon, so feel free to trash them at any time.

To preview your book, click the "OK" button, and it will display in the Kindle previewer. Hopefully, it will look fantastic, but possibly not.

The Kindle previewer comes with instructions, but you probably won't need them. Use the arrow keys at the top of the previewer (or the arrow keys on your keyboard) to move between pages in your book. The curved arrow at top left is handy for returning to your original spot after being taken away by a link you clicked. The "Open Recent" command under the File menu is handy for repeatedly opening your file to test changes you've made. The "Go to" menu also offers some handy navigation choices, plus a "Search Word" (Find) command. (Unintuitively, choosing to go "Home" will close your file.) Don't worry if your Table of Contents doesn't show up under the "Go to" menu. If you follow the instructions in this book, your Table of Contents will work in your actual Kindle book.

Troubleshoot Your Book

Now that you can see your book in Kindle format using the previewer, you will probably see some things that aren't displaying the way you want.

Before you get down to fine-tuning the details of formatting, you may have to first deal with some problems that keep your book from displaying correctly, such as multiple missing graphics or huge swaths of bold text, or actual code being displayed in your book.

Flip through every page of your book looking for those kinds of errors.

Make corrections by changing the HTML code and/or text in your book file. (Remember to open your book file (.html file) as Plain Text. (If you just double-click a .html file, it'll open as a web page in your browser. You want it to open as the html code you can edit instead.) If your text editor won't cooperate, see here.)

Then save your book file, and re-open it with the Kindle previewer. Repeat as many times as needed.

It is wise to fix the first problem that the previewer shows you — however small it may seem — then save your file and and re-open in the previewer to re-process it and see if many or most the other problems you had are now magically fixed. Then fix the next problem in your document; save, and re-open in the previewer.

Here are some common display problems and how to fix them:

  • If none of your graphics are showing up, make sure their files are loose in the same Your Book Folder that contains your book file. The graphics should not be in their own separate folder (unless you know what you're doing and you coded it appropriately).

  • If that isn't the problem, make sure that the code is specifying the correct location of the graphics. Check that when you placed the images, you typed the image name…

<img src="smart-old-horse.jpg">

… without including the name of some folder they used to be in:

<img src="mypix/smart-old-horse.jpg">
  • If only some of your graphics are showing up, check to make sure the missing ones are actually in your folder, and are an acceptable file type, and check to make sure you didn't make typos in their file names in your <img /> code. Missing quotation marks around the file name will also cause a wide variety of problems. Remember that graphics file names cannot have any spaces.

  • If your previewed book has too much bold, probably you put a begin bold tag (<strong> or <b>) but didn't put an end bold tag (</strong> or </b>):

  • If actual code is showing in your book, you've forgotten a < at that spot.

  • If your text is supposed to look like this…

… but looks like this…

that could be caused by leaving off a > in the vicinity. So could a result like this…

… where your link (for the footnote) doesn't work. This kind of thing can also be caused by a typo in your code, a missing quotation mark, or code tags nested improperly.

So now you may begin to appreciate why creating careful, accurate code is so important. Once again, here's that checklist of common HTML coding errors.

Once your book is looking pretty reasonable, go to the next step for a fuller assessment.

Assess and Correct Your Book

Once you've solved any problems, as above, that keep you from previewing your book properly overall, use the Kindle previewer to take a proactive look around your book.

  • Use the "Aa" pop-up menu to view your book at various font sizes.

  • If your lines don't rewrap when you change font size — they break at exactly the same spots they did before — consider that you probably have "hard carriage returns" at the end of each line rather than just at the end of each paragraph. You need to fix this; we discussed this situation here.

  • Use the previewer's "Devices" menu, and the resultant strip of devices at the top of the preview window, to preview your book on some of the various devices that read Kindle books, making sure your book looks good in all of them. Remember, some formatting will only show up on some devices. The idea is not to be too concerned with whether your text is justified on one device, and ragged-right on another device, or has paragraph indents just the way you like them from device to device — just check to see if the book looks good. Each device is doing the best it can within its limitations to present the reader with an attractive, legible book.

  • Flip through your book page by page again from beginning to end, on various devices, and note any remaining problems. Make sure all your content is there. Are there still any page number references in the text that should be replaced with links? Check for typos, wrong alignments, and improper paragraph spacing. Did your code work — did you get all the formatting you thought you would? Do the headings look good? Are the bolds bold, and the italics italic? Do you have page breaks in all the right places? Are some of your graphics aligned funny? Are symbols displaying incorrectly?

  • Do your links work, including the Table of Contents?

  • Do the images look good? If a graphic has text, is it legible? In Step 15, you will learn how to optimize any graphics that need to look better.

  • Keep in mind that Amazon says that images do not necessarily display accurately when previewed. "For instance, larger images may resize or rotate when previewed." In my experience, the Kindle previewer does not always show images at the sizes they will actually display. I find that I get the best overall representation of how my graphics will look by viewing as the Kindle Fire HD. My advice on this is just to try not to freak out about it if your graphics look less than ideal on some device previews. Do they look okay on other device previews? Then they probably have all the raw material they need to excel across the board. It's possible you won't see exactly how your graphics will be sized and placed until you order a copy of your book from the Kindle Store, and even then it will vary across the range of devices. But I have been pleasantly surprised with the Kindle processor's ability to make good layout decisions for graphics. That's the zen lesson of converting books for Kindle: don't be attached.

Make any corrections or changes by changing the text and/or HTML code in your .html book file in Your Book Folder. (Remember to open your book file (.html file) as .txt Plain Text. If your text editor doesn't want to, see here.) If you have HTML problems, the information on Path 9B is a good reference for HTML coding, especially together with the HTML basics in Step 8.

Once you've made a change or several changes, and want to see how the book will now look in Kindle, save your .html book file and re-open it in the Kindle previewer. See what got fixed and what remains to be done. Repeat as many times as needed. It's very fast and easy to preview your book file; you can save and re-open even after every change to get immediate feedback.

If any of your graphics need to be improved, go to Step 15. Otherwise, you can go to Step 16 to add formatting using CSS. If you don't need either of those steps, you can consider your book pretty much finished, and go to Step 17 to enter information about your book onto the Kindle KDP site.

Optimize Graphics for Kindle

If the images in your Kindle book do not look so great, you may want to optimize your graphics specially for Kindle. The problem may be due to poor quality in the graphic(s) you provided and/or due to Kindle's conversion process.

Optimizing graphics. I tend to ignore Amazon's recommendations that graphics files be 256K or less, and instead I start by using my best version of a graphic (with the possible exception of line art; see below). Only if the graphic file is more than, say, a couple of MBs in size, do I resize it (as described below in "Changing your file size"). My experience is that the Kindle processor will handle any file size you give it, and convert it to the size it needs.

But if my book is then too big or too slow when processed by the Kindle previewer, I resize my biggest graphics to get the highest quality possible within the suggested 256K file size, as explained below. If you have lots of big graphics, keep in mind that your entire book cannot be larger than 50 MB (as calculated by Amazon — you'll be able to see your uploaded file size in Step 21).

Amazon documentation says that — with the exception of line art — you should give Kindle the best version you've got, up to a file size of 256K, and not worry about anything else. Line art, on the other hand has a maximum size of 500 x 600 pixels (so as to avoid the conversion process, which would blur its edges).

Amazon says that if you have pictures of text that show up blurry, you should type the text instead of using the image. If you have pictures of tables that are blurry, you can make tables using HTML.

Amazon suggests you make your graphics files with a resolution of 300 dpi to the extent possible within the 256K (or some documentation says 127K) file size. Elsewhere, they say that you should use graphics with "maximum resolution available." I think that what they mean is they want you to send them as many pixels as possible up to a file size of 256K. Do not resample your images to make them 300 dpi if you have to sacrifice any pixels to do so.

Never increase or decrease the number of pixels in your graphics unless you're willing to lose quality. You can rearrange the pixels all you want (making different sizes/resolutions combos), but the picture only has a certain number of pixels, and if you tell your graphic editor to make fewer or more pixels ("resample"), it will have to fake it the best it can — by guessing which pixels to delete, or what the additional pixels should look like.

Amazon's instructions for images say different things in different places. They do consistently say photographs should be saved as JPG or JPEG, and line art should be saved as GIF. They suggest that graphics be in color (RGB) whenever possible. Your graphic will show up in shades of gray if the particular Kindle device does not support color.

Amazon says that your image should be at least 500 pixels on the short side and no more than 2000 pixels on the long side. For full-screen images, which is what Kindle prefers, a minimum of 600 pixels by 800 pixels is needed.

Full-screen images are said to work best in a width to height ratio of 3 to 4, but Amazon also recommends image ratios of 9 to 11, or 1 to 1.6. A ratio of 3 to 4 is the width to height ratio of a typical portrait-direction photo. Of course, most of your photos will probably be landscape-direction — in a 4 to 3 ratio. Fortunately, the Kindle does a good job of squashing your photo to fit, and on most devices the user can choose to display the picture in higher quality (if available) and/or in landscape view, which the reader can see by rotating his or her Kindle a quarter-turn.

To make or crop a graphic in a particular ratio, you have a couple of choices. If you have Photoshop or a similar graphics editor, you can set the selection rectangle to select areas to that ratio.

If your graphics editor doesn't let you do that, you can use a bit of algebra to discover that, for instance, a document that's 2000 pixels on its longest side will be in a 1.6 to 1 ratio if its shortest side is 1250 pixels.

x over 2000 = 1 over 1.6
Multiply 2000 x 1 and divide by 1.6 = 1250

If you prefer to do the 3:4 ratio instead:

x over 2000 = 3 over 4
Multiply 2000 x 3 and divide by 4 = 1500
So if you want a 3:4 ratio and your long side is 2000, your short side should be 1500.

Changing your file size. Let's say my picture exceeds Amazon's maximum of 2000 pixels on a side.

In Photoshop, I choose File Menu/Save for Web & Devices, and I get an extremely useful window suggesting various options for saving my graphic file for web and devices. I type "2000" into the width box, and the height automatically adjusts proportionately to 1500 pixels. But the file size is still too big at 1.472M.

These illustrations show "maximum" quality selected, but that is way more than you need: "medium" is more like it. You can adjust quality downward, and/or change the image size, plugging in numbers or percentages until you find a combination that gets your file size below Amazon's suggested 256K. (Amazon generally doesn't want your graphics to be below 600 x 800 pixels, though.)

You can also choose between different file types, such as JPEG and GIF, to see what kind of quality and/or size difference you get. (Remember that photos should normally be saved as JPGs and line art should be saved as GIFs.)



Instead of using Photoshop, you could use Preview, the built-in graphic editor for the Mac, which lets you resize your graphic by choosing Tools Menu/Adjust Size.

Select "pixels" as the measurement unit.

You can plug in different numbers, and your recalculated file size will be shown at the bottom of the window.

What if your graphics are too small? According to Amazon, "photographs of less than 300 x 400 pixels are much too small and can be rejected." If the graphics are rejected, you can always make them bigger by resampling as above. You will, of course, lose quality. Ideally, when a graphic is small, you can trace it back to its original, higher-quality source and use that instead.

Avoiding conversion. Since your book will be seen on small screens, Kindle's conversion process tries to make graphics fill the screen if it can. On graphics that are too short for that, it may increase your image size to fill the width of the screen, sometimes resulting in a look you don't like.

Amazon says that if your graphic (in JPEG or GIF format) is under 256K in size (some Amazon documentation says 127K), the Kindle processor won't try to convert it. This doesn't seem to work for the original Kindle, but other devices seem to behave. So, if you can get your graphic below, oh, let's say 256K, and still have good quality, you should be able to get it through the processor without it being changed.

The Kindle processor will also skip conversion of graphics less than 500 x 600 pixels. Although that is too small for Kindle's liking overall (600 x 800 being the minimum acceptable size), for line art 500 x 600 is the maximum allowed size because the small size means that the processor will not try to convert it. Kindle conversion would cause the line art's sharp edges to blur. For more on line art, see the Amazon Kindle Publishing Guidelines, section 3.6.5.

If you don't want your graphic's width resized to fill the width of the screen, consider using your graphics editor to insert transparent space on each side, to a width of 600 pixels (Amazon seems to like 600 pixels wide without feeling compelled to re-size it). Images with transparency will not save as JPEG, only as PNG and GIF. To get a transparent background in Photoshop, you turn your image background into a layer and then change the canvas size.

Add a Little CSS?

This section shows you the basics of CSS as they apply to Kindle. Don't get too fancy or Kindle will throw up its hands and just do what it wants. You can always find more CSS information at w3.schools.com.

When you're happy (or happy-ish) with the way your book is looking in the Kindle previewer, it's time to assess: Is your formatting done? You can always come back and enhance your book's formatting later, but you may want to go ahead and learn a bit of CSS to fine-tune the formatting to your satisfaction now.

CSS (Cascading Style Sheets) is a style-sheet language that lets you format your HTML document in ways HTML alone can't do. CSS is totally optional; you do not need it unless you want some formatting you can't get with just HTML. The newer Kindle devices offer extensive support for CSS, allowing you to have great control over your book.

The newer Kindles understand quite a few CSS commands, but the older Kindles not so much. So you can add some great formatting — colored backgrounds and fancy page layout — but it may only work on some of the newer Kindles. The good news is that putting in code to take advantage of the newer Kindle enhancements will probably not mess up how your book displays on other devices.

Although Amazon's documentation says CSS code must be contained in a CSS file separate from your book file, I suggest you include CSS code directly in your book file — an internal style sheet — as in the examples below. It doesn't hurt anything, and it seems to work more reliably. (Here are instructions if you prefer to use an external style sheet.)

Getting started with CSS. You will type your CSS styles in the <head> section of your book file, up near the top. Here's some HTML language you added to the top of your file in Step 10:

<html>
<head>
<title>The Name of Your Book</title>
</head>
<body>

Somewhere in the <head>section — let's say the line after the end title </title> tag — type the begin and end style tags <style> and </style>.

<html>
<head>
<title>The Name of Your Book</title>
<style>
</style>
</head>

Any CSS styles you define will go in between these <style> and </style> tags.

Add a specification to the begin style tag, like this:

<style type="text/css">
</style>
</head>

Between the style tags, you could type an example CSS style definition, as shown:

<style type="text/css">
h1 {color: red;}
</style>
</head>

Wow, when you save your file and open it in the Kindle previewer, all the text in your book that you put <h1> (heading) tags around now shows up in red! (Here's a list of available colors.)

Why not push your luck and ask for all those instances to be centered, too?

<style type="text/css">
h1 {color: red; text-align: center;}
</style>
</head>

Omg, now when you save your file and open it in the Kindle previewer, all your <h1> headings are red and centered.

Instead of HTML's braces < and >, CSS uses curly braces { and } to contain its code. Curly braces are made by using the shift key with the bracket keys [ and ]. CSS uses the colon (:) instead of the equals sign (=) to precede specifications. A semicolon (;) is used to separate specifications within the style definition. It doesn't matter whether there's a space after the colon or semicolons, or not.

You can type formatting specifications (within the the curly braces { }) each on its own line, or put them all one right after the other, as long as they are separated with a semicolon.

Change paragraph indents from Amazon defaults. On most Kindle devices, your paragraphs will automatically be indented to Amazon's default settings, but you can change first-line paragraph indentation using CSS and in some cases you will prevail over Amazon. You will specify that whenever the paragraph <p> code is used, it will automatically indent the first line of text the amount you specify — in the example below, zero. To do that, you'll declare a specification for the paragraph <p> code:

<style type="text/css">
p {text-indent: 0em;}
</style>
</head>

This means that whenever text is surrounded by the <p> and </p> tags, it will not be indented. It is best to specify measurements in percentages, or you can use ems (an em equals 16 pixels) or pixels (px). The first-line paragraph indent shown below will be 10% of the page width, whatever that happens to be on a particular device. You can also declare negative indents such as text-indent:-2em.

p {text-indent: 10%;}

Indent blocks of text. The tags <blockquote> and </blockquote> are a good choice to surround indented blocks of text in your book, and you can assign further formatting to the style, using CSS, to suit your needs.

blockquote{
width:50%;
border:5px solid red;
border-width:5px;
border-color:red;
padding:4%;
font-family:Arial, Helvetica, sans-serif;
font-size:0.8em;
font-weight:bold;
font-style:italic;
color:#388346;
text-align:center;
}

Instead of using <blockquote>, you can define and apply a class style to indent particular blocks of text.

p.indent {margin-left: auto; margin-right: auto; width: 6em;}

The "6em" is the width you want the text block to be. Then, in your document, surround the text you want indented like this:

<p class="indent">I want this text indented.</p>

Add extra space above or below (between) paragraphs. Some Kindle devices do a nice job of putting spacing between paragraphs, but others just pile them together with no extra spacing. To make sure I get extra spacing, I use CSS to add a margin-top or margin-bottom specification to the paragraph <p> code: Now whenever the paragraph <p> tag is used in your book, it will automatically add space above or below it.

<style type="text/css">
p {margin-top: .5em;}
</style>
</head>

Change the appearance of headings coded with <h1> through <h6>. You can universally change your headings to be a different font, color, text style, or alignment — although results will vary depending on which Kindle devices are doing the viewing.

<style type="text/css">
h1{
font-family: Arial, Helvetica, sans-serif;
font-size: 1.5em;
font-style: italic;
font-weight: bold;
color: #blue;
text-align: center;
}
</style>
</head>

The font-family command above is saying: For an <h1> heading, if you have Tahoma, use it. If you don't have Tahoma, use Geneva. If you don't have Geneva, use whatever sans-serif font you have. Only some fonts are possible, more info on the w3schools.com website.

If the official font name is longer than one word, you need to enclose it in quotation marks in the CSS codes.

h3 {
font-family: "Times New Roman", Georgia, Serif;
font-size: 1.1em;
font-weight: bold;
color: #cadetblue
text-align: right;
}

Quick check-in. Just to make sure you're understanding how CSS is set up, here's an example of how the beginning of your book file would look, more or less, if you implemented the styles we've looked at so far (it doesn't really matter what order the style specifications are in):

<html>
<head>
<title>The Name of Your Book</title>
<style type="text/css">

p {text-indent: 10%; margin-top: .5em;}

p.indent {margin-left: auto; margin-right: auto; width: 6em;}

blockquote{
width:50%;
border:5px solid red;
border-width:5px;
border-color:red;
padding:4%;
font-family:Arial, Helvetica, sans-serif;
font-size:0.8em;
font-weight:bold;
font-style:italic;
color:#388346;
text-align:center;
}

h1{
font-family: Arial, Helvetica, sans-serif;
font-size: 1.5em;
font-style: italic;
font-weight: bold;
color: blue;
text-align: center;
}

h3 {
font-family: "Times New Roman", Georgia, Serif;
font-size: 1.1em;
font-weight: bold;
color: #cadetblue
text-align: right;
}

</style>
</head>

Okay, now that that's clear, let's go back to more CSS formatting examples.

Center images. If you want all your images centered (and you didn't already surround them with HTML <div align="center"> </div> or <p align="center"> </p> tags), you can set up a CSS style:

img {
display: block;
margin-left: auto;
margin-right: auto;
}

(You can't use the text-align command because a graphic isn't text.) What if you want only some of your images centered? As we saw with the p.indent tag earlier, CSS is good about letting you define subsets with different qualities. The style above applies to all images, but the style below applies only to images that have been marked as class "muggles". (When you create classes like this, you can name them pretty much whatever you want, as long as there are no spaces in the name.)

img.muggles {
display: block;
margin-left: auto;
margin-right: auto;
}

In your document, add the class specification to the images you want centered:

<img class="muggles" src="cute-pup.jpg"/>

Repetitive formatting styles, especially if format may change in the future. A good reason to use CSS is if your book has lots of "styles": instances of text with multiple formatting. Let's say you have a bunch of paragraphs containing the names of movies that need to be formated as extra-big bold italic green and centered.Instead of typing every time…

<p align="center"> <big><big><font color="green"><b><i>Amadeus</i> </b></font></big></big></p>

…you can specify this format as a paragraph class and just reference the class wherever you want that format in your book. Let's say you're calling this class "movies":

p.movies {
font-size: 130%;
font-weight: bold;
font-style: italic;
color: orange;
text-align: center;
}

Now, in your book text, in the <p> tag of every paragraph you want to be centered big, bold, italic, and orange, you type in the class specification "movies":

And this is what you get:

If you want to be able to get this formatting for a movie title wherever it appears — in the middle of a paragraph, for instance — you can create it as a universal style that can be used by any appropriate tags, not just the <p> tag (which applies the style to the paragraph's entire contents). In such a case, start the CSS style with just a dot.

.movies {
font-size: 130%;
font-weight: bold;
font-style: italic;
color: orange;
}

In your .html book file, put begin and end <span> </span> tags around the text you want the formatting to apply to, and then specify the class "movies" in the beginning <span> tag.

The image below shows what you get. The top one is a paragraph; the bottom is a blockquote.

The really great thing about CSS is that you can make global changes to your document easily.

Suppose you've come to your senses (or been overruled) and no longer want big orange text in all those spots in your book you marked as "movies" after all. You want it small, bold, no italic, red. You just go to your CSS file and make the changes to your class definition.

.movies {
font-size: 100%;
font-weight: bold;
color: red;
}

You don't have to make any changes anywhere else, and now all your movie names will be small, bold, and red.

Note: As you can see from the above example, you can specify font sizes as a percentage, 100% being the size of your main font in the wisdom of Amazon. So here's a good way to handle font sizes, using the percentages you choose so as to obtain a pleasing relationship between the sizes of the various text elements:

p {font-size: 100%;}
h1 {font-size: 160%;}
h2 {font-size: 130%;}

For drop caps, Amazon recommends putting this CSS code in your <style> area:

In your book text, you put:

And this is what you get:

Note: Just because this gives you a nice big first letter doesn't mean it's an actual good drop cap. At the least, a drop cap is supposed to have the same baseline as the bottommost line of text it adjoins, and share the same top alignment as the capital letters on the topmost line of text it adjoins. Realistically speaking, this is not going to happen, if only because some Kindle devices may give you an entire blank line space under your drop-cap. The drop caps that the Kindle previewer shows you may not agree with Kindle reality. But if you want to play with finetuning on a particular device or two, you could try adjusting the margin-bottom and margin-top specifications in your CSS code.

span.dropcaps {
float: left;
font-size: 3em;
margin-bottom: -0.28em;
margin-top: -0.4em;
}

Enter Information on the Kindle KDP Site about Your Book

If you haven't created a Kindle Direct Publishing (KDP) account (Step 1), create one now. You can sign up on the "Kindle Direct Publishing" home page. (If you already have an Amazon account, you can sign up using that.) You can see Amazon's instructions for how to create an account if you need them. To be fully hooked up to publish your book, and receive royalties, you'll need to go to "Your Account" and provide your social security number (or EIN if you're a business), and information to authorize direct deposit of proceeds into your bank account.

Once you've created your KDP account, you'll be taken to your "Bookshelf".


(Amazon's instructions for completing this upcoming process are available if you have questions not answered below.)

Click the "Add New Title" button. You'll be prompted to enter information about your book This is all fairly self-explanatory, plus there are links to answer your questions.

An ISBN number is not required. If you have a print version of your book, do not use that ISBN. One thing to keep in mind is that the 4000-character "description" you get to enter here is your very best tool for marketing your Kindle book, since it will help the Amazon Kindle search engine match you up with people looking for words that appear in your description.

Amazon says, "Your book description is what customers see as they shop the Kindle store. Think of it like the inside flap of a hardcover book. The description is a reader's first experience with the content of your book. A well-written description assures readers that the book itself is of similar quality."

You can leave the description blank or incomplete for now, and come back to finish it once you.

"Contributors" are the author, editor, illustrator, translator, or other people involved with your book.

Next, you'll be asked to verify that you have rights to your book.

And then you can choose two Kindle Store categories for your book to appear in. Pay close attention to make sure you choose categories where people looking for your sort of book would expect to find it. Choose the most specific categories that apply to your book — it will then be included in all the related, more general categories above it.

In this step, you should also specify seven keywords: words or strings of words, separated by commas.

You can save all this information you've entered by clicking the "Save as Draft" button at the bottom right of the KDP window.

Create and/or Upload Your Book Cover

Step 4 of the publishing process on your book's Amazon KDP page is "Upload or Create a Book Cover".

Amazon offers a beta option, called Cover Creator, that helps you create a cover, for free. It's limited but not terrible, and it's a reasonable solution to a lack of graphic design skills, especially if you don't mind the occasional beta crash. You can use Cover Creator in Step 4 by clicking the appropriate button.

Alternatively, by clicking the other button in Step 4, you can upload a cover that you created, or that someone created for you. Keep in mind that your cover needs to not only look great at Kindle (and other devices) screen size, but also it needs to look great when compressed to the size of a thumbnail in the Amazon store, and when displayed in black and white. Be sure to preview it in your graphics editor under those conditions. Amazon also says that if your cover has a light background, it may not look ideal against the Kindle's white screen; they suggest you add a very narrow border (3 or 4 pixels) in medium gray around your cover graphic in that case. Also, be aware your cover can't show a price or any temporary promotional offers, and it must not infringe on anyone's copyright.

You might want to check out Amazon's tip sheet on cover images. In a nutshell, your book cover needs to be a .jpeg/.jpg or .tiff file. You will get best results if you provide Amazon with a cover graphic with a width-to-height ratio of 1 to 1.6. The ideal is for your cover graphic to be 1563 pixels on the shortest side and 2500 pixels on the longest side. The minimum size acceptable is 625 pixels on the shortest side and 1000 pixels on the longest side.

Don't worry about the resolution, just the pixel count. (As we saw in the section on optimizing graphics, you should not artificially increase your pixel count!) Your cover graphic should use RGB color. It's very important that your cover image is sharp. If it looks the least bit fuzzy, consider finding a higher-resolution version or using another graphic.

If the width/height ratio of your graphic isn't 1 to 1.6, Amazon may have to stretch or squash it to make it fit the Kindle screen. This ratio seems to look great on newer Kindles, whereas the older Kindles display at a 3 to 4 ratio. Practically speaking, either ratio will work. Assume that your cover will end up as close to 1 to 1.6 width to height as Amazon can make it, with Amazon making some adjustments to display it at 3:4 ratio on older Kindles. Consider cropping a preexisting non-complying cover graphic to one of those ratios.

More info on cropping a graphic to a particular ratio.

Upload Your Book

On your book's Amazon KDP page, Step 5 is "Upload Your Book File".

You first must choose whether to enable "digital rights management", which, according to Amazon, "is intended to inhibit unauthorized distribution of the Kindle file of your book. Some authors want to encourage readers to share their work, and choose not to have DRM applied to their book. If you choose DRM, customers will still be able to lend the book to another user for a short period… . Important: Once you publish your book, you cannot change its DRM setting."

Finally, you get to upload your book. If your book has no graphics in it, just use the "Browse for book" button to select your .html file in Your Book Folder.

If your book has graphics, before uploading you need to first zip (compress) Your Book Folder — which contains only your .html book file and the graphics being used in your book (other than the cover). Remember, when you used the Kindle previewer, a new folder appeared in Your Folder called something like "converted-yourfilename.html". Throw those away. Only your .html file and your graphics should be in Your Book Folder!

Exception: If you're using an external CSS style sheet instead of the internal CSS style sheet suggested in this book, make sure the style sheet file is also in Your Book Folder.
[Note: You can now (2023) use the Kindle previewer to open the .html book file, and export the book from there into a .kpf file (which includes any images), and then just upload the .kpf file to your Amazon book content page. No need to do a zip file.]

Once Your Book Folder contains only your .html file and your book's graphics (other than the cover), zip (compress) the folder. On a Mac, right-click on the folder and choose "Compress". If you use a PC and don't know how to compress a folder, you can get instructions online.

Now use the "Browse for book" button to upload your zipped folder to Amazon. (You'll get a chance in Step 6 to officially preview your book online before publishing.)

Once your file is uploaded successfully, Amazon will show you the results of a spell-check, if you're interested.

Troubleshooting. Your file might fail to be accepted as a Kindle book upload for the same kinds of reasons it might fail to be opened by the Kindle previewer you downloaded and have been using up till now. But if you've been successfully using your book file with the downloaded previewer, and now the book file won't load using the online previewer, the problem is more likely to be that you have not attached your book file in an acceptable format — as a .html file (if your book has no graphics) or as a zipped folder containing .html file and graphics.

Another possibility is that your file is too large. Amazon suggests 50MB as the upper limit. If your book has a lot of graphics, you can probably cut the file size considerably by optimizing the graphics for Kindle.

Preview Your Book Online

On your book's Amazon KDP page, Step 6 is "Preview Your Book". Here's where you get to find out if Kindle's processor actually came up with the same results you got using the Kindle previewer you've been using. Probably so, but I suggest giving your book a good look page by page — start by clicking the "Preview book" button.

You can choose to display the preview on various kinds of Kindle-related devices. If you see any problems with your book formatting, go fix them in your .html book file (in Your Book Folder), and then re-upload (re-zip the folder) and re-preview.

Once you are satisfied with your book preview, click the "Save and Continue" button at the lower left of the KDP window.

Note: Step 6 also offers you the opportunity to "Download Book Preview File" (a .mobi), and/or "Download HTML" (the .html file that Kindle wrote using the .html file you gave it). While these can be useful at times, we're going to ignore them in order to avoid unnecessary complication.

Choose Territory, List Price, and Royalty Percentage

On your book's Amazon KDP page, Step 7 is "Verify Your Publishing Territories." This is where you choose which of Amazon's 245 worldwide territories you want to sell your book in. You'll probably just want to click the "Worldwide rights — all territories" button.

In Step 8, select whether your want your book royalties calculated at 35 percent of list price, or at 70 percent of list price minus "delivery cost". What it seems to come down to, at least for U.S. sales, is that if you have a big fat book, you'll probably make more money using the 35 percent option. That's because Amazon charges a delivery fee if you choose the 70 percent option — in the U.S., it's 15 cents per megabyte, rounded up to the nearest kilobyte. For U.K. Kindle publishers, the fee is £0.10 per MB, and it's €0,12 per MB for publishers in Germany, France, Spain, and Italy.

The size of your converted book is shown at the end of Step 8.

If you select the "70% Royalty" radio button and type in a U.S. list price, you'll get a comparison of the 35 and 70 percent options.

You can fool around with different list prices to see what your royalty would be. Your book can participate in the 35 percent program if its list price is between 99 cents and $200.00. Your book can only participate in the 70 percent program if the list price is between $2.99 and $9.99, and if the list price is at least 20 percent below the lowest list price for any physical version of your book. By participating in the 70 percent royalty program, you agree to sell your book in "all geographies for which the author or publisher has rights"; you also agree that your book will be included in "a broad set of features in the Kindle Store, such as text-to-speech".

Although you set the list price, Amazon "reserves the right to set the retail price at our sole discretion". Especially if your Kindle book (in digital or physical version) is being sold for less (or given away) somewhere other than the Kindle store, Amazon may sell your book for less than your list price, or give it away for free, and calculate your royalties using that figure. This is because Amazon needs the ability to match other prices. This provision does not apply to books in the 35 percent royalty program.

Amazon will be selling your Kindle book on "Amazon.com, Amazon.co.uk, Amazon.de, Amazon.fr, Amazon.es, and Amazon.it Kindle Stores; on Kindle devices; and on apps such as Kindle for PC and Kindle for Mobile Devices". So you need to have a list price for your book in each country in the "Choose Your Royalty" section. The easiest, and probably best, way is to click the radio buttons that automatically set appropriate non-U.S. prices based on U.S. price.

Be aware that Kindle can raise non-U.S. list prices if costs of doing business in a particular country merit it (taxes, for instance). Non-U.S. publishers especially should read through Amazon's FAQ on royalties, and especially the part about how you may be able to escape the U.S. 30% withholding tax. Also, here's a link to Amazon's royalty information page.

Note that, if your book is signed up for the 70 percent royalty, and you sell a copy to any country outside of a select few — currently Andorra, Austria, Belgium, Canada, France, Germany, Guernsey, Isle of Man, Italy, Jersey, Liechtenstein, Luxembourg, Monaco, San Marino, Switzerland, Spain, United Kingdom, United States, and Vatican City — you will be paid according to the 35 percent royalty program.

Once you've selected your royalty information, you can quickly complete Steps 9 and 10 by deciding whether to participate in the Kindle MatchBook program (you may be interested if you also sell a print version of your book), and/or the Kindle Book Lending program. More details are available at the site.

Publish Your Book

When you're happy with the state of your uploaded book, and you've completed all of the required information KDP requires (Steps 1 through 10 at the KDP site), click the checkbox at the bottom of the KDP page to confirm you have all rights necessary, and then click "Save and publish" to submit your book to the Kindle Store.

Amazon says, "It usually takes approximately 12 hours for your book to be available for purchase online (48 hours for non-English books). If you already have a print book for sale on Amazon, we will automatically link the titles. It can take up to 48 hours after your book has been listed on Amazon for the books to become linked."

You can check your KDP Bookshelf to see the status of your book.

Review and Make Any Changes

Once your book has been published, you should go check out its Kindle Store page (easy to access via your KDP Bookshelf) and make sure the information is all correct and optimal, and that the cover and preview sample look good.

Sadly, my experience has been that the preview sample does not display your book to best advantage, as it sticks to very basic formatting. It especially ignores CSS, so you might get better formatting in your preview sample if you use only HTML for that section of your book (for example, use <p align="center"> and </p> around the images you want centered in the preview sample, instead of using a CSS style definition).

If you need to make any changes to your book's Amazon information or description, you can go to your KDP Bookshelf and choose "Edit Book Details" from the rightmost column ("Other Book Actions").

If you need to make changes to your book text or HTML code, you can do so by changing your .html file in Your Book Folder, saving it, and re-uploading to Amazon (KDP Step 5).

Buy a Copy of Your Book and Do Some Marketing

Splurge and buy a copy of your new Kindle book. Enjoy it (hopefully), and make sure it looks the way you want; make sure that all the electrons got delivered to your computer in the right order.

If you don't have a Kindle to read your book on, you can download a free Kindle reader for either Mac or PC. It's towards the bottom of the page linked above; Amazon calls it "Kindle for PC/Mac".

Amazon's suggestions for ways to promote your Kindle book. Thinkwritten.com offers a good list of 50 free book marketing ideas.

The 4000-character description on your Kindle Store page (provided by you) is your best showcase to make sure appropriate keywords are found by the people who are looking for books like yours via Amazon's search engine.

And of course you're going to want to tell all your friends, online and otherwise, about your great new Kindle book.

Also, encouraging people to leave (good) reviews on your book's Amazon page is well worth doing, and will improve your standing in the Amazon search engine. After the initial publication, you'll be able to go find the URL of your book's review page on Amazon, and you can grab that and put it at the end of your book (or wherever), asking people to leave reviews. And then reupload the revised manuscript and republish. For example:

* * *

If you'd like to leave a review of this book, please click here.

* * *

Supplemental Notes

Lame third-party documentation. Amazon's documentation is certainly bad, but third-party Kindle documentation is often worse. When I was learning to convert books to Kindle, I was sometimes desperate for information I could not find anywhere for free, information that third-party how-to-Kindle books represented in their advertising blurbs as questions they would answer for me, problems they would fix.

But that was not the reality — not by a long shot.

There is some decent documentation out there depending on your situation and expectations — but here's what I heard most of the third-party documentation saying to me once I actually got into it and looked around:

  • "This book will take you 85% of the way there, and that's the most anyone should expect."
  • "No, you can't adjust the heading formatting."
  • "First, you need to download all these pieces of my favorite funky software, including an open source browser."
  • "I might give you a piece or two of useful information, but you'll have to read about my sister's trip to Albuquerque if you want to extract it."
  • "Of course I left out that step. It's obvious what you're supposed to do."
  • "A lot of people think my Kindle book looks unprofessional. But I believe it looks wonderful."
  • "You MUST follow this very narrow path I have carved out EXACTLY, and it must work with your configuration of hardware and software, and you must somehow manage to overcome the wrong and/or incomprehensible instructions I strew in your path, or I can't help you at all, sorry."
  • "I've had horrible experiences, and I hate Amazon — all through my book."
  • "It's beyond the scope of this book why your file won't convert to Kindle. Buy my other book to learn more."
  • "I'm not really that up on the Kindle conversion process, but I am great at marketing this book on the subject."

Why you shouldn't use Amazon's Kindle instructions for MS Word documents. Beware of following Amazon's instructions for submitting an MS Word document for Kindle processing. They suggest that you use MS Word to save your .doc file as a .htm file ("Save as Web Page, Filtered"), and submit the resulting file to Kindle processing. They encourage you to think everything is going to be fine if you let Microsoft Word write the HTML code (which controls the formatting of your book). That often does not jibe with user reality, especially for books with complicated formatting.

If you were to open the .htm file that Word would create from your book, as Plain Text, so as to display the code Word wrote (even if you save your book as the leanest, cleanest HTML code Word can write), you would see something like the picture below — a bunch of complex CSS and HTML code that Kindle may or may not be able to process correctly — code that you will likely need to tweak if your book doesn't come out perfect first time through, or if you want it to look really nice.

I underwent a 12-hour video course on using MS Word, but I would not use Word's "Save as Web Page" option to format Kindle books because it can come with insoluble problems. What if a Word-generated .htm file chokes the Kindle processor and refuses to convert? What do you do then? Your Word document looks fine to you. And the HTML and CSS code that Word generated is a confusing mess to non-programmers (and to programmers).

Here's a simple example of the kind of thing that happens using Amazon's instructions. I save my Word file as a filtered web page, and run the resulting .htm file through the Kindle previewer. Doesn't look too bad except...

...hmmm, why are some of the paragraphs indented more than others? The file looks fine in Word; there doesn't appear to be any difference between the paragraphs that are indented a little and those that are indented a lot....

Luckily, I know some HTML so I can open the .htm file in a code editor and see what the problem is.

Gnarly code, but surely if I plow through it I'll find the problem. Except, agh, both paragraphs are coded exactly the same! And, lamely, Word has inserted nonbreaking spaces to indent the paragraphs, and there are the exact same number of nonbreaking spaces for the paragraphs that are indented differently. Obviously, something nonobvious is going on that I do not understand. Now what? I don't even want to think about it.

As I show in this book, instead of letting MS Word turn my book into HTML code, I can use a nice sane online "Word to Clean HTML" converter, then type a little bit of simple HTML code into my book, and maybe a little CSS, both of which are easy to understand, and then I don't have to troubleshoot the masses of intricate code generated by Saving a Word document as Web Page. I am familiar with my book's HTML code and can control it.

So yes, it's understandable that your manuscript is in MS Word, but get it out of there at the first opportunity (as this book describes). Don't let Word write your HTML code!

After editing and laying out many book manuscripts created in MS Word, I must say that I would walk quite a few miles to avoid spending time there. "Microsoft Hell" is a real place. It's created by the fact that you are helpless in the maw of a big, poorly cobbled-together piece of dysfunctional corporate committee-"designed" PC-spawned profit-driven software, or its clones.

By learning a little HTML yourself, you take charge of the reins, and go clip-clopping around the park with sane, sensible HTML code, instead of being roasted over a spit.

How to Kindle a Word .doc, according to Amazon. Since your book's already in Word, you may want to try processing it and see what you get. (I have invariably found it to be a waste of time.) To try it, put your book (except for the cover) all in one .doc file, and choose "Save as Web Page, Filtered (*HTM & *HTML)". If you have an older version of Word that doesn't say "Filtered", you can get the same thing by choosing "Save as Web Page" and then clicking the "Save only display information into HTML" radio button. If you have any graphics inserted in your document, Saving as Web Page will extract them, convert them to a web format (not necessarily the formats Kindle prefers), and place them in a separate folder. Then you need to download the Kindle previewer, use it to open the .htm file that Word created, and see what your book looks like. Hopefully, it looks very nice, because otherwise how are you going to fix it?

An alternative way to extract graphics from MS Word. In MS Word, you can "Save as Web Page", causing Word to strip out all your graphics and format them for the web (not necessarily with handcrafted tenderness). If you do this, you will need to move (or copy) the graphics from the folder Word will put them in, into Your Book Folder you created in Step 2. Just ignore or delete the .htm file Word creates. You'll still be working with your .doc file.

Possibilities for non-.doc book files. You may first want to try viewing your book through the Kindle previewer if it's in any of the formats Amazon accepts: ePub (.epub), Plain Text (.txt), MobiPocket (.mobi), PRC (.prc), and PDF (.pdf) — although Amazon specifically cautions against expecting a .pdf or .rtf to work well. To try processing your document, use the Kindle online previewer, to (hopefully) see what your book looks like. The question, of course, is how to make changes to the book, how to fix the inevitable problems. You may be able to use the "Download HTML" link under Step 6 of your Kindle KDP Bookshelf (Step 20), and then use the information in this book to troubleshoot that .html file. There will be some differences, though; for instance, Kindle processing will have placed your graphics in a separate folder (and you should leave them there).

If your document is not in Microsoft Word but is in a format that Word can open, such as .rtf, it is worthwhile making your file into a MS Word document if you can. This will give you better, though incomplete, results if you use Olly's online MS Word to HTML converter (Path 9A). All you would have to do is open it with Word and Save it as a .doc.

If your book is currently in web page form, you can try opening the .htm or .html source using the Kindle previewer and see what you get — although Amazon cautions that complicated HTML meant for the web does not translate well to the Kindle. If it doesn't go well, you might want to try stripping out all of the HTML code that isn't specified in this book.

If your book is in InDesign, Amazon offers a free beta plug-in to convert it for Kindle (see next section below), but I was not impressed with it, plus you don't easily end up with an .html file you can edit.

The simplest solution may be to select and copy text and paste into a .doc file in Your Book Folder. (Depending on how your InDesign document is set up, Story Editor may be useful.) Your file will retain a lot of its formatting (probably with some funkiness here and there), which is helpful for using Olly's online converter, or as a reference for you when creating HTML code. You should put any graphic files in the Your Book Folder also. If you need to extract your graphics from InDesign, keep reading.

If you use InDesign's "Export for Dreamweaver" option, you'll notice that it creates a pretty decent .html file which you could use to give yourself a headstart on preparing your book file for Kindle, allowing you to fly right over some of the step-by-step procedures in this book, especially if you know what you're doing. If you choose the "No CSS" option when exporting, the code in the HTML file will be HTML without any CSS. If you instead choose "Empty CSS Declarations", you'll get a very helpful bit of coding to help you convert InDesign styles to CSS styles for Kindle.

In my experience, the resulting HTML has too many <div> </div> tags, and the Kindle processor-previewer seems happier if I delete them all.

"Export for Dreamweaver" will give you an HTML version of your main text, and then plopped after that you'll get a stream of HTML versions of your pix, captions, sidebars, credits, etc. (unless these items are all embedded, in which case they should be in the correct positions in your text).

My experience is that "Export for Dreamweaver" does a poor job of exporting graphics in good condition, and it's probably best, when exporting your book, to choose to keep the original graphics and not have any conversion done to them by InDesign. If they're huge graphics, or not web-friendly file formats, you can make them ready for Kindle as we discuss in Step 5 and Step 15, for instance by using Adobe Photoshop's "Save for Web and Devices".

Since I wanted not only the graphics, but the credit line and the caption to accompany each picture, I exported each instance separately by selecting the three elements and then using InDesign's "Export" command at 300dpi.

If you decide to use the .html file that InDesign created, put it into Your Book Folder you created in Step 2. Your graphics files should go there, too. Open the .html file so it displays as code, and use it as you go through the steps in this guide (you'll have to figure out which ones apply to you; for instance, you won't be needing to run your file through Olly's converter, nor convert your file to .html). Note that this .html file (specifically, its <img /> tags) believes your graphics are living in the folder Dreamweaver created for them when you chose "Export for Dreamweaver", even those versions of the graphics are probably not the ones you want. The best solution is to move the graphics you want to use into Your Book Folder, and remove the Dreamweaver folder name from the <img /> tags in your .html file.) If it all sounds too difficult, you could try reading through this book and then see how you feel about dealing with Dreamweaver's .html file.

Another option for getting text out of InDesign is to click in a text block that you want to export, then choose File/Export... and then choose Rich Text Format. Your text will retain a lot of its formatting (and may also accumulate a little weirdness or two (such as two paragraphs that were in the same font but are now shown each in a different font). But even if you then Save the .rtf as a .doc in MS Word, it'll never qualify for the full automatic conversion that Oliver's online converter gives to a bona fide Word file — but partial conversion can be way better than no automatic conversion at all.

Adobe InDesign plug-in. If your document is in Adobe InDesign, Amazon has a free beta version of a plug-in to convert it for the Kindle, which you may want to try, especially if your document is only one column. It will be converted into a AZW/MOBI/PRC file, which I cannot help you troubleshoot. Alternatively, you might prefer using the methods in the previous section.

To try processing your InDesign document using the plug-in, download and install it (not a walk in the park). With your entire book (except the cover) all in one InDesign file, choose File Menu/Export for Kindle. You'll then get to choose how your footnotes and images are formatted, whether you want embedded fonts, and which graphic you want to use for the book cover. Then Export for Kindle will create your book as a .mobi file. Download the Kindle processor-previewer and open your file with it to see what your book looks like.

If your book is currently a PDF, Adobe Acrobat lets you Save as MS Word Document, or Export as one, but I had zero success getting Olly's online MS Word to HTML converter to recognize it as a real MS Word .doc file. I also managed to crash Word three times trying. You should be able to successfully Save your PDF as Plain Text if you don't find losing formatting. (Saving as HTML would create a complex and confusing HTML/CSS-coded file.)

You can select and copy the text out of your PDF — using a reader such as Acrobat or Preview — and paste it into a .doc file. You will likely lose all your formatting except for font sizes, plus you will now have a paragraph return at the end of every line, meaning your text is no longer reflowable as Kindle requires. So you'll have to use some fancy "Find and Replace" options in Word, or put your text into an online break remover, to get your text into shape.

Adobe Reader, which is available free online, offers you the opportunity to Save As (unformatted) Text (it won't include any graphics). It also offers you Save As Word or Excel Online — for a price, that is. For $19.99 a year, you can subscribe to an online Acrobat tool (Adobe ExportPDF) to convert .pdf to Microsoft Word .docx (including graphics) but it does not look like a barrel of fun. Its aim is to give you a Word file that looks like your PDF layout did, so you may get wildly inappropriate Word formatting to complicate the eventual conversion to HTML, and it probably won't work with Olly's converter.

If you can't figure out how to get the text out of your PDF (for instance, it's not really text but a scanned picture), there is a lot of help available on the internet.

Extracting graphics from a PDF. If your book is currently a PDF, Version 6 of Adobe Acrobat (and newer) offers you the ability to choose from the Advanced Menu: Document Processing/Export All Images. Versions 4 and 5 of Adobe Acrobat let you choose "File Menu/Export/Export Images As".

Also, you should be able to select your images in the PDF, copy them, and paste them into a new file in your graphics editor. If you can't figure out how to get the graphics out of your PDF, there is a lot of help available on the internet.

Using an external CSS style sheet. If you want to use an external CSS style sheet, put your style definitions (the info located between your .html file's <style> and </style> tags, if you follow the CSS instructions in this book) into a separate plain text document in Your Book Folder called "style.css". (Delete from <style> to </style>in your .html file.) Then, between your .html file's <head>and </head>tags, type:

<link rel="stylesheet" type="text/css" href="style.css" />

Be sure your style.css file is in Your Book Folder and gets included when that folder gets zipped and uploaded to Amazon.