PDF Page Toolkit

How it works

PDF Page Toolkit lets you merge PDFs, split them, and reorder, rotate or delete individual pages using a visual grid of thumbnails. It is free, has no signup, adds no watermark, and does not limit how many files you process.

Your files stay on your computer

This page is a static website. When you drop a PDF onto it, the file is read by JavaScript running inside your own browser tab, using the standard File API. There is no server-side component, no account, and no storage. The PDF is held in your computer's memory for as long as the tab is open, and it is gone the moment you close or reload the page.

Most other online PDF tools work the opposite way: they upload your document to their servers, process it there, and send a result back. That is a reasonable engineering choice, but it means your document sits on someone else's machine. If you are handling medical records, contracts, payslips or anything else you would not email to a stranger, that difference matters.

How to verify that yourself

Do not take our word for it. Check it:

  1. Press F12 to open your browser's developer tools.
  2. Go to the Network tab and click the clear button.
  3. Now load a PDF, reorder some pages, and save the result.
  4. Every row that appears is either a file belonging to this site itself, or a blob: entry. Nothing is addressed to another domain, and nothing carries your document.

Some rows do legitimately appear, and it is worth knowing what they are. To draw the thumbnails, the browser downloads the page-rendering code (pdf.worker.mjs), and then, only if your particular document needs them, supporting files from /pdfjs/ - fonts for PDFs that do not embed their own, character maps for Chinese, Japanese and Korean text, and decoders for the compressed images inside scanned documents. Those are downloads of our code, not uploads of your file. The blob: rows are your browser handing data to itself out of its own memory: the thumbnails, and your finished download.

Here is the blunt test. Look at the Method column, and switch it on if your browser hides it by default. Every single request is a GET - a request to receive something. There is not one POST or PUT in the whole session, and those are what a page would have to use to send your document anywhere. Check the Domain column too: every row is this site. Nothing is addressed anywhere else, ever.

Why the output keeps its quality

A PDF is a structured document, not a picture. Pages are copied from the source file into the new file at the object level, using the pdf-lib library. Text, fonts, vector graphics and images are carried across untouched.

This is why text in the saved file is still selectable and searchable, and why images keep their original resolution: nothing is re-compressed. Tools that convert each page to an image lose all of that. (The total file size will still change, because you are keeping a different set of pages than you started with.) The only place we draw pictures of pages is the on-screen thumbnail grid, rendered with pdf.js, and those thumbnails never touch the file you save.

What it can do

Honest limits

Nothing is tracked to you

See the privacy policy for exactly what is and is not collected.

← Back to the tool