• Zero upload
  • Local CPU
  • Offline-capable
  • Auto cleanup
0 outbound requests

pages / Merge

Merge

Combine multiple PDFs into one.

Add at least one PDF in the file tray to begin.

Methodology & Technical Transparency

Libraries used

  • pdf-lib — Core PDF construction and editing logic
  • pdf.js — PDF rendering and page rasterisation

Memory strategy

After each operation, URL.revokeObjectURL() is called immediately. All pdf.js document handles are destroyed via pdfDoc.destroy(). Workers are terminated on completion or component unmount.

We do not guarantee the permanent storage of files (as we don't store them). Processing of password-protected files is not supported locally.

Key Features

  • Page-level control

    Drag thumbnail previews to reorder or delete individual pages from any file before merging.

  • No file count limit

    Add as many PDFs as your device memory allows — there is no server-side restriction.

  • 100% private

    Processing runs in a Web Worker inside your browser. No file data ever leaves your device.

Common Use Cases

Ideal for assembling multi-chapter reports, consolidating signed contracts from multiple parties, or packaging travel and immigration documents into a single submission.

Frequently Asked Questions

Are my files kept private?
Yes. Everything runs locally using pdf-lib. No file content is sent to any server.
How many PDFs can I merge at once?
There is no hard limit. The constraint is your device's available RAM. Dozens of typical-sized PDFs work without issue.
Does it work offline?
Yes. Once the page loads, a Service Worker caches the tool so it works fully offline.