Compress PDF to 4 MB

or drop one here
Compression level
Target size
Choose a PDF file first.

4 MB is 4,194,304 bytes. It is a comfortable cap for a document with photographs in it and a tight one for a long colour scan. The bench did not run a 4 MB target, so this page quotes no measured hit rate for it, and says plainly what the image step costs when it runs.

How to compress a PDF to 4 MB

  1. Choose the PDF

    Press Choose a PDF, or drop the file on the page. The file is read in this tab and is not sent anywhere.

  2. The target is already set

    This page opens at 4 MB, so there is nothing to type. Pick a different level, or enter your own smaller number in KB, if you want another size.

  3. Press Compress

    Four methods race: copy the pages into a fresh file, re-encode the placed images, cut each embedded font down to the glyphs the pages draw, and, only when no other method reached the target, redraw the pages as images with the text kept on top.

  4. Read the check, then download

    Every candidate is opened again and its characters are counted against the source. The page shows the size, the method that won and the characters kept before it offers the download.

The four methods are described in full, with the measurements behind them, in how it works.

What the image step actually does

When the two lossless methods fall short, the engine re-encodes the page images. It picks a quality by sampling pages rather than guessing, walks down from high quality, and stops at the first setting that meets the target. It will not go below a fixed floor, because past that point the page stops being worth sending. That floor is what separates a free browser compressor from a slider that will happily ruin the file to hit a number.

On the published run, the quality it chose when a page render won had a median of 92 out of 100, with a minimum of 60 and a maximum of 92. It hit the floor of 60 on 10 of 120 cases. At a 4 MB target on a normal document, expect to land near the top of that range.

Photographs at 4 MB

A 4 MB budget over ten photographic pages is 400 KB each, which is generous. Over fifty pages it is 80 KB each, which starts to show. Photographs are the least forgiving content because there is no flat area for the encoder to exploit.

The compress tool tells you which method won and what it reached. If a page render won at quality 92, the file looks essentially untouched. If it hit the floor, the target was too tight for the content.

Picking a neighbour

A 3 MB target is the safer choice when the cap belongs to a mail server, because mail encoding adds roughly a third on top of the file size. A 5 MB target is the right one when the portal genuinely allows it and the pages carry detail worth keeping.

Whichever you pick, the checks are the same. Every candidate is re-opened and read back before it can ship, page count and text are compared against the source, and a candidate that lost more than 2% of the characters is thrown away.

Questions

What quality does a 4 MB target use for images?
Whatever is needed, chosen by sampling rather than fixed. On the published run the quality picked when a page render won had a median of 92 out of 100 and never went below 60. A generous target like 4 MB usually sits near the top.
Is 4 MB enough for a document full of photos?
For about ten photographic pages, comfortably. For fifty, it shows. Photographs compress worse than scanned text because there are no flat areas for the encoder to work with, so the per page budget matters more than usual.
How many bytes is 4 MB?
4,194,304 bytes in binary units, which is how this tool counts. A system using flat millions caps at 4,000,000, roughly 190 KB tighter. Aim at 3.9 MB when you are close to the line.
Does the tool ever make the file bigger?
No. It keeps the smallest candidate that passed its checks, and if no method beat the source it hands the source back. On the published run of 120 cases, zero outputs were larger than their source.

The other pdfpix tools

All 30 of them run in a browser tab like this one. Each reads its own output back and checks it before offering the download, and none of them needs an account.

Where to go next