Skip to main content

Links

EPUB Link Checker

Upload an EPUB to scan all internal hyperlinks and anchor references. The checker finds links that point to missing files, broken anchors, or incorrect relative paths. External URL checking is not performed. Export the full link report as a text file.

Runs in your browserPrivate by designEPUB

Input formats

EPUB

Output formats

Link Report

Common uses

  • Find broken footnote links in a converted EPUB
  • Check that all chapter cross-references work
  • Verify table of contents links point to existing chapters

Limitations

  • External URLs are not checked — only internal links within the EPUB.
  • JavaScript-based navigation is not followed.

Your e-book files, handled privately

This tool runs entirely in your browser. On this site, your files are not uploaded to a server. This tool does not remove DRM or bypass copyright protection. Only upload files you own or have permission to process.

When a link check earns its place in your EPUB workflow

The EPUB Link Checker is built for the moment after you have produced an EPUB and need to know whether its internal navigation actually holds together. It reads the file in your browser, walks the reading-order documents, and reports which internal links and image references point at files that genuinely exist inside the book. Nothing is uploaded; the EPUB is unpacked and inspected locally, and the results disappear when you close the tab.

It fits authors and publishers preparing a title for an e-reader or store submission, where a footnote that jumps nowhere or a table-of-contents entry pointing at a missing chapter is the kind of defect a reader notices immediately. It is equally useful after a conversion: when a Word, InDesign, or Markdown export is reflowed into EPUB, relative paths and cross-references are exactly the things that quietly break. Running a scan before you ship gives you a concrete list to fix rather than a vague worry.

The same scan helps when you inherit an EPUB from someone else, or pull an older title out of an archive and want to confirm its links and embedded images still resolve before you reuse or redistribute it.

What happens when you drop a file in

The flow is one step: drop or select a single .epub file. The tool unzips it, finds the package document, and reads each content file listed in the spine in reading order. For every document it collects anchor links (the href on <a> tags) and image references (the src on <img> tags), then checks each target against the file list declared in the EPUB's manifest. Results appear on screen grouped as valid, broken, and external, and you can export the full list as a plain-text link report.

Internal links resolve by file path: a broken result means the referenced file is not present in the manifest, so the link or image has nowhere to land. External links beginning with http://, https://, or // are listed and flagged as unverified rather than checked, because the tool deliberately does not make network requests. Pure in-page fragment links like href="#note3" are skipped entirely, and DRM-protected files are refused with a notice rather than scanned.

What it does not do is worth stating plainly: it does not follow JavaScript-driven navigation, it does not fetch or validate external URLs, and it does not confirm that a specific anchor id exists inside a target file — for a link such as chapter2.xhtml#section4 it verifies that chapter2.xhtml is present, not that #section4 is defined within it.

Where it can mislead you if you are not careful

The most important pitfall is reading too much into a clean result. Because anchor fragments are not resolved inside their target files, a link can be reported as valid while still landing the reader at the top of the right chapter instead of the exact paragraph intended. Treat a passing internal link as confirmation that the destination file exists, not that the precise jump point is correct.

Coverage is scoped to spine documents, so links living in files outside the reading order are not examined, and only <a> and <img> references are inspected — other resources such as stylesheets, fonts, or media referenced elsewhere are not part of this report. A long book can also produce a large list; the on-screen view trims to issues first, so use the downloaded report when you want the complete picture.

Finally, external links showing as external (unverified) are not a failure and not a guarantee. The tool cannot tell a live URL from a dead one, so those entries are simply yours to confirm. Uploading a file you do not own or have permission to inspect is the other common misstep to avoid.

Checking the report before you act on it

Start with the broken-links section: open each flagged source file in your editor, confirm the target path is genuinely wrong, and correct the relative path or restore the missing file. Then spot-check a few links marked valid that carry fragments — open the target and confirm the anchor id is actually present and lands where you expect, since the tool verifies the file but not the in-page anchor. Work through the external list by hand, opening the URLs to confirm they still resolve.

Re-run the scan after edits and aim for zero broken internal links, then preview the book in an actual e-reader to confirm the navigation feels right rather than merely passing a structural check. The text report is a useful record to keep alongside the file as you iterate.

For anything official, financial, or legal — a regulated filing, a contract distributed as an EPUB, or a published reference where a wrong jump carries consequences — do not rely on this scan alone. Verify the affected links manually in your reading software, and where the stakes warrant it, confirm against a dedicated EPUB validator or a second reviewer before release.

Frequently asked questions

This tool checks href attributes in anchor tags, src attributes in img tags, and xlink:href attributes — all relative to the EPUB's file structure. External http:// and https:// links are listed but not verified.

Verifying external http:// and https:// links would require sending network requests to each site. This tool runs in your browser and focuses on internal references, so external links are listed in the report but their availability is not tested. Check them in a browser if needed.

A link can point to a specific spot inside a file using a fragment, such as chapter2.xhtml#section3. If no element with id="section3" exists in chapter2.xhtml, the anchor target is broken — the link resolves to the file but not to the intended position. This is common after editing or splitting chapters.

No. The EPUB is read and scanned for links in your browser. On this site, your files are not uploaded to our servers — the link report is generated on your device.

Related tools

Tool last reviewed: June 30, 2026 · Report a problem