Common EPUB & KDP Validation Errors Decoded
Your EPUB got rejected with an error code. Here's what the most common validation errors actually mean—in plain English—and how serious they are.
You submit your EPUB to Apple Books. Minutes later, you get a rejection email with an error code: RSC-012. Or OPF-014. Or PKG-007.
You have no idea what these codes mean. You Google them. You find 47 different explanations. None of them make sense.
Here's the frustrating truth: These error codes are EPUB validation errors that Amazon ignores, but Apple Books, Kobo, and IngramSpark reject immediately.
This is called the validation gap, and it's why the same EPUB file can pass Amazon KDP but get rejected by every other retailer.
Got a validation error and want it fixed?
I validate and fix EPUBs before delivery. Pricing starts at $49. Send your EPUB here.
Understanding EPUB Validation Errors
When you upload an EPUB to a retailer, they run it through a validator (usually called EPUBCheck). This tool checks if your file follows the W3C EPUB 3.0 standard—basically the rulebook for how ebooks should be structured.
Amazon's approach: Lenient. Amazon will accept files with errors and silently fix many issues on its end.
Apple, Kobo, IngramSpark: Strict. They reject any file with errors. They don't fix anything for you.
This is why a file that passes KDP validation can fail everywhere else. Amazon and the others are running different validation rules.
The 5 Most Common EPUB Validation Errors
RSC-012: Fragment Identifier Is Not Defined
What it means: A link in your EPUB points to something that doesn't exist. Specifically, a hyperlink references an anchor ID that isn't actually in the file.
Why it happens:
- Your table of contents links to Chapter 5, but Chapter 5's heading doesn't have the ID the TOC expects
- You have a footnote reference that points to an endnote that doesn't exist
- You have a "jump to page" link in your front matter but the target page ID is missing
- InDesign's "Page Navigation" export created links to pages that don't exist in reflowable EPUB format
Real example: TOC says "Go to #introduction" but the actual chapter heading has ID "intro-chapter"—mismatch = error.
Why Amazon accepts it: Amazon silently fixes broken navigation links.
Why Apple rejects it: They want your file to be structurally correct. Broken links = broken reading experience.
Deep dive: Read the full RSC-012 guide with step-by-step fixes.
RSC-005: Error While Parsing File
What it means: Invalid XML or broken HTML markup in one of your EPUB files. The validator tried to read the file and found malformed code.
Common causes:
- Unclosed tags (e.g.,
<p>Text here</div>— opened with p, closed with div) - Invalid attributes on tags
- Special characters not properly encoded (e.g., an ampersand that should be &)
- Broken line breaks or hidden characters from Word/Google Docs imports
DIY fix difficulty: Hard. Requires unzipping the EPUB, opening the XHTML files in a text editor, finding the exact error, and fixing the markup.
OPF-014: Property Should Be Declared
What it means: Your EPUB contains a feature (like an image type or special content) but didn't declare it in the manifest file.
Common causes:
- SVG images in your EPUB without declaring
properties="svg"in the manifest - JavaScript or interactive content without declaring
properties="scripted" - Embedded fonts without proper declaration
- MathML equations not declared
Why this happens: Your formatting tool or converter didn't properly register all the file types it included.
DIY fix difficulty: Very hard. Requires understanding EPUB manifest structure and editing the OPF file directly.
PKG-007: Mimetype Must Be First and Uncompressed
What it means: Your EPUB is a ZIP file, but the internal file structure is wrong. Specifically, the mimetype file isn't the first file in the ZIP, or it's been compressed.
Why it happens: You unzipped your EPUB, made changes, and re-zipped it using standard ZIP tools. Standard ZIP tools don't preserve the EPUB-specific requirements (mimetype must be first, uncompressed).
DIY fix difficulty: Moderate. You need to use EPUB-specific tools or ZIP commands with special flags to re-compress correctly.
OPF-027: Undefined Property (InDesign-Specific)
What it means: InDesign added metadata properties that aren't properly defined in the EPUB spec.
Why it happens: You exported your book from InDesign using the "Page Navigation" feature. This creates page-based anchors that don't actually exist in reflowable EPUB (ebooks reflow based on screen size, so "pages" aren't a real concept).
DIY fix: Go back to InDesign, uncheck "Page Navigation" in the EPUB export options, and re-export.
DIY fix difficulty: Easy if you have the original InDesign file. Impossible if you don't.
Quick Error Severity Guide
| Error Code | What It Means | Severity | DIY Fixable? |
|---|---|---|---|
| RSC-012 | Broken link / missing anchor ID | High | Moderate |
| RSC-005 | Invalid XML / broken markup | High | Hard |
| OPF-014 | Property not declared in manifest | Medium | Very Hard |
| PKG-007 | ZIP structure wrong (mimetype issue) | Medium | Moderate |
| OPF-027 | InDesign metadata issue | Medium | Easy (if you have source) |
Why DIY Fixing These Errors Is Painful
Even the "easier" errors require a specific workflow:
- Unzip your EPUB file (rename .epub to .zip, then unzip)
- Find the error location using EPUBCheck output (it will tell you which file has the problem)
- Open the file in a text editor and find the exact problem line
- Fix the problem (change an ID, fix a tag, etc.)
- Re-zip the EPUB correctly (with mimetype first and uncompressed)
- Validate again with EPUBCheck to see if you fixed it
- Repeat steps 2-6 until zero errors
This process typically takes 1-3 hours for someone who knows what they're doing. For someone new to EPUB, it can take a full day or more.
And if you make one typo in the markup, the entire file breaks and you have to start again.
The Platform Validation Reality
Amazon KDP: Will accept your file with RSC-012, RSC-005, OPF-014, and other errors. Amazon silently fixes them on its end. You never see the error.
Apple Books: Rejects the file immediately with an error message. Won't accept it until all errors are fixed.
Kobo: Same as Apple. Strict validation, no exceptions.
IngramSpark: Same as Apple. Very strict. Print-on-demand requires perfect files.
Google Play Books: Same as Apple. Strict validation.
This is why the same EPUB can pass KDP but fail everywhere else. You're literally uploading to retailers with different validation standards.
The Practical Reality
Most authors who hit validation errors do one of two things:
- Spend 2-4 hours debugging XML to fix the error themselves
- Hire someone to fix it ($50-150 depending on complexity) and move on
If your time is worth $25+/hour, option 2 is usually cheaper. And you're guaranteed the file will actually pass validation.
How to Prevent These Errors
- Use a professional formatter who validates before delivery
- Test your EPUB with EPUBCheck before uploading anywhere
- Don't manually edit EPUB files unless you know what you're doing
- If using InDesign: Uncheck "Page Navigation" in EPUB export
- Use proper anchor IDs when creating internal links (match your heading IDs exactly)
Tired of validation errors blocking your launch?
I validate every EPUB before delivery and fix any errors. You get a file that passes Apple Books, Kobo, IngramSpark, and every major platform—no debugging required.