Split PDF Files
Pull specific pages out of a PDF, or break it apart entirely. Enter the pages you want, like 1-3, 5, 8-10, and download the result. Nothing is uploaded, it all happens on your device.
Click to choose a PDF file, or drag and drop it here
Stays on your device, nothing is uploaded.
Are my PDF files uploaded anywhere?
No. Splitting happens entirely inside your browser using JavaScript. Your files never leave your device or touch a server.
How do I extract just a few pages?
Type the page numbers or ranges you want, like 1-3, 7, and click Split. They'll be combined into one new PDF in that order.
Can I split a PDF into one file per page?
Yes. Turn on "Split into separate files" and leave the pages field blank, every page downloads as its own PDF inside a .zip.
Can I extract multiple separate ranges at once?
Yes. Enter them separated by commas, like 1-3, 5, 8-10, and turn on "Split into separate files" to get each group as its own PDF in a .zip.
Does splitting reduce PDF quality?
No. Pages are copied as-is from the source file, there's no re-rendering, re-compression, or quality loss.
Can I split a password-protected PDF?
Not currently. Password-protected or encrypted PDFs can't be read by the tool and will show an error, remove the password first with a PDF reader.
How it works
Your ranges string is parsed first: something like 1-3, 5, 8-10 becomes
groups of page indices, and the tool checks every number against the document's actual
page count before doing anything. Then pdf-lib, running entirely in your browser, loads
the PDF's object structure into memory, creates a new empty document for each output,
and calls copyPages() to pull the selected pages across. Copied pages bring
their fonts, images, and graphics with them exactly as stored, no rasterizing, no
recompression, so a split page is pixel-identical to the original.
The "split into separate files" toggle changes how groups are treated. Off, every page
you listed lands in one combined PDF, in the order you typed it (so 5, 1-3
really does put page 5 first, which is a sneaky way to reorder while extracting). On,
each comma-separated group becomes its own file, and the results are bundled into a .zip
that's also built in your browser, using an uncompressed store-only writer since PDF
data doesn't compress meaningfully anyway.
One thing to expect: printed page numbers don't change. If you extract page 47 of a report, the new file's only page still says "47" at the bottom, because that number is just ink on the page, not metadata. Use the page numbers tool if you need fresh numbering.
None of this touches a server. Open DevTools, watch the Network tab while you split: the file is read with the browser's own FileReader, processed in memory, and the download comes from a local blob. Your document never leaves the tab.