EPUB Page Numbers: Static Pagination, page-list Navigation, and Print Equivalents
Page numbers in EPUB are fundamentally different from print. Because EPUB text reflows to fit any screen, "page 42" in a paperback has no fixed meaning on a Kindle. But page numbers can be embedded in an EPUB for accessibility, academic citation, and cross-referencing with print editions. Here's how.
Why EPUB Doesn't Have Fixed Pages
A printed PDF has fixed pages because text is locked to a specific layout. EPUB text reflows: increase the font size and you get more "pages"; switch to landscape and the layout changes entirely. The concept of a page depends on the current reading environment.
This is intentional — reflowable text is the whole point of EPUB for accessibility and multi-device reading. But it creates a real problem for academic citations ("see page 47") and for readers who want to know how far through a book they are relative to the print edition.
Static Page Markers (Print Equivalent)
EPUB 3 supports embedding static page break markers using epub:type="pagebreak". These invisible markers record where each print page began, preserving page number references even in reflowable text:
<!-- Mark where print page 47 begins -->
<span epub:type="pagebreak"
id="page47"
role="doc-pagebreak"
aria-label="Page 47"></span>
<p>The argument continues from the previous page...</p>
Screen readers announce page breaks using the aria-label. Readers using accessible EPUB apps can navigate to specific print page numbers even though the visual layout has changed.
The page-list Navigation Element
To enable direct page number navigation, add a page-list nav element to nav.xhtml:
<nav epub:type="page-list" hidden="">
<ol>
<li><a href="chapter01.xhtml#page1">1</a></li>
<li><a href="chapter01.xhtml#page2">2</a></li>
<li><a href="chapter02.xhtml#page47">47</a></li>
<!-- ... one entry per print page -->
</ol>
</nav>
The hidden="" attribute hides the page list from the visual reading flow but makes it available to reading system navigation UI and assistive technology.
Where Page Numbers Are Required
- Academic and educational EPUB — page numbers allow citing the EPUB with the same page references as the print edition. Required by many institutional publishers.
- EPUB Accessibility 1.1 — if the EPUB is a digital equivalent of a print work, page markers are required for conformance at the Optimized level.
- Fixed-layout EPUB — page numbers are meaningful here because each spine item is a fixed page. Add pagebreak markers at the start of each item.
Progress Indicators vs Page Numbers
Most consumer e-readers show reading progress as a percentage or "X minutes left" rather than page numbers. Kindle estimates pages based on a standardized font size — so "Kindle page 42" may not match print page 42. This estimated page count is separate from embedded EPUB page markers.
Adding Page Numbers When Converting from PDF
When toolkit.bot converts a PDF to EPUB, page break markers are inserted at the original PDF page boundaries. The epub:type="pagebreak" span and page-list nav are generated automatically, preserving original page references in the output EPUB. This is essential for academic and accessible publishing workflows.