PDF Compressor
Try lossless stream recompression and object-stream packing in your browser. The output may be smaller, unchanged, or larger depending on the PDF.
Compress a PDF locally
Processed locally. Your PDF is never uploaded.
A QUICK WALKTHROUGH
How to use this tool
- Choose one unencrypted PDF up to 20 MB and 100 pages.
- Select a lossless compression level and compress locally.
- Review the actual size change and download the verified output. Keep the original.
Lossless stream compression
QPDF recompresses supported Flate streams and can pack objects into object streams. It does not lower image resolution, remove content, or promise a particular compression ratio.
Compare before you download
The tool reports both input and output sizes, including when the result is larger. The finished PDF is independently opened with PDF.js and its page count is checked.
Local processing and limitations
One PDF up to 20 MB and 100 pages is processed in a browser worker; output is limited to 100 MB. Password-protected PDFs are not supported. Rewriting may invalidate digital signatures or affect advanced features; retain the original.
GOOD TO KNOW
Common questions
Will the PDF always get smaller?
No. Already compressed streams and image data may have little room to shrink, and PDF rewrite overhead can make a small document larger. The actual size change is shown.
Does this reduce image quality?
No. This tool uses lossless stream recompression and object packing; it does not resample or re-encode image pixels.
Is the file uploaded?
No. QPDF WebAssembly runs locally in a browser worker. The selected PDF is not sent to a server.
Are passwords and signatures supported?
Password-protected input is refused. Rewriting may invalidate existing digital signatures; keep the original and verify the result.