Your file never leaves your device
When you choose a PDF, your browser hands it to a background worker on this page. The compression engine, made of standard WebAssembly modules, is downloaded once like the page’s other files. Your PDF is read and rewritten in your device’s memory. Nothing is sent to a server, and when you close the tab the data is gone.
What happens to your PDF
- Reading. The PDF’s structure is parsed and checked. Damaged files are repaired where possible.
- Finding where images appear. The page drawing instructions are read to work out how large each image is actually shown. A photo shown at 5 cm wide does not need the resolution of a poster.
- Reducing oversized images. Images denser than the chosen setting needs are scaled down. Photos and scans are saved as JPEG; diagrams and screenshots stay lossless so their edges remain crisp. A new version of an image is only used if it is actually smaller.
- Rewriting the file. Only the changed images are replaced. Everything else, including text, fonts, vector drawings, links, bookmarks, annotations and form fields, is copied unchanged, and the file structure is stored compactly.
- Checking the result. The new PDF is opened again and checked before it is offered to you, and its page count must match the original. If the result isn’t smaller, you are told so.
Settings
- Recommended: images are reduced to 150 dpi at the size they appear on the page, using JPEG quality 75 for photos.
- Strong: 100 dpi, JPEG quality 60.
- Lossless: images are not changed at all; only the file structure is optimised.
- Target size: writes real candidate files and measures each one, keeping the best quality that is under your limit. Each measurement corrects the next guess, so it rarely needs more than two or three attempts. If even the strongest setting isn’t enough, you get the smallest version with a clear message, never a false “success”.
When you set a limit, 1 KB means 1,000 bytes. A file under that limit also passes forms that count 1,024 bytes per KB.
What it doesn’t do (yet)
- Password-protected PDFs aren’t supported. Remove the password first.
- Embedded fonts aren’t reduced, so PDFs whose size comes mainly from fonts shrink little.
- Some image types are left unchanged: CMYK, JPEG 2000, black-and-white fax and JBIG2 images.
- Any change to a digitally signed PDF invalidates its signature. The tool warns you before you download.
- Very large files are limited by your device’s memory.
Built on open-source software
The compression engine uses qpdf (Apache License 2.0) to read and write PDF files and MozJPEG (via jSquash) to encode images, both compiled to WebAssembly.
Last updated: