PDF Compressor: shrink PDFs in your browser, no upload
Free PDF compressor that reduces image-heavy PDF file size by 50–80% — privately, on your device. Pick a quality preset, drop multiple files, and get smaller PDFs. Bookmarks and form fields are dropped; output is image-only.
Drop PDFs to compress
Drag & drop, or browse — up to 20 PDFs at once, ~200 MB each. Nothing uploads. Best for scans, brochures, and slide decks.
Your queue is empty
Drop PDFs above to get started — they stay on your device.
When you'll reach for this
Email-friendly size
Squeeze a 30 MB scanned PDF below the typical 10 MB email attachment cap.
Upload to gated portals
Get a PDF under the size limits of tax, immigration, and university portals.
Mobile sharing
Reduce a large brochure for fast sharing over WhatsApp or Telegram.
Archive a stack
Lower DPI for long-term storage of read-only documents.
How to compress PDFs in your browser
Drop in PDFs
Drag & drop or click to browse. Multi-select is supported — up to 20 files at once.
Pick a preset
Hit Email for the smallest output, Web for balanced, Print to stay close to the original, or Smallest for the most aggressive shrink. Custom exposes DPI and JPEG quality.
Compress
Each card shows pages, original size, compressed size, and savings. Compression runs one file at a time to avoid OOM on big PDFs.
Download
Click a card's download icon, or "Download all" to save the whole batch. If a re-encode would grow the file, the original is returned untouched.
Frequently asked questions
No. Compression runs entirely in your browser using PDF.js and pdf-lib. Page bytes never leave your device.
Yes — this version rasterizes each page as a JPEG. The output is image-only, so OCR or text search no longer works on it. For text-heavy PDFs, this isn't the right tool.
Scans and image-heavy PDFs typically shrink 50–80% at the Web preset. Text-only PDFs may grow rather than shrink — the bloat guard catches this and returns the original instead.
Both are dropped during rasterization. Use the original if you need to keep them.
Full PDF object-graph rewriting is too complex for a quick browser tool. This version targets the common case: image-heavy PDFs, where a re-encode wins big.
About browser-side PDF compression
PDF compression has two flavors. Lossless compression rewrites streams and deduplicates objects — savings of 5–15%. Lossy compression re-encodes embedded images at lower quality, which can shrink scans by 50–80%. This tool focuses on the lossy path because it has the biggest impact for the common case.
How it works
- PDF.js renders each page at your chosen DPI onto a canvas.
- The canvas is encoded as a JPEG at the chosen quality.
- pdf-lib embeds the JPEG into a fresh PDF and adds the page.
- A bloat guard compares the output to the input — if larger, the original is returned.
Trade-offs
- The output is image-only. Searchable text becomes pixels — OCR is needed to make it searchable again.
- Annotations, bookmarks, and form fields are stripped.
- Best for scans, brochures, and presentations. Worst for contracts and text-heavy reports.