How to Add or Change the Cover Image in an EPUB
A cover image is required by KDP, Kobo, and Apple Books, and it displays on every e-reader's library shelf. Here's how to add or replace a cover in any EPUB using Calibre and Sigil.
Method 1: Calibre Metadata Editor (Easiest)
For most cases, Calibre's metadata editor is the fastest way to set or replace a cover:
- Select the book in Calibre's library.
- Press E (or right-click → Edit metadata individually).
- In the metadata dialog, click the cover image area on the right.
- Click Browse to select a new image file (JPEG or PNG).
- Click OK. Calibre embeds the image as the EPUB cover.
This updates both the cover image file in the EPUB and the OPF cover metadata reference. It's the recommended approach for quick cover updates.
Method 2: Sigil (Full Control)
Sigil lets you control exactly how the cover is embedded — useful if Calibre's output doesn't satisfy validator requirements:
- Open the EPUB in Sigil.
- In the Book Browser, right-click Images/ → Add Existing Files. Select your cover JPEG.
- Open the OPF file (content.opf) in Code View. In the
<manifest>, confirm the image has an entry:<item id="cover-image" href="Images/cover.jpg" media-type="image/jpeg" properties="cover-image"/> - In the
<metadata>section, add or update the cover reference:<meta name="cover" content="cover-image"/> - Create or update the cover HTML page (cover.xhtml) that displays the image for readers that show a cover page.
- Save and validate with EPUBCheck.
Cover Image Requirements by Platform
| Platform | Minimum Size | Recommended Size | Format |
|---|---|---|---|
| Amazon KDP | 1000 × 625 px | 2560 × 1600 px | JPEG |
| Apple Books | 1400 px on shortest side | 2500 × 1563 px | JPEG or PNG |
| Kobo Writing Life | 800 × 1000 px | 1600 × 2400 px | JPEG or PNG |
| Draft2Digital | 1600 × 2400 px | 2400 × 3600 px | JPEG or PNG |
| Smashwords | 1600 × 2400 px | 2400 × 3600 px | JPEG or PNG |
Use a 6:9 aspect ratio (portrait) as the standard. KDP's 1600×2560 px at 72 DPI is widely accepted across all platforms.
The Cover HTML Page
Most EPUB readers display a cover page when the book is opened. This requires a separate XHTML file (cover.xhtml) that displays the cover image full-page:
<?xml version="1.0" encoding="UTF-8"?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title>Cover</title>
<style>
body { margin: 0; padding: 0; }
img { max-width: 100%; height: auto; display: block; }
</style>
</head>
<body>
<img src="../Images/cover.jpg" alt="Cover"/>
</body>
</html>
Reference this file first in the OPF <spine> so it appears as the opening page.
Why the Cover Shows as Blank in Some Readers
If the cover shows in Calibre but not on the Kindle or Kobo device:
- The OPF manifest entry is missing the
properties="cover-image"attribute (EPUB 3). - The
<meta name="cover">element is missing (EPUB 2 compatibility). - The cover image file size is too large — Kindle has a 127 KB limit per image for older models.
- The cover XHTML file is not listed first in the spine.
Converting a PDF to EPUB? toolkit.bot generates EPUBs with properly embedded cover metadata.
Convert PDF to EPUB →