Compress a PDF to 1 MB
Get a PDF under 1 MB for a portal or an email, 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.
The gentlest setting that gets under it is found for you.
Lower squeezes harder. Below about 50% the difference starts to show on photographs, and sooner on text that was scanned.
Scanned pages are often far larger than anything that will read them.
- —Original
- —Compressed
- —Saved
1 MB is the limit on a great many upload forms, and a common one for files sent through company and school systems. It is usually met by a long scan, a set of photographs, or a presentation saved as a PDF, files that are several megabytes because the pictures in them were never meant to be small. This page opens on 1 MB and keeps the gentlest setting that gets under it.
Most of the size in such a file is a few large pictures, and most of each picture's size is detail no screen will show: a phone photo is 4000 pixels across and a laptop screen about 1500. Bringing the pictures down to what a reader will actually see, and re-saving them, is usually enough on its own; text, fonts and vector drawings are copied across unchanged.
A presentation or a brochure exported to PDF is the other common case. Its backgrounds and photographs shrink well; its text, being text, stays sharp at any zoom, which a PDF made of screenshots would not.
How to use it
- Choose your PDF. It is read in this tab and never uploaded.
- Leave the size this page opened on, or pick another under Smaller than.
- Press Compress: the gentlest setting that gets under the size is found for you.
- Download the result, which is already named as the compressed copy.
Questions
How long a scan fits in 1 MB?
Roughly ten to twenty pages at an ordinary scanning resolution, more if they are mostly white and fewer if they are dark or in colour. Beyond that, ask whether the whole document is needed, or split it into parts that each fit.
My slides exported to a 15 MB PDF. Will they fit in 1 MB?
Often, because the size is the photographs and background images, and those are exactly what get re-saved smaller. Text and charts drawn as vectors stay sharp. A slide that is itself one big image, a screenshot say, gets squeezed like any other picture.
Can I email the result?
Easily: every mail service takes 1 MB. Most take 20 to 25 MB, so if email is the only goal and the file is under that, it may not need compressing at all.
Is my PDF uploaded to do this?
No. It is read and rebuilt in this tab, by WebAssembly and your browser's own image encoder, and the page is served with a rule that forbids it from opening a connection anywhere. Turn the network off after the page loads and it works the same, which is the way to check rather than take it on trust.
What if it cannot get small enough?
It says so, with the smallest size it reached and why. Only the pictures inside a PDF can be squeezed; its text, fonts and structure are already compressed, so a file that is mostly those has a floor. Below that the way down is fewer pages: Split PDF takes out the ones the form does not need.
Typical files, and 1 MB
| File | What usually happens |
|---|---|
| Long scan, 10 to 20 pages | Fits, pictures scaled to screen size |
| Slides exported to PDF | Fits; photos shrink, text stays sharp |
| Phone photos in a PDF | Several fit, scaled down |
| A brochure or catalogue | Usually fits, at a medium setting |
| Hundreds of scanned pages | Will not; split it into parts |
Other sizes
The same tool opened on another limit. Any of them will aim at any size once you are there.
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.
This page makes no requests at all, to anywhere. That is not a promise in the copy: it is a Content-Security-Policy header your browser enforces, and connect-src on it is none. Open the network tab and watch nothing happen.