OffTility

Compress PDF

Smaller file, readable text, no watermark. Nothing you choose ever leaves this tab.

Drop PDFs here

Choose one or more PDFs. They stay on this device.

Your file stays on this device. Nothing is sent anywhere.

What this tool does

Compress PDF shrinks a PDF's file size by re-encoding the photos and scans embedded inside it — the same idea as Compress Image, applied to the images living inside a PDF rather than a standalone photo file. It's built for the everyday problem of a scanned document or report that's much larger than it needs to be because of the images packed into it, whether those images were already stored as JPEG or as raw, uncompressed pixel data (which is how many PDFs from Word, browsers' "Print to PDF", and similar tools actually store them).

You can compress a batch of PDFs in one go, and each one downloads individually once it's done, with its before-and-after size shown alongside how many of its embedded images were actually recompressed, so you can see exactly what happened rather than just trusting a percentage.

How to use it

Choose one or more PDFs, then pick a compression level: Low, Medium, or High. Low keeps images looking closest to the original at a modest size reduction; High pushes quality and resolution down further for the smallest possible file. There's nothing else to configure — the level controls both the image quality and the resolution each image is resampled to. Where possible, that resampling targets how large an image is actually drawn on the page rather than a flat size limit, so a high-resolution scan placed small on a page shrinks much further than one that fills the page.

Press compress, and each PDF processes in your browser tab with a progress bar. When it's done, download the result — same filename, smaller size, still a completely normal PDF that opens the same way anywhere.

Why nothing leaves your device

Every step — reading the PDF's structure, decoding and re-encoding its embedded images, and rebuilding the file — runs using code already loaded into your browser tab, not a server. Open your browser's network tab while compressing and you won't see a single request carrying your document.

That also means there's no queue behind other people's files and no size limit imposed by someone else's server. Once you close the tab, nothing about the PDF you compressed is kept anywhere.

What this does well — and what it doesn't

This tool recompresses the two most common ways PDFs actually store photos: images already saved as JPEG, and raw pixel data (with or without the row-prediction encoding many PDF writers use to compress it further) in ordinary RGB, grayscale, or CMYK color — including images tagged with an embedded color profile (ICCBased), which is how scanner software and tools like Acrobat or Photoshop commonly save them. This also covers images with a soft-edged transparency mask (common for overlays and logos with soft shadows): the photo itself gets recompressed, and its separate transparency layer is typically resized to match and losslessly recompressed alongside it. Between them, that covers the large majority of real-world PDFs padded out by photos or scans.

It deliberately leaves some things untouched rather than risk getting them wrong: images using a color palette (Indexed color), images built from color separations (Separation/DeviceN), CMYK images already stored as JPEG (Adobe's CMYK JPEGs use an encoding quirk not worth guessing about), scanned pages stored as fax-style formats (CCITT/JBIG2 — usually already smaller than a JPEG re-encode would make them), and a handful of less common image formats. A PDF made up entirely of those, or one that's mostly text and vector graphics to begin with, may see little size reduction — the result shows exactly how many images qualified and, for any that didn't, why, rather than just a percentage you have to take on faith.