Compress PDF Online — Reduce File Size
Reduce PDF file size with structural stream optimization, or switch to Maximum for image-heavy and scanned PDFs where photos are recompressed too. See the measured before-and-after size for your document.
How PDF Compression Works
PDF files contain streams and objects for text, fonts, images, forms, and document structure. This tool asks QPDF, through pikepdf, to store eligible streams and objects more efficiently. It does not downsample images or deliberately reduce their visual quality.
Our compression uses pikepdf, a Python library built on the mature QPDF C++ engine. This is the same technology used by professional PDF workflow tools. It's not a lossy re-render — it works at the object level, which means text and vector graphics are never degraded.
Which Compression Level Should You Choose?
| Level | Processing | Best For |
|---|---|---|
| Low | Compresses eligible streams without forcing Flate recompression or object streams. | A conservative structural rewrite. |
| Medium | Recompresses compatible Flate streams while preserving the existing object-stream strategy. | General structural optimization. |
| High | Recompresses compatible Flate streams and generates object streams. | Trying the most compact structural layout offered here. |
| Maximum | Structural optimization plus recompression of eligible embedded photos at a lower JPEG quality and, if large, a reduced resolution. Text and vector graphics are not affected; embedded photos will look softer. | Scanned PDFs and photo-heavy documents where Low/Medium/High barely reduce size — email attachments, uploads with a size limit. |
The smallest result depends on the source. A scan dominated by JPEG images changes very little at Low/Medium/High because those levels do not touch image data — for meaningfully smaller scanned or photo-heavy files, use Maximum, which trades some image quality for size.
Maximum also offers an approximate target size (Email/~5MB/~2MB/~1MB). The tool tries progressively lower image quality and resolution until it reaches the target or runs out of steps, then reports the actual size achieved — this is an approximation, not a guarantee, since a PDF dominated by text or vector graphics may not be reducible to a very small target at all.
What Affects Compression Results?
PDFs with inefficiently stored streams or unpacked objects may shrink. Already optimized PDFs, and files whose size is dominated by JPEG images, may change very little or can occasionally become larger after rewriting.
If you need to combine compression with other operations — for example, merge several PDFs then compress the result — use our PDF Merge tool first, then compress the output.
Related Guide
Need help choosing the right compression level? Read our guide on how to compress a PDF without losing quality, including file size examples, quality checks and best settings.
Frequently Asked Questions
Will compression reduce text or image quality?
Low, Medium, and High only change stream and object storage — they do not re-render pages or intentionally lower image quality. Maximum is different: it deliberately recompresses eligible photos at reduced JPEG quality and, if large, reduced resolution, to shrink image-heavy files further. Text and vector graphics are never affected by any level. Verify the resulting PDF before relying on it.
My PDF didn't get smaller — why?
The file may already be optimized, or its size may be dominated by image data that Low/Medium/High do not alter. Try Maximum, which recompresses images directly. If a file still cannot be reduced, the tool returns the original file unchanged rather than a larger one.
Can I compress a PDF to a specific size like 1MB or 2MB?
Choose the Maximum level and pick an approximate target (Email, ~5MB, ~2MB, or ~1MB). The tool tries progressively stronger image compression and reports the actual size it achieved. This is an approximation — a text-heavy or vector-heavy PDF with few images may not reach a very small target.
Is compressed output still compatible with all PDF readers?
Yes. The output is a standard PDF file compatible with Adobe Acrobat, Preview (Mac), Chrome's built-in viewer, and any other PDF reader.
Can I compress a password-protected PDF?
No — the password prevents modification. Remove the password first, then compress. If you set the password yourself, open the PDF, enter the password, and save without encryption.
What's the maximum file size I can compress for free?
20MB for free users. This covers the majority of documents — a 20MB scanned report is typically 50–100 pages at 300 DPI. Larger files can be split first using our Split PDF tool.
When Compression Saves the Most — and When It Doesn't
Structural optimization works best when streams or objects are stored inefficiently. It has limited effect when the source is already optimized or when most bytes belong to JPEG images, which are kept at their existing quality.
The result panel reports the measured before-and-after byte sizes for your file. A negative reduction means the rewritten output is larger; in that case, keep the original.
The Three Compression Levels Explained
Low compresses eligible streams but does not force Flate recompression or object streams.
Medium recompresses compatible Flate streams and preserves the document's existing object-stream strategy.
High recompresses compatible Flate streams and generates object streams. This is a different structural layout, but it is not guaranteed to produce the smallest file for every PDF.
After Compressing — What to Check
Always open the optimized PDF before sending it. Check that pages render, text and images are present, links and form fields still work, and the measured output size is useful. Keep the original until verification is complete.
If you need to both merge and compress — for example, combining several scanned pages then reducing the total size — merge first using our PDF merge tool, then compress the combined file.
Compress Before Sending — Attachment Size Limits
Attachment and upload limits vary by provider. Use the measured output size shown by the tool rather than assuming a particular reduction, then verify it meets the destination's current limit.