MillFile

How MillFile compresses PDFs

There is no server behind this site. Everything below happens inside this browser tab, which is why your file can stay on your device and still get smaller.

Step 1 - a lossless rebuild

The moment a file is dropped, MillFile rebuilds its internal structure: duplicate objects collapse, unused data is dropped, and objects are packed more tightly. No pixels change and no text changes - for many documents, especially ones exported straight from Word or a PDF printer, this alone brings the file under the target.

Step 2 - adaptive page rendering

If the rebuilt file is still too big, each page is rendered to an image and re-encoded at a chosen quality. The trick is the budget: the target size is divided across the remaining pages, and every page takes the highest quality that still fits its share.

Light pages finish early and keep high quality; heavy pages step down through smaller quality levels until they fit. If a page cannot fit even at the lowest setting, it takes the smallest it can and the badge reports the honest final size instead of pretending.

Step 3 - a fresh PDF

The chosen page images are packed into a new PDF with the same page dimensions, so the document still prints and displays at the right proportions. The result is downloaded from memory straight to your device.

What this changes, honestly

When the lossless rebuild is enough, your PDF keeps selectable text and identical appearance. When pages have to be re-rendered, those pages become images: text is still perfectly readable, but it is no longer selectable or searchable. That is the standard trade for meeting a hard upload cap, and the lossless path always runs first to avoid it whenever possible.

Practical tip: if a file must reach a very small cap, scan or export at a moderate resolution to begin with, remove blank or duplicate pages beforehand, and let MillFile handle the rest.

Try it yourself: drop a file on the homepage and watch the badge — the numbers it reports are real.