PDF Compressor

Compress a PDF in your browser by re-encoding its embedded JPEG images at a lower quality and restructuring the file with object streams, no upload needed.

Loading tool…

PDF CompressorShrink a PDF entirely in your browser: it re-encodes embedded JPEG (DCTDecode) images at a lower quality and re-saves the document with object streams to drop redundant structure. The file is parsed with pdf-lib and re-encoded with the Canvas API locally, so it is never uploaded anywhere. PDFs built mostly from scanned pages or photos shrink the most; text-and-vector documents change little.

What is PDF Compressor?

A free online PDF compressor that reduces PDF file size right in your browser. It targets the two things that bloat a PDF: heavy embedded raster images and redundant document structure. Choose a Low, Medium, or High quality level, and the tool re-encodes the embedded JPEG images at that quality with the Canvas API and re-saves the whole document with object streams turned on. Office workers emailing reports, students uploading assignments under a size cap, and anyone hitting a PDF upload limit can drop a file in and get a smaller one back. Because both the parsing (pdf-lib) and the image re-encoding (Canvas) run locally, the PDF is compressed without ever leaving your device.

How to use PDF Compressor

  1. Drop a PDF onto the dropzone, or click it to browse and pick a PDF from your device.
  2. Pick a quality level: Low for the smallest file, Medium for a balance, or High to keep images untouched and only restructure the document.
  3. Watch the Original, Compressed, and Saved stats update automatically a moment after the file loads — no extra button press to compress.
  4. Check the first-page preview to confirm it is the right document; click it to enlarge.
  5. Click Download to save the compressed PDF, or use Reset to clear and start over with another file.

Examples

Shrink a scanned PDF before emailing it

Drop a scanned multi-page PDF made of photographed pages and pick Medium. The embedded JPEG images are re-encoded at lower quality, the Compressed stat drops well below the Original, and Saved shows a negative percentage like -55%. Download saves it as document-compressed.pdf.

Restructure a PDF without touching image quality

Pick High on a report that is mostly text and charts. Images are left exactly as they are, and the document is re-saved with object streams. The size may shrink only slightly (or show a small + if it was already optimized), but page rendering is unchanged.

Squeeze a photo-heavy portfolio to the smallest size

Drop a PDF full of full-page photographs and pick Low. Each embedded JPEG is re-encoded at a much lower quality, giving the largest size reduction at the cost of some visible image detail.

Frequently asked questions

How does the compression actually work?
Two ways. The document is always re-saved with object streams enabled, which removes redundant structure, and for Low and Medium quality the embedded JPEG (DCTDecode) images are decoded and re-encoded at a lower quality with the Canvas API. High skips the image step and only restructures.
Why did my PDF barely get smaller?
Most of a PDF's size usually comes from raster images. A PDF that is mostly selectable text and vector graphics has little for the tool to re-encode, so the savings are small. The biggest reductions come from scanned or photo-heavy PDFs at Low or Medium quality.
Will compressing reduce the image quality?
At Low and Medium, yes — embedded JPEG images are re-encoded at a lower quality, which is what shrinks the file. High leaves all images untouched and only restructures the document, so visual quality is preserved.
Why did the compressed file come out the same size or larger?
If the images were already well compressed, re-encoding can match or exceed their size; in that case the tool keeps the original image. The Saved stat shows ± or a + percentage. Picking a lower quality, or accepting that an already-optimized PDF can't shrink much, are the options.
Is my PDF uploaded to a server?
No. Everything runs 100% client-side in your browser — pdf-lib parses the file and the Canvas API re-encodes the images. Your PDF is never uploaded, sent, or stored anywhere, so it works even offline once the page has loaded.

Related tools