EPUB preflight
How to validate an EPUB for Kindle
A book opening in one reading app does not prove its package is complete. Validate the container, declarations and referenced resources before Send to Kindle.
Validation compares the publication with the EPUB specification. It cannot predict every choice in Amazon’s conversion service, but it can expose broken structure before upload. Amazon also recommends checking EPUBs with tools such as Kindle Previewer for publishing workflows.
1. Confirm the EPUB container
The archive must contain the required mimetype entry and META-INF/container.xml. The container file must point to an existing package document. A file that merely has an .epub extension is not necessarily an EPUB.
2. Parse the package document
The OPF file must be well-formed XML and contain the required publication metadata, manifest and spine. Correct fatal parser errors first. A single unescaped character can prevent all later checks from producing reliable results.
3. Resolve every manifest resource
Check that each declared href resolves from the OPF location and that each used chapter, image, stylesheet, font and navigation document is declared. Compare path capitalization and media types with the actual files.
4. Verify the reading order and navigation
Every spine itemref must reference an existing manifest item. Open the table of contents and follow several links, including one with spaces or non-ASCII characters in its path. EPUB 3 publications should identify the navigation document with the appropriate manifest property.
5. Inspect the cover
Confirm that a real JPG, PNG or supported image exists and that the manifest identifies it consistently. EPUB 3 uses properties="cover-image". EPUB 2 commonly uses a meta name="cover" element that points to the image item ID. There should not be multiple competing cover declarations.
6. Review XML, XHTML and encoding
Open content documents as XML where appropriate. Look for invalid nesting, missing closing tags, undeclared entities and bytes that do not match the declared encoding. Garbled punctuation often starts with text saved in one encoding and declared as another.
7. Rebuild and reopen the result
A repair is incomplete until the new ZIP is tested. Reopen the rebuilt EPUB, inspect its contents and run validation again. Preserve the original. Good repair tooling should produce a separate output rather than silently replacing the only copy.
Validation errors and warnings are different. Fix errors that make resources unreadable or references impossible. Review warnings in context; changing harmless metadata only to obtain a perfectly quiet report can introduce unnecessary risk.
EPUBCheck, Kindle Previewer and FixMyEPUB
EPUBCheck is the W3C-maintained conformance checker and provides broad specification coverage. Kindle Previewer helps publishing workflows see how Amazon may render a book. FixMyEPUB is narrower: it explains cover declarations and common Send to Kindle delivery blockers, performs safe repairs, and runs entirely in the browser.
Run a focused Kindle preflight
Check the cover and common delivery blockers without sending the EPUB to our server.
Validate my EPUB →