Turn images into a PDF
Combine JPG photos into a single PDF in your browser. Baseline JPEGs are embedded byte for byte, so no quality is lost and nothing is uploaded.
Drop files here (up to 100)
or paste from the clipboard
Order of the pages
How it works
A PDF can hold JPEG data natively, so a baseline JPEG is copied into the document exactly as it arrived — not decoded, not re-compressed, byte for byte. The page is then sized around it. Only images the PDF specification cannot carry directly, such as progressive or CMYK JPEGs, take a detour through a canvas, and the result panel says when that happened.
Measured results
These figures come from running this exact tool over a fixed set of sample files on every build, not from an estimate.
| Sample file | Settings | Before | After | Change |
|---|---|---|---|---|
| photo-gradient.jpg | one page per image | 504 KB | 505 KB | −0% |
- photo-gradient.jpg: pages: 1 · before: 504.1 KB · after: 505.1 KB · note: embedded without re-encoding
Benchmark run 2026-08-01.
What to watch out for
A PDF stores baseline JPEG only. Progressive files, which phone cameras and "save for web" exports produce very often, are decoded and re-compressed once so they can go in at all. That is a second lossy pass, and the tool tells you how many files it affected.
Embedding does not compress anything further, because the images are already compressed. A hundred five-megabyte photographs make a five-hundred-megabyte document. Shrink the images first if the result needs to travel by email.
The pages contain images, so nothing in them is searchable, selectable or readable by a screen reader. A scanned document converted this way looks right and is completely opaque to search. Recognising the text would need OCR, which this tool does not do.
Limits
Files up to about 50 MB work reliably. Beyond that, the ceiling is your device's memory rather than any rule we impose — the work happens on your own machine. Tested in Chrome 140, Firefox 143, Safari 18.
Why embedding beats converting
Most image-to-PDF tools decode your photograph and re-encode it on the way in. That is unnecessary. The PDF format has been able to carry JPEG data natively since the 1990s, so the compressed bytes can simply be placed inside the document and pointed at by a page.
The practical result is that a baseline JPEG comes out of this tool at exactly the quality it went in, and the operation is fast because no pixels are touched. The page is built around the image rather than the image being reshaped to fit the page.
The progressive JPEG exception
There are two ways to store a JPEG. A baseline file is read top to bottom in one pass. A progressive file stores the image in successive refinements, which is why a photo on a slow connection appears blurry and then sharpens.
PDF supports the first and not the second, and progressive files are extremely common — many phones and most “export for web” settings produce them by default. Rather than reject perfectly ordinary photographs, this tool decodes those once and re-compresses them at high quality so they can be embedded. It is a genuine quality cost, small but real, and the result panel reports the number of files affected rather than leaving you to wonder.
The same path handles CMYK JPEGs, which come out of print workflows and which PDF readers and pdf-lib disagree about.
Page size, and why fitting is the default
A fixed page size means a decision about what to do with an image whose proportions do not match. The two options are letterboxing, which leaves white bands, and cropping, which throws away part of the picture without asking.
Fitting each page to its own image avoids the question. Every photograph occupies its whole page, nothing is cut, nothing is padded, and pages may differ in shape — which is fine for anything read on screen.
Choose A4 or Letter when the document is going to a printer, where consistent paper size matters more than perfect framing. Images are then scaled to fit inside the margin and centred, never cropped.
Everything happens on your machine
The document is assembled in a Web Worker in your browser. Photographs of passports, contracts, receipts and medical documents are exactly the kind of thing people convert to PDF, and exactly the kind of thing that should not be uploaded to a stranger’s server to do it. Nothing here is transmitted, and the practical limit on batch size is your own device’s memory rather than someone else’s quota.
Your files never leave your browser. Last updated 2026-08-01.
Next step
Your file is already here in this browser, so the next tool starts with it loaded.
Related tools
- Compress a JPGShrink JPG photos in your browser with MozJPEG, the same encoder Mozilla built for the web. Typically 20 to 40 percent smaller than a plain re-save.
- Resize an imageChange an image's dimensions in your browser. Set a width, a height or both, keep the aspect ratio, and pick the output format. Nothing is uploaded.