How to compress a PDF
- Add your PDF. Drag and drop your PDF onto the dropzone or click to browse. The file is read straight into your browser — it is never sent anywhere.
- Pick a compression level. Choose a preset or fine-tune the image-quality slider. Balanced suits most documents; pick Smallest for the biggest saving on scans and photo-heavy files.
- Let it process on your device. Embedded images are downsampled and re-encoded as JPEG and metadata is stripped, all locally. You'll see the original size, the new size, and the percentage saved.
- Download the smaller PDF. Save your optimized file. If the result would be larger than your original, the tool keeps the original so you never get a bigger file.
Why are PDF files so large?
A PDF can balloon to tens of megabytes for reasons that are not obvious when you look at the page. The single biggest culprit is embedded images: when you scan a document, export slides, or drop a phone photo into a report, the full-resolution picture is stored inside the file — often at 300 DPI or higher, far more detail than a screen or an email recipient will ever see. Other common contributors are embedded fonts, duplicated objects from repeated edits, and leftover metadata such as thumbnails, annotations, and revision history.
Scanned documents are the extreme case. A “scanned PDF” is really a stack of photographs of paper, with one large image per page and little or no real text. That is why a 10-page scan can be bigger than a 200-page text report. Those image-heavy and scanned files are exactly where this compressor shines.
It helps to think of a PDF as a zip-like container rather than a single flat picture. A born-digital report exported from a word processor is mostly compact text instructions plus a few embedded fonts, so it stays small. The moment you add high-resolution charts, product photos, or full-page screenshots, the file inherits all of their pixel data. Repeatedly editing and re-saving in some apps can also leave orphaned copies of replaced images behind, quietly inflating the file with data that is no longer even visible on the page.
How this PDF compressor works
Let’s be precise about what happens, because honesty matters more than a flashy “90% smaller” promise. This tool opens your PDF, finds the images embedded in it, and downsamples any that are larger than needed, then re-encodes them as JPEG at the quality you choose. It also strips non-essential metadata. It then rebuilds the document with pdf-lib and a WebAssembly image encoder — all inside the browser tab.
What it does not do is just as important. It does not flatten your pages into pictures, so your text stays real, selectable, and searchable, and vector graphics stay crisp at any zoom. The flip side: if your PDF is mostly text, tables, or vector art, there is almost nothing for an image recompressor to shave off, and the saving will be small. In that case the tool simply returns your original file — it never hands back something larger than what you started with.
The two settings you control map directly onto those two levers. The image-quality slider sets how aggressively each picture is re-encoded as JPEG: higher keeps fine detail and gradients intact, lower discards more for a smaller file. The presets also cap the maximum pixel dimensions of embedded images, so an oversized photo gets downsampledto a sensible resolution before it is re-encoded. Downsampling is usually where the biggest savings come from, because halving an image’s width and height removes roughly three-quarters of its pixels. Everything is processed one file at a time so memory use stays predictable even on a phone.
What a PDF actually is, and the privacy model
PDF (Portable Document Format) was created by Adobe and is now an open ISO standard (ISO 32000). A PDF is a container of objects: page descriptions, fonts, vector paths, and image streams, each of which can use its own compression. Because images are stored as separate streams, they can be swapped for smaller, re-encoded versions without touching the rest of the document — that is the mechanism this tool relies on. You can read Adobe’s own overview of the format on the Adobe PDF reference page.
Privacy is the reason to do this in a browser rather than uploading to a website. PDFs are often the mostsensitive files people compress: contracts, tax returns, medical records, ID scans, and signed agreements. With a typical online compressor, all of that leaves your machine and sits on someone else’s server. Here, your document is read into memory, rewritten on your device, and handed straight back to you. Nothing is transmitted, logged, or stored — you can disconnect from the internet after the page loads and the tool keeps working.
This local-first approach has a practical upside too: there are no queues, no per-file size caps imposed by a server, and no waiting for an upload and a download to finish. The speed depends only on your own hardware. The trade-off is that very large files lean on your device’s memory while they are being rewritten, so an extremely large scan on an older phone may be slow — splitting it into smaller PDFs first is an easy workaround.
Tips for the smallest PDFs
- Scan at a lower DPI.150–200 DPI is plenty for on-screen reading and email; 600 DPI quadruples the data for detail you’ll rarely see. Set the resolution before you scan for the easiest win of all.
- Choose Balanced first, then Smallest. Start with the Balanced preset, check the result, then re-run at Smallest and compare. On photo-heavy scans the lower setting can roughly halve the size again with little visible difference.
- Compress source images before they go in.If you’re building a PDF from photos or screenshots, shrink them first with the image compressor or JPEG compressor. A leaner input means a leaner PDF.
- Resize oversized pictures up front. A 6000-pixel photo on an A4 page is wasted detail. Use the image resizer or convert to a modern format with the image converter before assembling the document.
- Don’t expect miracles from text PDFs.If a file is almost all text and it barely shrinks, that’s normal — there were simply no heavy images to optimize.