Scrivener to EPUB: Compile and Fix
Scrivener ships with an EPUB compile option built in, and for basic use it works — chapter breaks, font choices, and a reasonable default layout. What it does poorly is specific enough that most Scrivener-written books end up needing cleanup before they can be uploaded anywhere. Here's what to know going in.
Compile settings that actually matter
Open the compile pane (Cmd+Shift+E on Mac, F7 on Windows) and pick EPUB 3 — not ePub 2. Scrivener's ePub 2 exporter is older and produces less clean output. Focus on three panes:
- Format: Start with the default "Ebook" format. Duplicate it before editing anything — Scrivener's built-in formats are read-only and you'll want your own version per project.
- Section Types: The part most Scrivener users never touch. Each folder and document in your binder has a section type. Section types map to layouts. Chapters should usually be "Chapter" or "Section"; front/back matter should be "Front Matter" or "Back Matter". Mismatched section types are why your prologue gets formatted like a chapter, or skipped entirely.
- Project Metadata: Set this before compile (Project → Metadata). Author, title, description, and language populate the EPUB's metadata. Leaving them blank produces an EPUB with "My Project" as the title and no author.
What Scrivener compiles well
- Basic chapter structure with consistent section types
- Italic and bold (as long as you used the style toolbar, not a specific font face)
- Scene break dividers configured in the Format pane
- Automatic table of contents from the binder hierarchy
- Straight-through reading order for linear narratives
What Scrivener compiles badly
Epigraphs and block quotes
Scrivener's block quote styling often bleeds into surrounding paragraphs in the EPUB output. Fix by applying a specific paragraph style to the epigraph in Scrivener and overriding it in the compile format's Styles pane. Or: run the compiled EPUB through a CSS-aware cleanup step afterward.
Footnotes
Scrivener's inline footnotes export as HTML footnotes, but the styling is weak and most e-readers render them as awkward inline text rather than pop-ups. For footnote-heavy non-fiction, consider compiling to DOCX and using Pandoc instead (pandoc book.docx -o book.epub handles footnotes cleanly).
Cover image
Scrivener embeds the cover image from your compile settings, but the cover is often placed at a weird size or with odd margins. Compile the EPUB, then swap the cover using the cover replacement tool.
Font embedding
Scrivener can embed fonts into the EPUB, but it embeds the entire font file even if you only use two glyphs, which bloats the file. For body text, set the compile to use default fonts and let readers pick their own. Only embed display fonts if they're critical to the book's identity.
KDP and Apple validation
Scrivener's compiled EPUBs regularly fail EPUBCheck on things like unclosed tags, empty <div> elements, and missing lang attributes. KDP usually accepts them anyway, but Apple Books is stricter. Always run the validator with auto-fix before uploading to Apple.
The standard post-compile cleanup
- Validate and auto-fix. Upload the compiled EPUB to the EPUB validator, enable deep scan and auto-fix, download the clean version.
- Check metadata. Open the metadata editor. Scrivener sometimes leaves the language code blank (causing accessibility complaints) or uses "Unknown" as the author. Fix these.
- Swap the cover. If Scrivener's cover placement is off, use add cover to EPUB with the proper image.
- Compress. Run through the compressor to strip Scrivener's overhead and any embedded fonts you don't actually need.
Alternative: Scrivener for writing, something else for export
Some authors use Scrivener purely as a drafting tool and compile to DOCX instead of EPUB. From there, run Pandoc or Calibre for the conversion. This gives you a clean DOCX as an intermediate format you can proof in Word, and the EPUB output is usually cleaner than Scrivener's native compile. Extra step, better result. See the DOCX to EPUB guide for the pipeline.
Related
- Validate EPUB — catch Scrivener's validation issues
- Edit EPUB metadata — fix author, language
- Add or swap EPUB cover
- DOCX to EPUB pipeline
- Full self-publishing guide
Try it now — free
Check your EPUB for errors, compatibility issues, and compliance. Free EPUB validator supporting EPUB 2 and EPUB 3 standards.
Validate EPUB Files →