Accessibility has stopped being a courtesy. The European Accessibility Act came into force in June 2025 and covers ebooks sold into the EU, which means the major stores now check for accessibility metadata at ingestion and several will refuse a file that has none.
The useful part is that almost everything on the checklist is something you would want anyway, and a manuscript written in Markdown already does most of it without being asked.
What accessible actually means here
It means a machine can work out what your book is made of. A screen reader announcing a chapter title as a chapter title, a text-to-speech engine pausing at the right places, a reader enlarging the type without the layout collapsing — all of that depends on the file describing its own structure rather than only its appearance.
| Requirement | Why it matters | Where it comes from |
|---|---|---|
| Real headings | Navigation. A screen reader can jump chapter to chapter | #, ##, ### in the source |
| Alt text on images | The picture is otherwise a silent gap |  |
| Declared language | Chooses the right pronunciation engine | Metadata in the EPUB |
| Logical reading order | The order the content is spoken in | The order of the source file |
| Selectable text | Nothing can read a picture of a paragraph | Real text, not an image |
| Sufficient contrast | Low vision, and bright sunlight | Your colour choices |
Headings have to be headings
The single most common accessibility failure in self-published books is a heading that is not one. Someone types the chapter title, makes it bold, makes it 18pt, centres it, and moves on. It looks exactly like a heading and it is a paragraph — so the navigation panel in an e-reader is empty, and a screen reader announces it as one more sentence.
- Use one `#` for the book title, `##` for chapters, `###` for sections. The heading levels are the structure, and both exports carry them across.
- Do not skip levels. Jumping from
##to####reads to a machine as a missing section, and to EPUBCheck as a warning. - Do not use a heading for emphasis. A line set large because it is dramatic is a styled paragraph, not a
###. - Do not fake a heading with bold.
**Chapter Four**is a bold sentence. It navigates to nothing.
Alt text, written properly
Every image needs a description of what it shows, in the position where the image sits. The syntax is the easy half —  — and the rest of getting images into a book is a separate matter. Writing the description is where people go wrong.
| Image | Poor alt text | Useful alt text |
|---|---|---|
| A chart | "chart" | "Sales by quarter: flat until Q3, then doubling" |
| A photograph | "image1.jpg" | "The author's grandmother at the shop counter, 1961" |
| A decorative rule | "divider" | Empty — mark it decorative so it is skipped |
| A screenshot with text | "screenshot" | The text that matters, transcribed |
- Say what it shows, not what it is. "A photograph of" is wasted words; the reader knows it is an image.
- Include any text in the picture. A screenshot, a sign, a caption inside the artwork — if it is not in the alt text, it does not exist for that reader.
- Keep it to a sentence or two. Long descriptions belong in a caption, which everyone can read.
- Leave it genuinely empty for pure decoration. An ornamental flourish announced as "flourish" is noise, not access.
What EPUBCheck will tell you
The validator the stores run is the validator you can run yourself. It reports accessibility problems with an ACC- prefix, and where those were once advisory warnings, several retailers now treat them as grounds for rejection.
WARNING(ACC-007): book.epub/OEBPS/ch03.xhtml(112,5):
The "img" element should have an accessible name
WARNING(ACC-011): book.epub/OEBPS/package.opf:
The publication does not declare accessibility metadataThe first is a missing alt attribute and you fix it in the manuscript. The second is metadata the export writes for you, and it is worth confirming it is there: language, whether the reading order is logical, and what accessibility features the book has. Reading the rest of the validator's output is a good use of an hour before you upload anything.
The PDF half
A PDF is harder to make accessible than an EPUB, because it is a description of marks on a fixed page rather than a document with structure. A fully accessible PDF is a *tagged* PDF, carrying a hidden tree that says which marks are a heading, which are a paragraph, and what order to read them in.
- Text must be text. A PDF made by scanning or by exporting a design as one flat image is unreadable to a screen reader no matter what else is true of it.
- Fonts must be embedded, or a reader's machine substitutes something and character extraction can garble. Embedding is not optional for print either.
- Contrast has to hold. A dark page background can be beautiful and can also drop body text below the 4.5:1 minimum. Check the ratio rather than trusting your monitor.
- Ship the EPUB as well. For a reader using assistive technology, a reflowable EPUB is almost always the better file — the type size is theirs to set.
That last point is the practical conclusion. A tagged, fully conforming PDF is real work; offering both formats covers the same readers far better, which is the same argument for sending buyers both files in the first place. Get the structure right in the source and you get an accessible EPUB and a decent PDF from one manuscript, without a separate accessibility pass at the end.