Join PDFs into one document, with a bookmark for each file
Initializing in your browser…
Join clips end to end or stack them on one timeline, with an equal-power crossfade that holds the level through the join, BS.1770 loudness matching between files, and the merged result measured before you download it.
Join clips end to end, saying in advance whether they can be stitched together untouched and, when they cannot, exactly which differences stop it. Clips of different sizes are letterboxed into one frame rather than squashed.
Turn pictures into a PDF at the size on paper you choose. Set the resolution a pixel count prints at, pick the paper, and see every page size and the resolution it prints at before anything is written.
A signed contract, an appendix, and a cover letter are three PDFs that must go to the client as one document.
Input
cover.pdf + contract.pdf + appendix.pdf (drag to order)
Output
bundle.pdf, 14 pages in the set order, one bookmark per source file
Each file is read on arrival, so the list shows 2 + 9 + 3 pages before you press anything and the output page count is not a surprise. Pages are copied as objects rather than re-rendered, so every page keeps its own size and its text stays selectable. Source bookmarks cannot survive a page copy (a PDF keeps them in the catalog, not on the pages), so the tool says how many it dropped and writes a fresh one per file instead. It runs in the browser, so a confidential contract is never uploaded.
A PDF is not a single continuous stream and it is a collection of numbered page objects plus metadata (bookmarks, form fields, embedded fonts, images) tied together by a cross-reference table. Merging PDFs is therefore not string concatenation; it is building a new PDF whose page tree references the right subset of objects from each source file, with the cross-reference table rewritten so page numbering stays consistent. A naive concatenation of two PDFs produces a file that either will not open or shows only the first source's pages. This merger handles the object rewriting correctly. Built on pdf-lib, it loads each source file and copies its pages (using copyPages) into one new document in the order you set, then writes a fresh cross-reference table. Upload any number of source files, reorder them by dragging, and export a single output with sequential page numbers. Each page keeps its own embedded resources (fonts, images), so the visible content of every page is preserved exactly. There is also a "Download as ZIP" option that bundles the unmerged source files together instead of combining them.
Combine cover page, table of contents, chapters, and appendices from separate files into one polished report.
Merge monthly invoices into a single document for accounting or client records.
Join a resume, cover letter, and reference letters into one PDF for job or grant applications.
Combine exhibits, declarations, and forms into the required filing order.
The merger works on the PDF object model directly using pdf-lib. For each source it calls PDFDocument.load, then copyPages over every page index, and addPage into a single output document, finishing with PDFDocument.save. Because page content streams (the actual drawn marks) are copied as objects rather than re-rendered, output pages are visually identical to source pages, no rasterization, no re-encoding of embedded images, and no quality loss on text or vector graphics.
Every file is read as soon as you add it, so the list shows how many pages each one contributes, what paper it is on, how many bookmarks it carries and whether it can be read at all. The total page count of the output is on the page before you press anything. A file that cannot be read, because it is password protected or is not a PDF, is marked in the list and left out of the merge rather than taking the whole job down.
Page sizes are preserved per page, not normalized. A document merging A4 and US Letter sources will have mixed page sizes in the output, matching each source's original dimensions. That is usually what you want, and the tool says so when it happens, because a printer will have to scale or letterbox some of those pages.
Bookmarks need explaining, because this is where a merger can quietly lose something. A PDF keeps its bookmarks in the document catalog rather than on its pages, so copying pages leaves every source bookmark behind. This tool counts them and tells you how many were dropped, and by default it writes a fresh one-level outline instead, with an entry per source file pointing at the page that file starts on, and asks the viewer to open with the bookmark panel showing. Document-level form fields are not carried over either, and that is reported the same way. Encrypted PDFs generally cannot be loaded for copying until they are unlocked first. And because a digital signature covers the hash of the entire original document, merging a signed PDF into a new document invalidates that cryptographic signature even though the drawn signature mark stays visible on the page. That is a property of the PDF signing standard, not a bug in the merger.
There is no hard limit. Performance depends on your browser and the total file size, but merging dozens of typical documents works smoothly.
No, and the tool tells you how many were dropped rather than leaving you to find out. A PDF keeps its bookmarks in the document catalog, not on its pages, so copying pages cannot bring them along. Instead the merger writes a fresh bookmark for each file you merged, pointing at the page that file starts on, which is usually the table of contents you actually wanted.
Yes. Pages are copied as PDF objects rather than re-rendered, so text stays selectable and vector graphics and images keep their original quality. Note that document-level outline bookmarks are not specially rebuilt when files are combined.
You will generally need to remove the password first, since an encrypted file cannot be loaded for copying until it is unlocked.
PDF parsing and editing happen in your browser. Documents, and everything inside them, are never uploaded or stored remotely.