Split a PDF into individual chapters.
An ebook, textbook, or long report is one giant PDF with chapter breaks baked into the layout but no easy way to export them separately. PDF SmartSplit finds each chapter's opening heading — "Chapter 1", "Chapter 2", and so on — and starts a new file there, entirely in this browser tab.
No signup. No install. Free for files up to 30 pages.
How to split a PDF by chapters
Most books and reports print a consistent chapter heading at the start of every chapter — that consistency is exactly what makes an automatic split possible.
Check how your chapters are labeled
Look at two or three chapter openings. Most books print "Chapter 1", "Chapter 2", etc. — some use just a number, a part name, or a running title instead. Note the pattern that repeats.
Drop the PDF in below
It loads into your browser's memory only — nothing is uploaded, so the full text stays on your device the entire time.
Download one zip, one PDF per chapter
A new file starts on every page containing "Chapter " (or whatever label your book uses) — chapters of any length come out correctly.
pdf.js to read the text and
pdf-lib to assemble each
chapter's pages into their own file, both running as JavaScript in this page.
Split your PDF into chapters
Free tier: 1 file at a time, up to 30 pages. Text-layer PDFs only (no scanned/OCR yet).
Drag & drop your book or report PDF here, or click to choose
Up to 30 pages · stays on this device
Preview
Split mode
Splitting a whole book that's over 30 pages?
Free tier handles shorter documents up to 30 pages total. Pro (in development) removes the
page limit, adds multi-file batch processing, and can rename each chapter file from its heading — e.g.
Chapter-05.pdf instead of
part-05.pdf. One-time
$19, no subscription.
Your document never leaves your browser
PDF SmartSplit has no upload endpoint, no server that touches your document, and no account to leak. Open your browser's network tab while you split a file — you'll see it stay quiet. Processing uses pdf.js and pdf-lib running as JavaScript in this tab; the zip is built in memory and handed straight to your browser's download dialog.