How to merge PDF files
- Drag the PDFs you want to combine into the drop zone above, or click "choose files" to browse.
- Drag rows to set the order pages will appear in the final PDF — page 1 of the top file becomes page 1 of the result.
- Click Merge & download. The combined PDF saves directly to your downloads folder.
Everything runs inside the browser tab you have open right now. No file is sent to a server.
If you want to confirm that, open browser DevTools (press F12), switch to the
Network tab, and watch while you merge — you'll see no upload requests.
When to merge PDFs
- Bundling supporting documents — combine a cover letter, resume, and references into a single attachment for a job application.
- Scanned receipts — group expense receipts into one PDF for an end-of-month reimbursement claim.
- Multi-page forms — stitch together signed pages that came back from different people.
- Course material — combine separate chapter PDFs from an instructor into one studyable document.
- Property and legal paperwork — consolidate a contract, addenda, and exhibits before sending or archiving.
How it works under the hood
keptlocal uses pdf-lib,
an open-source JavaScript library that reads and writes PDF documents directly in JavaScript.
When you add files, the bytes are read into an ArrayBuffer in your browser's memory.
Merging creates a new PDF document and copies the page objects from each source — text remains selectable,
images stay at their original resolution, and the result is a standard PDF that opens in any viewer.
Because the work happens locally, there is no upload-then-process latency. The merge typically completes in under a second even for documents totaling hundreds of pages. Performance is bounded only by your device's RAM.
Limits and what to expect
- File size: no hard limit, but very large documents (~500 MB+) may slow your browser.
- Password-protected PDFs: we attempt to read encrypted PDFs with the
ignoreEncryptionflag. If a file requires a password to open the content, the merge may fail — unlock it first using your PDF reader. - Form fields and annotations: preserved on a best-effort basis. Complex interactive forms occasionally lose field state during merge.
- Browser support: works in any modern browser (Chrome 90+, Firefox 90+, Safari 15+, Edge). Older browsers without WebAssembly support won't work.
Privacy compared to other PDF mergers
Most online PDF tools — including the popular ones — upload your files to their server, process them there, and serve the result back. They publish privacy policies that say files are deleted after some number of hours, but you have no way to verify that. With keptlocal, the question doesn't arise: the file simply never leaves your machine.
This matters most for documents you wouldn't share casually — contracts, financial records, ID scans, medical paperwork. Use keptlocal whenever the content is private and you'd rather not trust a third-party server with it.