Home / PDF Tools / Compress PDF

Compress PDF

Shrink PDF size with smart image downsampling and stream compression.

Free, no uploads, no sign-up. Runs 100% in your browser.

How Compress PDF works

Compress PDF rewrites the document with compressed object streams and, for image-heavy pages, re-encodes embedded images at a lower resolution and quality. Text and vector content stay sharp. Everything happens in your tab with pdf-lib and PDF.js.

Input: PDF. Output: PDF.

How to use Compress PDF

  1. Drop your PDF onto the Compress PDF area, or click to choose it.
  2. Wait a moment while page thumbnails render locally.
  3. Choose the pages and options you need. Previews update as you go.
  4. Press the main action button and download the finished PDF.

Tips

  • Scanned documents shrink the most. Text-only PDFs are often already small.
  • If the result is larger than the original, keep the original: it was already optimized.
  • For upload portals with strict limits, try the strongest preset, then check readability.

Compress PDF FAQ

Will compression make text blurry?
Real text stays vector and sharp. Only embedded images are downsampled, depending on the preset you pick.
Are my files uploaded?
No. This tool runs entirely in your browser tab. Files are read from your disk into memory and the result is generated locally.
Is it free? Are there limits or watermarks?
Free and open source (MIT). There are no file-size caps, daily quotas, accounts or watermarks.
Does it work offline?
Yes, once the page (and any engine it needs) has loaded, it keeps working without a connection thanks to the service worker cache.

Related tools

  • PDF to Grayscale: Convert color PDFs to grayscale or high-contrast black & white.
  • Merge PDF: Combine multiple PDFs into one ordered document with drag-and-drop sorting.
  • Image Compressor: Shrink images in bulk with quality and width controls and live savings.
  • Split PDF: Split by ranges, every N pages, or extract each page into a ZIP.

OpenFile runs in your browser. Turn on JavaScript to use the tools.