Splitting a PDF is the kind of task that feels small until you need to do it with a sensitive file. The default workflow — Google “split pdf” → upload to ilovepdf or smallpdf — sends your contract, salary sheet, or hospital record through a stranger’s server, where it sits in their cache for hours. For the same task, browser-only tools using pdf-lib (the JavaScript library that powers most modern PDF utilities) do the work locally with no data leaving your machine.
Our PDF splitter handles the four common modes — page range, every page, every N pages, extract specific pages — with drag-and-drop input and one-click ZIP download for multi-file outputs. This guide explains exactly what each mode does, the technical limits, the privacy difference between browser and server splitters, and the gotchas with bookmarks and form fields.
The 4 split modes — and which one you actually want
| Mode | Output | Best for |
|---|---|---|
| Page range | 1 file containing pages X–Y | Extracting a chapter or section |
| Per page | N files, one page each | Multi-page invoices, scanned receipts |
| Every N pages | ⌈N/k⌉ files of k pages each | Splitting a long report into chapters |
| Extract pages | 1 file containing only the listed pages | Pulling specific pages out of a deck |
| Multi-range | Multiple files, one per range | Splitting a combined PDF into sections |
Privacy: browser-only vs server-based splitters
Most “free PDF splitter” sites upload your file to their server, run the split there, and let you download the output. That means: your file sits in their cache for some retention period (often 24 hours, sometimes longer); their backups potentially preserve it; their privacy policy controls what happens to it. For a marketing brochure that’s fine. For a contract, payslip, medical record, signed legal document, or anything you’d email with care — it’s not.
Our PDF splitter uses pdf-lib, a JavaScript library that runs entirely in the browser. When you drop a file in, the bytes never leave your tab. You can verify this in your browser’s Network tab — the file selection triggers zero outbound requests. The split files appear in your browser’s download folder via a local blob URL, not a server response.
How to split a PDF in your browser
- Open the PDF splitter
- Drop your PDF into the upload zone, or click to pick a file
- Pick the split mode: Range, Per page, Every N pages, Extract, or Multi-range
- Type the page numbers (
1-5, 8, 12-20for multi-range) - Click Split — output files appear immediately
- Click Download all (ZIP) for multi-file output, or download each file individually
Technical limits and what to expect
pdf-lib runs in WebAssembly and is fast for moderate-size PDFs:
- Up to ~100 pages, mixed text and images: instant (under 1 second)
- 100–500 pages with embedded fonts: 2–10 seconds
- 500–1000 pages, scanned image-heavy: 10–60 seconds, may briefly stall the page
- 1000+ pages or files over 200 MB: at the edge of browser memory; consider splitting in batches
- Encrypted (password-protected) PDFs: require the password before splitting; pdf-lib supports both user and owner password
Memory is the real limit. Mobile browsers are more restrictive than desktop — a 200 MB PDF that splits cleanly on a laptop may crash an iPhone Safari tab. For very large files, use the desktop browser or split in two stages.
Common gotchas
- Bookmarks and outlines. When you split a PDF, bookmarks pointing to extracted pages are preserved; bookmarks pointing to pages outside the new file are dropped. This is the correct behaviour but surprises people who expect the entire outline to follow.
- Form fields. Interactive form fields (signature blocks, checkboxes, text inputs) on extracted pages keep their values. Fields on dropped pages are removed. Form-level metadata (default values, validation rules) is preserved at the document level.
- Annotations and highlights. Comments, highlights, and stamps on extracted pages move with them. Annotations referencing dropped pages may show a broken link icon.
- Linked TOCs break. A table of contents with hyperlinks to specific pages becomes partially broken when you split — half the links point to non-existent pages. Either remove the TOC or split before generating the TOC.
- Output file names. Default naming is
filename-part-N.pdf. Customise with the “Filename pattern” input —{name}-{from}-{to}.pdftokens are supported. - Compression isn’t preserved by default. pdf-lib re-streams content; deeply-compressed input PDFs may grow ~5% in the output. To keep size down, run the output through a PDF compressor after splitting.
When NOT to use this tool
If you need OCR, deskewing, or text extraction, a PDF splitter won’t help — those are different workflows. For batch automation in a build pipeline, install pdf-lib locally (npm i pdf-lib) and write a Node script — same engine, more control. For PDFs with PDF/A archive compliance requirements, use Adobe Acrobat or PDF Studio Pro to preserve the compliance metadata; pdf-lib outputs standard PDFs that may not validate as PDF/A. For password-protected files where you don’t have the password, no tool will help — that’s the security working as intended.
Frequently asked questions
Is my PDF uploaded?
No. The splitter uses pdf-lib running in your browser. The file is loaded into a blob URL in your tab, processed locally, and the output is generated from the same in-memory data. You can verify in DevTools’ Network tab: dropping a file produces zero outbound requests.
What’s the largest PDF I can split?
Effectively your browser’s available memory. On desktop, files up to 200 MB and 1,000+ pages work. On mobile, the practical limit is around 50 MB. If a split fails, refresh the tab to free memory and try again with a smaller batch.
Can I split a password-protected PDF?
Yes — paste the user password in the prompt that appears when you upload. The splitter handles both user passwords (open access) and owner passwords (edit access). Password-protected files where you don’t know the password cannot be split — that’s the encryption working correctly.
Does the split preserve form fields and signatures?
Form fields and electronic signatures on extracted pages are preserved. Fields and signatures on dropped pages are removed (they wouldn’t be valid in the smaller file anyway). Visible certificate-based signatures from Adobe or DocuSign keep their visual representation; cryptographic validity depends on whether the signed scope changed.
How do I split a PDF into individual pages?
Pick the “Per page” mode. A 30-page input becomes 30 single-page output files in a ZIP. Useful for archiving multi-page invoices into one file per invoice, or pulling each scanned receipt out of a batch capture.
Will splitting reduce the file size of each part?
Roughly proportional to page count — splitting a 30 MB / 30-page PDF into 3 files yields three ~10 MB files. Embedded fonts and images are included only in the parts that reference them, so files with shared graphics may be slightly smaller than 1/N. To shrink further, run each output through a PDF compressor.
Related tools and guides
![Split PDF Online: Browser-Only, 100% Private [2026]](https://simpletool.io/blog/wp-content/uploads/2026/05/split-pdf.png)
![Make PDF Look Scanned: Browser-Only Converter [2026]](https://simpletool.io/blog/wp-content/uploads/2026/05/make-pdf-look-scanned.png)