Compress PDF

Squeeze the images inside a PDF until the file fits, without uploading it.

Runs entirely in your browser

Loading the tool…

Your file is opened by this page and never uploaded. It is not sent anywhere, and the page keeps working with the network off.

Choose a PDF and it is made smaller here, in this page. Nothing is uploaded: nothing in the page sends your file anywhere, and it keeps working with the connection off.

The reason a PDF is too large is almost always the pictures in it. A scan or a page photographed on a phone carries images at a resolution nothing will ever read them at, and those are what this recompresses: each one is taken out, drawn smaller, saved at the quality you choose, and put back. Text, fonts and layout are untouched, so the document still says the same thing and still selects and searches.

Before it does anything, the page says what is actually in your file: how many images, how much of the file they are, and which of them can be worked on. A contract that is text all the way through will not shrink much, and it is better to be told that than to be sold a percentage that never arrives.

If the file is a scan you only need to read, PDF to JPG and then JPG to PDF gives you more control over each page. To make one large file out of several, or to drop the pages you do not need, Merge PDF and Split a PDF are usually the quicker fix: removing pages removes their images with them.

How to use it

  1. Choose a PDF. Nothing is uploaded when you do.
  2. Read what is in the file, then pick a quality and a size limit.
  3. Compress, and download it if the saving is worth it.

Questions

Is my PDF uploaded anywhere?

No. The file is read by your browser, and the images are recompressed on your own machine as WebAssembly and canvas work. Nothing in the page sends your file anywhere, so disconnect and it still works, which is how you can verify it rather than believe it.

Why did my file barely get smaller?

Because it was mostly text. Fonts and page content in a PDF are already compressed, so there is little left to take out; the room is in photographs and scans. The page tells you which kind of file yours is before you compress, so you are not guessing.

Does it make the text blurry?

Not the text. Real text in a PDF is drawn from a font and is left exactly as it was, so it stays sharp and still selects and searches. If your document is a scan, then every page is a photograph and quality does apply to it, which is why the setting is there and why 70% is a sensible place to start.

What does the size limit do?

It caps the longest edge of each image. A phone photograph of a page can be 4000 pixels across, which is four times more than anything reading it on screen will use, and half of it will be thrown away by the printer too. Capping at 2000 px keeps it printable and often halves the file on its own.

Why were some images left alone?

Only JPEG images can be taken out, drawn and put back safely. An image stored another way would have to be decoded here, and a wrong guess about how its colours are stored ruins the picture rather than shrinking it. Those are listed and left exactly as they were.

The result was bigger than the original. What happened?

Then the file was already compressed as far as it goes, and the page says so rather than handing you a worse copy. Each image is only replaced when the new one is meaningfully smaller, and if none of them are, nothing is swapped.

Is there a size limit on the PDF?

Only your machine's memory. The file and its images are held in the tab while the work is done, so a few hundred megabytes is fine on a laptop and a scanned book might not be.

Why will it not open my file?

Almost always because the PDF is password protected. An encrypted file cannot be read without its password, and this page says so rather than failing quietly. Remove the password in whatever created the file, then compress.

Your data stays on your device

Everything above runs inside your browser as WebAssembly compiled from Rust. Nothing you type is uploaded, logged or stored on a server. You can load this page once, go offline, and it still works.

The page does load ads, which is how it is paid for, and that script is the only thing here that fetches anything. It sees that the page was opened. It does not see what you type or the file you chose, because neither ever leaves this tab.