AnyTool
Your files never leave your device. All processing happens locally in your browser.

How do I merge PDF files into one document online without uploading them?

Open Merge PDF, then drop your PDFs onto the page — or click to pick them (you need at least two). Each file appears as a card with a real first-page thumbnail rendered by Mozilla’s pdf.js, and you drag the cards up or down to set the exact order, using the numbered badges as a guide. Click Merge and the tool combines every file’s pages, in your chosen order, into a single document and hands you the result to download as anytool-merged.pdf. The whole job runs in your browser with the pdf-lib library inside a Web Worker, so nothing is uploaded and your PDFs never leave the tab.

  • Combines several PDFs into one document entirely in your browser — no upload, no install, no account
  • Real first-page thumbnails (via pdf.js) plus drag-to-reorder with numbered badges so you control the page order
  • Merges pages losslessly with pdf-lib in a Web Worker, keeping each page’s content and text exactly as-is
  • Add more files at any time and remove any file before merging; a running page and size count is shown
  • One click downloads the combined anytool-merged.pdf; works offline once the page is cached

What is

Merge PDF

Merging PDF (also called combining, joining or concatenating PDFs) is the act of taking two or more separate PDF documents and stitching their pages, in a chosen order, into a single new PDF. It is how scattered files — a cover letter and a résumé, scanned receipts, chapters of a report, or a batch of invoices — become one tidy document that is easier to send, print or archive. A merger copies the pages of each source file so the text, images and layout of every page are preserved exactly; only the container changes. This tool performs the merge on your device with the pdf-lib library running in a Web Worker, reordering files by drag-and-drop before combining them, so no cloud service is involved and your files are never uploaded.

PDF Tools

Related terms

PDFcombine PDFjoin PDFconcatenatepdf-libpdf.jsreorder pagesWeb Workerdrag and dropclient-sidepage thumbnailsdocument assembly

Frequently Asked Questions

No. Every file is read and combined entirely in your browser, so your PDFs never leave your device — there is no upload, server or account.

Nothing is uploaded. When you drop or pick your PDFs, the tool reads each one locally with the browser’s File API, renders a first-page thumbnail with the pdf.js engine (whose worker is bundled locally, not fetched from a CDN), and merges the pages with the pdf-lib library inside a Web Worker on your own machine. There is no server, upload, database, API or tracking anywhere in the processing path, so contracts, statements, scans and private paperwork stay on your device; the tool works offline once cached, and closing the tab discards everything. The only optional network use anywhere on the site is consent-gated advertising, which never sees your files.

Drag the file cards up or down before you merge. The numbered badge on each card shows its position, and the tool combines the files top-to-bottom in that exact order.

After you add your PDFs, each one becomes a card showing its first-page thumbnail, file name, size and page count, with a numbered badge marking its place in the sequence. Grab any card and drag it to a new position — the badges renumber instantly — so you can arrange, for example, a cover page first and appendices last. You can also click “Add more files” to append extra PDFs, or remove any file with its close button. When the order looks right, click Merge and the pages are combined from the top card down, giving you a single document that follows the sequence you set.

You need at least two files, and there is no fixed upper limit — you can merge many PDFs at once. The practical ceiling is your device’s memory, since everything is combined in the browser.

Merging requires a minimum of two PDFs (the button stays disabled until you have added a second file). Beyond that there is no hard cap on how many documents or pages you combine, and the tool shows a running total of files, pages and size as you build the list. Because the entire merge happens in browser memory rather than on a server, the real limit is the RAM available to your browser tab: a handful of ordinary documents merges in a moment, while dozens of large, image-heavy scans use more memory and take a little longer. If a device is very constrained, merge in smaller batches and then combine the results.

Merging is lossless: pdf-lib copies each page exactly, so text stays selectable and the layout, fonts and images are untouched. Only the pages are re-housed in one new file.

The merge does not re-encode or re-render your pages, so there is no quality loss — pdf-lib copies each source page’s content, fonts, images and vector graphics verbatim into a new document, which means text remains selectable and searchable and the layout is identical to the originals. One honest caveat: because pages are copied individually, document-level extras such as the outline (bookmarks) and some interactive form-field states may not carry across, and named-destination links between files can shift; if a merged form or table of contents matters, check it afterwards. For the page content itself, what you put in is exactly what you get out.

Detailed Explanation

How It Works

Combining Multiple PDFs Into One — Entirely in the Browser

Merge PDF stitches two or more separate PDF documents into a single file without uploading a byte. Drop your PDFs onto the page or click to pick them, and each one appears as a card with a real first-page thumbnail rendered by Mozilla’s pdf.js, its file name, size and page count, and a numbered badge marking its place in the sequence. Drag the cards up or down to set the exact order, add more files or remove any you do not want, then click Merge. The tool combines every file’s pages, in your chosen order, into one new document using the pdf-lib library running in a Web Worker, and hands you the result to download as anytool-merged.pdf. Because the pages are copied rather than re-rendered, the merge is lossless and the whole job runs on your device.

  • Combines several PDFs into one document in the browser with pdf-lib — no upload, no install, no account
  • Real first-page thumbnails via pdf.js and drag-to-reorder with numbered position badges
  • At least two files are required; a live count of files, pages and total size is shown
  • One click downloads the combined anytool-merged.pdf; works offline once cached
Use Cases

When Merging PDFs Is the Right Move

Merging is the natural step whenever scattered files need to travel or be filed as one. Job seekers combine a cover letter, résumé and portfolio into a single attachment; students and researchers join chapters, appendices and a bibliography into one report; finance and admin teams stitch a month of receipts, invoices or statements into a single archive; and anyone scanning paper page-by-page reassembles the parts into one clean document. A single PDF is easier to email under attachment limits, simpler to print in the right order, and tidier to store than a folder of loose files. Because this tool lets you reorder by dragging and preview each file’s first page, you can assemble documents in exactly the sequence you want — cover first, appendices last — before committing to the merge.

  • Ideal for combining cover letters and résumés, report chapters, or batches of receipts and invoices
  • One file is easier to email, print in order and archive than many loose PDFs
  • Drag-to-reorder and per-file thumbnails let you assemble the exact sequence you want
  • Add or remove files before merging so the final document contains only what you intend
Technical Details

How the Merge Works

When you add PDFs, the page component reads each file into an ArrayBuffer with the browser File API and renders its first page with pdf.js (pdfjs-dist), whose worker is bundled with the app locally rather than fetched from a CDN, producing the thumbnail and page count shown on each card. Reordering is a pure UI operation on the file list — dragging a card updates its index and the numbered badges. On Merge, the file buffers are passed in list order to a Web Worker, where pdf-lib creates a fresh empty PDFDocument, loads each source with load(buffer, { ignoreEncryption: true }), copies all of its pages with copyPages(source, source.getPageIndices()) and appends them with addPage, one file after another. The assembled document is serialised back to bytes, wrapped in a Blob and offered for download as anytool-merged.pdf. Running the heavy work in a Worker keeps the interface responsive, and progress is reported as each file is added.

  • pdf.js (pdfjs-dist) renders first-page thumbnails; its worker is bundled locally, not from a CDN
  • pdf-lib merges in a Web Worker: PDFDocument.create, then copyPages + addPage per file, in list order
  • Sources are loaded with ignoreEncryption so ordinary files open, and pages are copied verbatim (lossless)
  • The result is serialised to a Blob and downloaded as anytool-merged.pdf; the UI stays responsive
Limitations

Honest Limitations

The merge runs entirely in browser memory, so very large or numerous files are bounded by your device’s RAM; merging dozens of big, image-heavy scans uses more memory and takes longer than a few ordinary documents, and on a constrained device it is best to combine in smaller batches. You need at least two files for the button to activate, and each source must be parseable by pdf-lib — a corrupt or unreadable file is reported rather than silently dropped. Because pages are copied individually, document-level extras do not always survive: the outline (bookmarks) and some interactive form-field states may not carry across, and named-destination links between separate files can shift, so a merged form or table of contents should be checked afterwards. The tool combines whole files in order; it does not, on this page, let you pick or drop individual pages from within a source — use Split PDF or Organize PDF for page-level work.

  • In-memory processing bounded by device RAM; merge very large sets in smaller batches
  • Needs at least two files; a source pdf-lib cannot parse is reported, not skipped silently
  • Bookmarks, some form-field states and cross-file named links may not be preserved — verify after
  • Combines whole files in order; for page-level selection use Split PDF or Organize PDF
Privacy & Security

Privacy: Your PDFs Never Leave the Tab

PDFs are often exactly the sensitive kind — contracts, bank statements, medical records, ID scans, signed agreements — and this tool is built so none of it leaves your machine. Each file is read with the browser File API, previewed in memory with pdf.js (whose worker is bundled locally, so no third-party CDN is contacted) and merged with pdf-lib inside a Web Worker on your own device. There is no server, upload, database, logging, API or CDN anywhere in the processing path, and the merged file is generated locally and downloaded straight from a Blob. The tool works offline once the page has been cached, and closing the tab discards every byte. There is no login and no telemetry, and the only optional network use anywhere on the site is consent-gated advertising, which never sees your files.

  • Files read, previewed and merged entirely in the browser
  • No server, upload, database, API or CDN in the processing path; pdf.js worker bundled locally
  • The merged PDF is built on-device and downloaded from a local Blob; works offline once cached
  • No login or telemetry; closing the tab discards everything
Merge PDF — capabilities, order control and limits
CapabilitySupportNotes
InputsTwo or more PDFsDrag-and-drop or file picker; add more or remove files before merging; minimum of two
Order controlDrag-to-reorderNumbered badges and first-page thumbnails; files are combined top-to-bottom in your order
FidelityLossless page copypdf-lib copyPages keeps text selectable and layout, fonts and images intact; no re-encoding
Preserved extrasPage content onlyBookmarks, some form-field states and cross-file named links may not carry across — verify after
OutputSingle PDF (anytool-merged.pdf)Serialised to a Blob and downloaded; contains every file’s pages in the chosen order
Privacy & scaleIn-browser, bounded by RAMMerged with pdf-lib in a Web Worker on-device; 100% client-side, no upload

Merge PDF combines files in the browser: pdf.js renders a first-page thumbnail for each PDF, you drag the cards into order, and pdf-lib copies every file’s pages into one new document inside a Web Worker, downloaded as anytool-merged.pdf. The merge is lossless so text and layout are preserved, though bookmarks and some form/link data may not survive; you need at least two files and processing is bounded by device RAM. Everything runs on-device; nothing is uploaded.