typesetting.ai

Free EPUB Validator

Drop in an EPUB and run EPUBCheck validation without installing Java or using the command line.

Free · No sign-up · File discarded after the check

Why validate first

The store runs this check too — later, and less helpfully

EPUBCheck is the reference validator, maintained by the W3C and the DAISY Consortium, and it is what retailers and library platforms run on submissions. A file that fails here will usually be rejected there.

The difference is the feedback. Run it yourself and you get a file name and a line number. Fail at a store and you often get a generic rejection several days later, at the point you were expecting to be on sale.

What it looks at

What EPUBCheck actually checks

Package
The manifest lists every file, and every listed file exists.
Navigation
A real navigation document, pointing at documents that are there.
Markup
Each chapter is well-formed XHTML that a reader can parse.
Metadata
Required fields — title, language, identifier — are present.
Resources
Fonts, images and stylesheets are declared and reachable.
Accessibility
Warnings where metadata or alt text is missing. Warnings, not errors.

What it does not tell you

Valid does not automatically mean well made

EPUBCheck answers one question: is this file built to the specification. It cannot tell you whether the chapters are in the right order, whether a scene break survived the conversion, whether the navigation lists chapters a reader would recognise, or whether the type is readable on a phone.

A file can pass cleanly and still be a poor ebook. Validation is the floor, not the ceiling — worth clearing before you publish, and not a substitute for opening the file and reading it.

Next

Whichever answer you got

Errors you would rather not patch by hand?

Create a clean EPUB from Word

File is valid — is it the right edition?

Format for Kindle

Most validation errors come from whatever produced the file rather than from anything you wrote, which is why rebuilding usually clears the whole list at once while patching clears one line.

Building the EPUB properly?

Publishing outside Amazon?

Making a paperback too?

Questions

EPUB validation, answered

What is EPUBCheck?

The reference conformance checker for EPUB, maintained by the DAISY Consortium on behalf of the W3C. It is the tool the standard is checked against, and the one the retailers run on submission — so passing it here is the closest you can get to knowing a store will accept the file.

Is this different from the official tool?

It is the official tool. EPUBCheck ships as a Java command-line program; this page runs that program on your file and formats what it says. The value we add is not having to install Java and learn a CLI to answer one question.

Do you keep my book?

No. The file is held in memory for the length of one request, passed to the validator, and discarded. There is no database row, no stored copy, and no link to come back to — reload the page and the result is gone.

What's the difference between an error and a warning?

An error is a breach of the specification and can get a file rejected outright. A warning flags something legal but likely unintended — a missing accessibility attribute, an unusual structure. Warnings rarely block publication, but they often point at something that will look wrong on a device.

It found dozens of errors. Where do I start?

Usually at the top, and usually there is one cause. A long list is typically one structural problem repeated across every chapter — a broken navigation document, or a stylesheet the package never declared. Fixing the root normally clears the list.

My file passes. Am I definitely fine?

Valid means well-formed, not well-made. EPUBCheck cannot tell you the chapter breaks land in the right places or that the text reads properly on a small screen. It rules out the category of problem that gets a file rejected, which is worth a lot and is not everything.

Checked against the source

The requirements on this page are published by the organisations below, not by us. We last read them in September 2026 and compared them against what the tool produces. If a requirement has changed since, the source is right and we are wrong — tell us and we will fix it.