Checked repair available
A repaired EPUB download appears when all issues are auto-fixed and the second EPUBCheck run passes.
Download the repaired copy, keep your original EPUB, then retry KDP, Kindle Previewer, or EPUBCheck.
See how the live result page changes when a checked repair is ready, blocked by manual decisions, or stopped at a source-export boundary. The point of this page is to show why a download appears, why it does not, and what the next repair path looks like.
Checked repair available
A repaired EPUB download appears when all issues are auto-fixed and the second EPUBCheck run passes.
Download the repaired copy, keep your original EPUB, then retry KDP, Kindle Previewer, or EPUBCheck.
Manual decisions blocking repair
Some issues still need a human decision before a checked download is ready.
Use the remaining issue list and the repair summary to fix the source EPUB yourself or keep the details for later edits.
Unsupported by this scanner
Fixed-layout, DRM, image-first, or source-conversion issues are diagnosed but not repaired here.
Use the report paths and error text in your source tool, EPUB editor, or export workflow.
How to read these samples
Each sample uses the same live result-page sections: affected paths, original errors, repair decisions, repair log, and next steps.
A checked download appears only in the sample state where the written repair passes another EPUBCheck run.
When the scanner should not choose the fix, the report stays in explanation mode and keeps a copyable repair summary for your own fix notes.
Report states
cleaned-after-repair.epub
multiple-errors.epub
fixed-layout-or-drm.epub
Full sample states
Each sample below uses the real result-page structure: decision board, repair log, copy summaries, and retry evidence when that state supports them. Sample pages do not create real downloads or store feedback.
This is the full result-page state when every listed issue can be repaired safely and the second EPUBCheck pass succeeds.
Checked repair available
Repaired EPUB is ready for retry.
Download it, then test the same file in KDP or Kindle Previewer.
Download the repaired EPUB, then retry the same file.
Use KDP, Kindle Previewer, or EPUBCheck again before treating the repaired copy as final.
Report snapshot
| Scan status | Scan complete |
|---|---|
| File type | accepted |
| Download | Repaired file ready |
| Checked repair changed | OPF identifier wiring, OPF media types, nav.xhtml manifest declaration, OPF manifest entries |
| Repair summary | 3 auto-fixes were applied and the repaired file is ready for retry. |
| Second EPUBCheck result | The repaired EPUB passed the second EPUBCheck run, so the checked download is available. |
| Retry evidence | EPUBCheck passed, KDP still failed, Kindle Previewer not tried yet, same error |
| Report ID | sample-checked-repair |
Checked in this report
Decision flow
The checked download is ready. Download it, retry the same file, and record the retry result on this report.
Repaired file ready
This repaired EPUB passed a second EPUBCheck run after these structure changes: OPF identifier wiring, OPF media types, nav.xhtml manifest declaration, OPF manifest entries.
This sample does not include a real file. Your own upload gets a repaired EPUB only after the second EPUBCheck pass.
| Blocking reason | Affected file | Who should handle it | Could this become auto-fixable later? | What is still needed |
|---|---|---|---|---|
| Checked repair available | Repaired EPUB package | Author | Already repaired and checked here. | Latest retry evidence: EPUBCheck passed, KDP still failed, Kindle Previewer not tried yet, same error. |
Automatic repairs already checked
These structure changes were already written and then checked again with EPUBCheck.
Affected file: OEBPS/content.opf
Where to checkOPF package identifier in OEBPS/content.opf
Why it failedThe package unique-identifier points to an ID that is not declared as a dc:identifier.
Source fileOEBPS/content.opf
Repair decisionCan auto-fix when an existing identifier can be matched safely.
What changed / did not changePoint package unique-identifier to the existing book identifier.
Before retrying KDPMake package unique-identifier match an existing dc:identifier id in the OPF metadata.
Original errorOPF-030 The unique-identifier "null" was not found.
Opens the paragraph for the missing identifier id and highlights the package-to-metadata link to check.
Open repair guideAffected file: OEBPS/images/cover.png
Where to checkOPF manifest media type for OEBPS/images/cover.png
Why it failedThe OPF manifest says this file has one media type, but the file extension or content points to another type.
Source fileOEBPS/images/cover.png
Repair decisionCan auto-fix when the existing file has a deterministic media type; otherwise review the file manually.
What changed / did not changeUpdate the manifest media-type to image/png.
Before retrying KDPCheck the manifest item for this file and set media-type to the type that matches the actual file.
Original errorManifest media-type does not match the file extension
Opens the paragraph for this media-type mismatch and highlights the content.opf change to check.
Open repair guideAffected file: OEBPS/nav.xhtml
Where to checkTable of contents declaration in OEBPS/nav.xhtml
Why it failedEPUBCheck cannot find exactly one EPUB 3 navigation document declared in the OPF manifest.
Source fileOEBPS/nav.xhtml
Repair decisionCan auto-fix when there is one clear nav XHTML file.
What changed / did not changeAdd nav.xhtml to the manifest and keep properties="nav".
Before retrying KDPMake one manifest item point to the nav XHTML file and include properties="nav".
Original errorFile exists but is missing from the OPF manifest
Opens the paragraph for declaring nav.xhtml in content.opf and highlights the TOC wiring to check.
Open repair guideThis is the full result-page state when the report can explain the problem, but the correct next step still needs your decision.
Review needed before retry
A checked download is not ready for this EPUB.
Resolve the remaining issues before you expect a repaired download.
Review the remaining issues before you retry this EPUB.
Start with Link and anchor issues. Use the decision flow below to keep the paths, errors, and next step together while you fix the source file.
Review manual issuesReport snapshot
| Scan status | Scan complete |
|---|---|
| File type | accepted |
| Download | No checked download yet |
| Checked repair changed | OPF media types, OPF manifest entries, OPF identifier wiring, nav.xhtml manifest declaration |
| Repair summary | EPUB Fixer already checked 9 clear fixes, but 15 issues still need your review, so no checked download is available yet. |
| Second EPUBCheck result | The checked repair was written, but EPUBCheck still reported issues. Review the remaining issue list before retrying KDP. |
| Report ID | d7qkpb34nt952e4i7rng |
Checked in this report
Decision flow
Use this section in order: review the remaining issues, copy the repair summary if you need it, then check what EPUB Fixer already changed.
| Blocking reason | Affected file | Who should handle it | Could this become auto-fixable later? | What is still needed |
|---|---|---|---|---|
| Manual EPUB structure decisions (11) | EPUB package structure, OEBPS/content.opf | Author or EPUB editor / EPUB editor | Later only if real uploads show one deterministic repair path. | You need to confirm the intended target before editing. |
| Navigation or TOC decisions (3) | EPUB package structure | Author or EPUB editor / EPUB editor | Later only if real uploads show one deterministic repair path. | Confirm the intended nav, NCX, spine, or TOC target before rebuilding navigation. |
| Anchor target decisions (1) | OEBPS/nav.xhtml | EPUB editor | Later only if real uploads show one deterministic repair path. | Choose the intended anchor or reading location before editing links. |
Automatic repairs already checked
These structure changes were already written and then checked again with EPUBCheck. Review the remaining issues before expecting a checked download.
Where to checkNavigation link target
Why it failedA navigation entry points to a resource that is not part of the book reading order.
Repair decisionNeeds manual review because the target may need to be added to the spine or removed from navigation.
What changed / did not changeEPUB Fixer did not change this item because the right fix needs a source-file, EPUB editor, or publishing-platform decision.
Before retrying KDPCheck whether the linked file should be in the spine, or change the navigation link to a spine item.
Original errorRSC-011 Found a reference to a resource that is not a spine item.
Opens the paragraph for TOC targets that do not resolve to spine content and highlights the link to check.
Open repair guideOEBPS/nav.xhtml -> Text/chapter2.xhtml#intro
Where to checkBroken internal link anchor in OEBPS/nav.xhtml
Why it failedA link points to an anchor id that does not exist in the target XHTML file.
Source fileOEBPS/nav.xhtml
Referenced pathText/chapter2.xhtml#intro
Target fileOEBPS/Text/chapter2.xhtml
Target file existstrue
Target anchor existsfalse
Closest matchsection-intro
Repair decisionNeeds manual review because the correct anchor or link target depends on the book content.
What changed / did not changeEPUB Fixer did not change this item because the right fix needs a source-file, EPUB editor, or publishing-platform decision.
Before retrying KDPCheck the href fragment after # and make it match an existing id in the target file.
Original errorOEBPS/nav.xhtml links to "Text/chapter2.xhtml#intro"; target file: OEBPS/Text/chapter2.xhtml; target file exists: true; target anchor exists: false; candidate anchors: section-intro
Opens the paragraph for this missing anchor and highlights what to check before editing the link.
Open repair guideWhere to checkEPUB 2 NCX wiring
Why it failedThe EPUB includes an NCX table of contents, but the OPF spine does not point to it.
Repair decisionCan auto-fix when there is one NCX manifest item.
What changed / did not changeEPUB Fixer did not change this item because the right fix needs a source-file, EPUB editor, or publishing-platform decision.
Before retrying KDPSet the spine toc attribute to the manifest id of the NCX file.
Original errorRSC-005 Error while parsing file: spine element toc attribute must be set when an NCX is included in the publication
Opens the paragraph for connecting toc.ncx from the OPF spine and highlights the NCX wiring to check.
Open repair guideAffected file: OEBPS/content.opf
Where to checkTable of contents declaration in OEBPS/content.opf
Why it failedEPUBCheck cannot find exactly one EPUB 3 navigation document declared in the OPF manifest.
Source fileOEBPS/content.opf
Repair decisionCan auto-fix when there is one clear nav XHTML file.
What changed / did not changeAdd properties="nav" to the clear nav manifest item.
Before retrying KDPMake one manifest item point to the nav XHTML file and include properties="nav".
Original errorEPUB 3 nav item is missing properties="nav"
Opens the paragraph for declaring nav.xhtml in content.opf and highlights the TOC wiring to check.
Open repair guideWhere to checkTable of contents declaration
Why it failedEPUBCheck cannot find exactly one EPUB 3 navigation document declared in the OPF manifest.
Repair decisionNeeds manual review because the correct navigation file is not clear.
What changed / did not changeEPUB Fixer did not change this item because the right fix needs a source-file, EPUB editor, or publishing-platform decision.
Before retrying KDPMake one manifest item point to the nav XHTML file and include properties="nav".
Original errorRSC-005 Error while parsing file: Exactly one manifest item must declare the "nav" property (number of "nav" items: 0).
Opens the paragraph for declaring nav.xhtml in content.opf and highlights the TOC wiring to check.
Open repair guideAffected file: OEBPS/content.opf
Where to checkEPUB 2 NCX wiring in OEBPS/content.opf
Why it failedThe EPUB includes an NCX table of contents, but the OPF spine does not point to it.
Source fileOEBPS/content.opf
Repair decisionCan auto-fix when there is one NCX manifest item.
What changed / did not changeAdd the NCX manifest id to the spine toc attribute.
Before retrying KDPSet the spine toc attribute to the manifest id of the NCX file.
Original errorEPUB 2 NCX is not linked from the spine toc attribute
Opens the paragraph for connecting toc.ncx from the OPF spine and highlights the NCX wiring to check.
Open repair guideAffected file: OEBPS/styles/book.css
Where to checkOPF manifest media type for OEBPS/styles/book.css
Why it failedThe OPF manifest says this file has one media type, but the file extension or content points to another type.
Source fileOEBPS/styles/book.css
Repair decisionCan auto-fix when the existing file has a deterministic media type; otherwise review the file manually.
What changed / did not changeUpdate the manifest media-type to the deterministic type for the existing file.
Before retrying KDPCheck the manifest item for this file and set media-type to the type that matches the actual file.
Original errorManifest media-type does not match the file extension
Opens the paragraph for this media-type mismatch and highlights the content.opf change to check.
Open repair guideAffected file: OEBPS/chap2.xhtml
Where to checkOPF manifest entry for OEBPS/chap2.xhtml
Why it failedA real EPUB file exists, but content.opf does not declare it in the manifest.
Source fileOEBPS/chap2.xhtml
Repair decisionCan auto-fix by adding the existing file to the manifest with the correct media type.
What changed / did not changeAdd the existing file to the OPF manifest with a deterministic media type.
Before retrying KDPAdd this file to the OPF manifest, then rerun EPUBCheck.
Original errorFile exists but is missing from the OPF manifest
Opens the paragraph for this missing manifest item and highlights the content.opf entry to check.
Open repair guideAffected file: OEBPS/styles/extra.css
Where to checkOPF manifest entry for OEBPS/styles/extra.css
Why it failedA real EPUB file exists, but content.opf does not declare it in the manifest.
Source fileOEBPS/styles/extra.css
Repair decisionCan auto-fix by adding the existing file to the manifest with the correct media type.
What changed / did not changeAdd the existing file to the OPF manifest with a deterministic media type.
Before retrying KDPAdd this file to the OPF manifest, then rerun EPUBCheck.
Original errorFile exists but is missing from the OPF manifest
Opens the paragraph for this missing manifest item and highlights the content.opf entry to check.
Open repair guideWhere to checkReading order / OPF spine
Why it failedThe reading order points to a manifest item id that does not exist.
Repair decisionNeeds manual review because the correct reading-order target is not clear.
What changed / did not changeEPUB Fixer did not change this item because the right fix needs a source-file, EPUB editor, or publishing-platform decision.
Before retrying KDPMatch each spine itemref idref to a real manifest item id, or add the missing manifest item.
Original errorRSC-005 Error while parsing file: itemref element idref attribute does not resolve to a manifest item element
Opens the paragraph for this missing OPF manifest id and highlights the package reference to check.
Open repair guideWhere to checkReading order / OPF spine
Why it failedThe reading order points to a manifest item id that does not exist.
Repair decisionNeeds manual review because the correct reading-order target is not clear.
What changed / did not changeEPUB Fixer did not change this item because the right fix needs a source-file, EPUB editor, or publishing-platform decision.
Before retrying KDPMatch each spine itemref idref to a real manifest item id, or add the missing manifest item.
Original errorOPF-049 Item id "missing-chapter" was not found in the manifest.
Opens the paragraph for this missing OPF manifest id and highlights the package reference to check.
Open repair guideWhere to checkImage file package entry
Why it failedEPUBCheck found an image file that is corrupted or cannot be read as its declared image type.
Repair decisionNeeds manual review because the image may need to be replaced or re-exported.
What changed / did not changeEPUB Fixer did not change this item because the right fix needs a source-file, EPUB editor, or publishing-platform decision.
Before retrying KDPOpen the image outside the EPUB, replace it if damaged, and confirm the OPF media type still matches.
Original errorPKG-021 Corrupted image file encountered.
Where to checkOPF package identifier
Why it failedThe package unique-identifier points to an ID that is not declared as a dc:identifier.
Repair decisionCan auto-fix when an existing identifier can be matched safely.
What changed / did not changeApply a deterministic package or metadata repair and revalidate.
Before retrying KDPMake package unique-identifier match an existing dc:identifier id in the OPF metadata.
Original errorOPF-030 The unique-identifier "null" was not found.
Opens the paragraph for the missing identifier id and highlights the package-to-metadata link to check.
Open repair guideWhere to checkOPF package identifier
Why it failedThe OPF package does not tell EPUBCheck which dc:identifier is the book's main identifier.
Repair decisionNeeds manual review because the correct book identifier must be chosen.
What changed / did not changeEPUB Fixer did not change this item because the right fix needs a source-file, EPUB editor, or publishing-platform decision.
Before retrying KDPOpen content.opf, find the package tag, and point unique-identifier only to one existing dc:identifier id that is clearly the book identifier. If ISBN, UUID, retailer, or draft ids compete, choose manually before editing.
Original errorRSC-005 Error while parsing file: element "package" missing required attribute "unique-identifier"
Opens the paragraph for adding the package unique-identifier pointer. Use it with the affected OPF file shown in this report.
Open repair guideWhere to checkOPF package identifier
Why it failedThe OPF package does not tell EPUBCheck which dc:identifier is the book's main identifier.
Repair decisionNeeds manual review because the correct book identifier must be chosen.
What changed / did not changeEPUB Fixer did not change this item because the right fix needs a source-file, EPUB editor, or publishing-platform decision.
Before retrying KDPOpen content.opf, find the package tag, and point unique-identifier only to one existing dc:identifier id that is clearly the book identifier. If ISBN, UUID, retailer, or draft ids compete, choose manually before editing.
Original errorOPF-048 Package tag is missing its required unique-identifier attribute and value.
Opens the paragraph for adding the package unique-identifier pointer. Use it with the affected OPF file shown in this report.
Open repair guideWhere to checkOPF manifest media type
Why it failedThe OPF manifest says this file has one media type, but the file extension or content points to another type.
Repair decisionCan auto-fix when the existing file has a deterministic media type; otherwise review the file manually.
What changed / did not changeEPUB Fixer did not change this item because the right fix needs a source-file, EPUB editor, or publishing-platform decision.
Before retrying KDPCheck the manifest item for this file and set media-type to the type that matches the actual file.
Original errorOPF-029 The file "OEBPS/images/cover.png" does not appear to match the media type image/jpeg, as specified in the OPF file.
Opens the paragraph for this media-type mismatch and highlights the content.opf change to check.
Open repair guideAffected file: OEBPS/content.opf
Where to checkOPF package identifier in OEBPS/content.opf
Why it failedThe OPF package does not tell EPUBCheck which dc:identifier is the book's main identifier.
Source fileOEBPS/content.opf
Repair decisionCan auto-fix only when the OPF has one clear dc:identifier to use as the book identifier.
What changed / did not changeUse an existing identifier or add a generated identifier.
Before retrying KDPOpen content.opf, find the package tag, and point unique-identifier only to one existing dc:identifier id that is clearly the book identifier. If ISBN, UUID, retailer, or draft ids compete, choose manually before editing.
Original errorOPF package unique-identifier is missing
Opens the paragraph for adding the package unique-identifier pointer. Use it with the affected OPF file shown in this report.
Open repair guideWhere to checkOPF modified timestamp
Why it failedThe EPUB 3 modified timestamp is missing or appears more than once.
Repair decisionNeeds manual review to leave exactly one valid dcterms:modified metadata entry.
What changed / did not changeEPUB Fixer did not change this item because the right fix needs a source-file, EPUB editor, or publishing-platform decision.
Before retrying KDPKeep exactly one meta property="dcterms:modified" entry in the OPF metadata.
Original errorRSC-005 Error while parsing file: package dcterms:modified meta element must occur exactly once
Opens the paragraph for the OPF modified timestamp and highlights the metadata change to check.
Open repair guideWhere to checkOPF metadata language
Why it failedThe OPF metadata is missing the book language entry required by EPUBCheck.
Repair decisionNeeds manual review because the correct language code depends on the book.
What changed / did not changeEPUB Fixer did not change this item because the right fix needs a source-file, EPUB editor, or publishing-platform decision.
Before retrying KDPAdd the correct dc:language value, such as en, en-US, zh, or another language code for this book.
Original errorRSC-005 Error while parsing file: element "metadata" incomplete; missing required element "dc:language"
Affected file: OEBPS/images/cover.png
Where to checkOPF manifest media type for OEBPS/images/cover.png
Why it failedThe OPF manifest says this file has one media type, but the file extension or content points to another type.
Source fileOEBPS/images/cover.png
Repair decisionCan auto-fix when the existing file has a deterministic media type; otherwise review the file manually.
What changed / did not changeUpdate the manifest media-type to the deterministic type for the existing file.
Before retrying KDPCheck the manifest item for this file and set media-type to the type that matches the actual file.
Original errorManifest media-type does not match the file extension
Opens the paragraph for this media-type mismatch and highlights the content.opf change to check.
Open repair guideAffected file: OEBPS/content.opf
Where to checkReading order / OPF spine in OEBPS/content.opf
Why it failedThe reading order points to a manifest item id that does not exist.
Source fileOEBPS/content.opf
Repair decisionNeeds manual review because the correct reading-order target is not clear.
What changed / did not changeEPUB Fixer did not change this item because the right fix needs a source-file, EPUB editor, or publishing-platform decision.
Before retrying KDPMatch each spine itemref idref to a real manifest item id, or add the missing manifest item.
Original errorSpine idref is missing from manifest
Opens the paragraph for this missing OPF manifest id and highlights the package reference to check.
Open repair guideAffected file: OEBPS/content.opf
Where to checkOPF modified timestamp in OEBPS/content.opf
Why it failedThe EPUB 3 modified timestamp is missing or appears more than once.
Source fileOEBPS/content.opf
Repair decisionCan auto-fix by writing one deterministic dcterms:modified entry.
What changed / did not changeAdd a deterministic dcterms:modified meta entry.
Before retrying KDPKeep exactly one meta property="dcterms:modified" entry in the OPF metadata.
Original errorOPF dcterms:modified metadata is missing
Opens the paragraph for the OPF modified timestamp and highlights the metadata change to check.
Open repair guideWhere to checkXHTML document structure
Why it failedThe XHTML file is missing a valid head section before the body.
Repair decisionNeeds manual review because the XHTML document structure should be fixed without losing metadata or styles.
What changed / did not changeEPUB Fixer did not change this item because the right fix needs a source-file, EPUB editor, or publishing-platform decision.
Before retrying KDPAdd a valid head element before body, then rerun EPUBCheck.
Original errorRSC-005 Error while parsing file: element "body" not allowed yet; missing required element "head"
Where to checkStart of XML/XHTML file
Why it failedThere is hidden text, whitespace, or invalid bytes before the XML/XHTML document starts.
Repair decisionNeeds manual review because the invalid leading content must be removed from the source file.
What changed / did not changeEPUB Fixer did not change this item because the right fix needs a source-file, EPUB editor, or publishing-platform decision.
Before retrying KDPOpen the affected file and remove any characters before the XML declaration or root element.
Original errorRSC-016 Fatal Error while parsing file: Content is not allowed in prolog.
This is the full result-page state when the EPUB stops at a source-export or unsupported boundary instead of getting a guessed repair.
Needs source export fix
This file is not supported by this scanner.
The scan stopped at fixed layout. Try a text-first EPUB 2 or EPUB 3 file without fixed-layout pages, DRM, image-first content, or source/conversion files.
Use a supported EPUB export before scanning again.
The scan stopped at fixed layout. Try a text-first EPUB 2 or EPUB 3 file without fixed-layout pages, DRM, image-first content, or source/conversion files.
Check unsupported filesReport snapshot
| Scan status | Not supported |
|---|---|
| File type | fixed layout |
| Download | No download |
| Checked repair changed | No checked repair was created |
| Repair summary | No checked repair was created because this file is outside the scanner scope. Export a supported reflowable EPUB before scanning again. |
| Report ID | sample-source-export-fix |
Checked in this report
Decision flow
This upload stopped before EPUB structure repair. Fix the source export and scan the EPUB again.
| Blocking reason | Affected file | Who should handle it | Could this become auto-fixable later? | What is still needed |
|---|---|---|---|---|
| Unsupported preflight stop | fixed-layout-export.epub | Source export or EPUB editor | No, this is outside the current scanner boundary. | The scan stopped at fixed layout. Try a text-first EPUB 2 or EPUB 3 file without fixed-layout pages, DRM, image-first content, or source/conversion files. |
Affected file: OEBPS/content.opf
Where to checkEPUB layout metadata in OEBPS/content.opf
Why it failedThis is a fixed-layout EPUB. EPUB Fixer handles reflowable EPUB structure issues, not fixed-layout page repair.
Source fileOEBPS/content.opf
Repair decisionNot supported here because changing fixed-layout files requires layout judgment.
What changed / did not changeEPUB Fixer did not change this item because the right fix needs a source-file, EPUB editor, or publishing-platform decision.
Before retrying KDPExport a reflowable EPUB if that is possible, or fix the fixed-layout file in the source tool or EPUB editor.
Original errorFixed-layout EPUB detected
This report found a fixed-layout EPUB, so the guide opens the matching unsupported item.
Open fixed-layout guideUse your file
Upload the EPUB that failed KDP, Kindle Previewer, or EPUBCheck to see the affected paths, repair decisions, and next steps for your own file.