Common EPUB Validation Errors (And How to Fix Them) — KDP, Apple Books & Kobo
If you've ever uploaded an EPUB that looked perfect in preview and still got rejected, you're not alone. EPUB validation errors are one of the most frustrating parts of self-publishing — the file opens fine on your laptop, but KDP, Apple Books, or Kobo reject it for reasons that aren't always clear from the error message alone.
This guide covers the most common EPUB validation errors, what they actually mean, and how to fix each one — plus why the same file can pass on one platform and fail on another.
Why Your EPUB Can Pass Preview But Still Get Rejected
Amazon's KDP Previewer and Apple Books both use their own rendering engines, and neither one runs a full EPUBCheck validation before showing you a preview. The previewer is built to display your file, not to catch every structural error in it. That's why a file can look completely normal in the previewer and still fail validation when the platform actually processes it for distribution.
The real validation happens later, using a much stricter set of rules — and different platforms enforce those rules differently. Understanding this gap is the first step to avoiding rejected uploads.
Error: "Exactly One Manifest Item Must Declare the 'nav' Property"
This is one of the most common EPUB 3.0 errors, and it usually shows up as something like:
oebps/content.opf: error while parsing file: exactly one manifest item must declare the 'nav' property (number of 'nav' items: 0)
What it means: Every EPUB 3.0 file needs a navigation document — a special XHTML file that acts as your table of contents and is explicitly marked as the "nav" item inside the OPF manifest. If this declaration is missing, empty, or was stripped out during conversion, the file fails validation immediately.
How to fix it: Open your OPF file and check the manifest section for an item with properties="nav". If it's missing, you'll need to either add the nav property to your existing TOC file's manifest entry, or generate a proper navigation document if one doesn't exist. This is one of the most common issues we see when a Word-to-EPUB conversion doesn't handle the table of contents correctly.
Error: Duplicate IDs in the Manifest or Spine
Another frequent issue is duplicate id attributes across manifest items or spine references. EPUB requires every ID inside the file to be unique — even across different XML files that reference the OPF.
What it means: Somewhere in the conversion process, two elements ended up with the same identifier. This often happens when chapters are merged, split, or reordered without updating their internal references.
How to fix it: Run the file through a validator that flags exact ID locations, then manually rename the duplicate. If you're doing this by hand in a text editor, search the entire OPF and each XHTML file for the conflicting ID string to make sure you catch every reference to it.
Error: Ghost Spacing and Broken OPF Manifests
This one is sneaky because it's often invisible until a specific device or storefront tries to render it. Ghost spacing usually comes from leftover empty paragraph tags, non-breaking spaces, or inconsistent line breaks carried over from a Word export.
What it means: Your file technically validates, but the reading experience is broken — awkward gaps between paragraphs, inconsistent spacing before headings, or unexpected blank pages. KDP might accept a file with ghost spacing because its validation is more forgiving, while Apple Books or Kobo enforce stricter formatting checks and either reject the file or flag it during review.
How to fix it: Clean up leftover empty tags and non-breaking space characters directly in the HTML/XHTML source, not just in the visual editor. This is exactly the kind of issue that passing one platform's check doesn't guarantee against another's — always test your file across multiple validators, not just the one your target platform provides.
Platform-by-Platform: Why the Same File Behaves Differently
| Platform | Validation strictness | Common failure point |
|---|---|---|
| Amazon KDP | More forgiving | Missing nav property, broken TOC links |
| Apple Books | Stricter | Ghost spacing, manifest metadata gaps |
| Kobo | Moderate | Cover image embedding, CSS compatibility |
| IngramSpark | Strictest | Any EPUBCheck error at all — no tolerance |
If you're publishing across multiple platforms, the safest approach is to build for IngramSpark's strict standard first. A file clean enough to pass there will almost always pass everywhere else — including KDP, Apple Books, and Kobo.
"My EPUB Looks Fine in Preview But Gets Rejected" — What's Really Happening
This is one of the most common complaints from indie authors, and it comes back to the same root cause every time: the previewer and the validator are not the same system. The previewer renders what it can and quietly ignores what it can't. The validator checks the file against the full EPUB specification and rejects anything that doesn't match — even issues that never show up visually.
If your file previews cleanly but still gets bounced, the fix isn't to keep tweaking what you can see. It's to run the actual file through a proper EPUBCheck-based validator and read the line-by-line errors it returns, since those are the same checks the platform runs on the back end.
How to Validate Before You Upload
Before submitting to any platform, run your EPUB through a validator that checks structure, metadata, and manifest integrity — not just visual formatting. Look for:
- A clean pass with zero EPUBCheck errors, not just "no visible issues"
- A properly declared nav document
- No duplicate IDs across the manifest or spine
- No leftover empty tags or spacing artifacts from your original Word or Google Docs export
Catching these issues before upload saves you the back-and-forth of a rejected submission — and the multi-day wait to hear back from KDP or Apple Books review.
Want to check your EPUB before uploading? BookKraft AI's free EPUB Validator runs a full structural check — no signup required — and flags exactly the kind of issues covered in this guide before you submit to KDP, Apple Books, Kobo, or IngramSpark.
