PDF Splitter

PDF

Extract specific pages from a PDF, or split it into fixed-size chunks. Runs entirely in your browser: files never leave this tab.

Private by architecture: All processing is 100% client-side memory. Your data never leaves this browser tab.
Source Document No file selected.
Drag and drop a PDF file here, or click to choose
Extraction Controls
Select or drop a PDF on the left to configure extraction bounds or multi-page chunking.

About This Tool

Pulling a few pages out of a long PDF, or chopping a scanned book into chapter-sized chunks, usually means a desktop app or an upload to a third-party site. This tool uses pdf-lib in the browser to copy only the pages you select: by an explicit range/list, or by splitting the whole document into fixed-size chunks: all entirely in memory.

For combining multiple independent PDFs into one, use the PDF Merger tool instead.

Key Features

  • Flexible page range selection: Accepts individual pages (5), ranges (1-3), or mixed comma-separated lists (1-3,5,7-9).
  • Batch chunk splitting: Splits documents into equal-sized chunks of N pages with one click.
  • Immediate bounds checking: Validates page numbers against document metadata before running processing.
  • Preserves document layout: Copies pages directly so vectors, typography, and embedded images maintain quality.
  • 100% in-browser processing: Zero server uploads; works completely offline with instant client-side downloads.

Frequently Asked Questions

How do I write a page range?
Comma-separated page numbers and/or ranges, 1-indexed: "1-3,5,7-9" extracts pages 1, 2, 3, 5, 7, 8, and 9. Spaces around commas and dashes are fine.
What happens if I enter an invalid range, like "5-2" or a page past the end?
The tool rejects it with a specific error before touching pdf-lib: a descending range (start after end) or any page number beyond the document total page count is caught and reported, nothing is extracted.
What does "split every N pages" do differently from a page range?
A page range produces one output PDF with just the pages you listed. Split-every-N instead chops the whole document into consecutive chunks of N pages each (the last chunk gets whatever is left over), producing multiple downloadable files.
Are my files uploaded anywhere?
No. The PDF is loaded and split in browser memory using pdf-lib; nothing is sent to a server.