Compress PDF · In-browser

Compress a PDF — without uploading it

A 40 MB scan won't fit in email. The usual fix is to upload to SmallPDF — handing your file to someone else's server. Here's the same job done in your browser.

How it works
  • Light / Medium / Strong presets
  • No upload cap (browser RAM is the limit)
  • Zero outbound requests (verify in DevTools)
  • Cancel mid-job at any page
The flow

Three presets. One smaller file.

PDF.js re-renders each page at the chosen DPI, JPEG-encodes it, then pdf-lib stitches the result. Your file never leaves your machine.

1

Open the Compress tab

Click the button above or go to /compress.

2

Drop your PDF

One file at a time. Loaded into memory — nothing sent over the network.

3

Pick a preset

Light (lossless re-pack), Medium (1.5× / JPEG 75% — everyday), or Strong (1× / JPEG 55% — for email).

4

Hit Compress

About 5–10 seconds for a 50-page PDF. Live progress bar; cancel any time.

5

Compare and download

See before / after / saved. If the result would be larger, you get the original back.

When each preset

Three modes, three trade-offs.

Pick by what the file is for.

Light

Lossless re-pack

Best for text PDFs. Trims a few percent without touching content. Signatures preserved.

Medium

The default

1.5×, JPEG 75%. Scans and brochures shrink 60–80% while staying readable.

Strong

Make it fit email

1× / JPEG 55%. Text stays legible; you'll see JPEG artefacts on photos.

Fallback

Never worse than original

If a preset would produce a larger file, the original is returned automatically.

Why compress locally

Big files are exactly the wrong files to upload.

Compression's input is usually a big file — exactly the wrong file to hand to a stranger's server.

Online compressors
  • Compression needs big uploads — the wrong files to send anywhere
  • SmallPDF free tier caps inputs at 50 MB
  • Server-side re-render with no preview of the trade-off
iKeepPDF Compress
  • Re-renders in your tab — no upload step
  • Live progress + cancel at any page boundary
  • 200 MB input works like 200 KB (only RAM matters)
Tips for very large files

Hundred-meg PDFs need a bit of care.

From compressing big files in-browser.

Stay in this tab

Browsers throttle background tabs — switching apps slows progress.

Close other heavy tabs

100+ MB at Medium can use ~1.5–2× the source size in RAM.

Use desktop over 100 MB

Phones often run out of RAM. If mobile fails, retry on a laptop.

Try Strong on photos

A 200 MB photo album often drops to 20 MB at Strong with no visible loss.

Trade-offs

Compression has real edge cases.

Where the browser approach falls short.

Batch compress 1000 PDFs

No API. Use Ghostscript or qpdf from the CLI.

Preserving editable text

Medium and Strong rasterise. Use Light if text search matters.

Forms or signatures

Rasterisation flattens them. Light keeps them intact.

Encrypted PDFs

pdf-lib can't open password-protected PDFs. Unlock first.

FAQ

Frequently asked compression questions.

How much smaller will my PDF get?

Depends on the content. Scans often shrink 70–90% at Medium; text PDFs maybe 5–15% at Light. If a preset would make the file larger, the original is returned.

Will the compressed PDF still be searchable?

Yes at Light. Medium and Strong rasterise pages, so output is image-only. Pick Light if search matters, or run OCR afterwards.

Is there a file size limit?

No enforced cap. Desktop Chrome with 8 GB+ RAM handles 500 MB PDFs. Phones cap out around 100 MB.

Will compression break a digital signature?

Medium and Strong rasterise pages, invalidating signatures. Light preserves the original objects — pick Light if signatures matter.