Most "merge PDF" websites work the same way: your files are sent to their server, merged there, and sent back. For a flyer that is harmless. For a contract, a bank statement or a scan of your passport, you have just handed the document to a company you know nothing about, and "deleted after one hour" is a promise you cannot check.
Merging does not need a server at all. A PDF is a file format, and a browser can read, rearrange and write one entirely on your device. This post explains how that works, how to confirm a tool really does it, and what a local merge cannot do.
What happens when a browser merges PDFs
When you pick files on a page, the browser gives the page's JavaScript read access to those files through the File API. Nothing is sent anywhere by that step. The script then:
- Reads each file into memory as bytes.
- Parses the PDF's internal structure: a collection of numbered objects for pages, fonts, images and a cross-reference table that says where each one is.
- Copies the page objects, and everything they depend on, into a new document in the order you chose.
- Writes the new document out as bytes, wraps them in a
Blob, and offers it as a download.
At no point is a network request required. The PDF merge tool on this site works exactly like this, using the open-source pdf-lib library.
How to check any tool's claim
"Runs in your browser" is a claim, and some sites that make it quietly fall back to a server for large files. You can test it yourself in under a minute.
Watch the network. Open your browser's developer tools (F12), go to the Network tab, tick "Preserve log", and clear it. Add your files and merge them. A local tool makes no request that contains your documents. Look at the request sizes: a 30 MB upload cannot hide.
Go offline. Load the page, then switch on airplane mode or tick "Offline" in the Network tab. Merge again. A tool that still works offline cannot be sending your files anywhere. It is the most convincing test because it does not depend on your reading the traffic correctly.
Neither test proves what the site does with different input, but together they settle the question for the file you are about to use.
What a local merge cannot do
A browser-side merge is private, but it is not magic. Be aware of these limits.
- Bookmarks are not carried across. The outline panel of each source file does not make it into the merged one.
- Fillable form fields stop being live. The pages look identical, but the fields can no longer be filled in.
- Password-protected files must be unlocked first. The tool cannot open them without the password.
- Memory is the ceiling. Everything is held in your device's memory. Dozens of ordinary documents are fine; several hundred megabytes of scans may be slow, especially on a phone.
- It does not shrink anything. Pages are copied, not recompressed, so the output is about the size of the inputs combined. If the result is too large to email, the weight is almost always scanned images: shrink those with the image compressor before building the PDF.
Other ways to merge locally
If you would rather not use a web page at all, these also run entirely on your machine:
# qpdf
qpdf --empty --pages first.pdf second.pdf -- merged.pdf
# poppler-utils
pdfunite first.pdf second.pdf merged.pdf
# Ghostscript
gs -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=merged.pdf first.pdf second.pdf
macOS Preview can also do it by dragging one file's thumbnails into another's sidebar.
When pages are in the wrong order
The most common follow-up is that one page is sideways or in the wrong place. Rather than merging again, fix the result: Organize PDF shows every page as a thumbnail so you can move, rotate or delete them before saving, and the same rule applies: nothing is uploaded.
The short version: for anything sensitive, prefer a tool whose claim you can verify in a minute, and keep in mind that "private" and "feature complete" are different things.