A compression mistake almost always comes from the same place: the tool tells you it hit the target without ever measuring the bytes of the file it actually saved. Verified target-size compression inverts that order. It runs a short, bounded sequence of JPEG quality and dimension profiles, saves each candidate PDF locally, and only exposes a download once the candidate's real byte length is at or below the MB value you entered. If no candidate passes that check, no download appears, and the tool explains why. That single change — measuring the saved file instead of estimating from the source — eliminates the most common compression errors at once: silent quality loss, fake size claims, surprise uploads, and unbounded re-encoding loops. For a JPG-heavy document, a typical session picks the first safe profile that fits under the target and stops. For a text-only or vector-heavy document, the tool may decide the target cannot be reached and produce no file at all. Knowing this before you start is the difference between a useful result and a wasted round-trip.

The Mistakes That Cost You the Most When Compressing PDFs to Size
Most compression failures are not about the algorithm — they are about how the tool reports progress and what it preserves by default. These are the recurring errors that waste time, lose fidelity, or quietly move private files off your device:
- Trusting a size estimate derived from the source. A "compressed to ~2 MB" message that compares the source bytes to a guess about the output is not the same as a file that opens in Finder and shows 2,048 KB. The estimate can be wildly off when images are already small, when streams are encrypted, or when the PDF is mostly text and the algorithm has nothing to compress.
- Re-encoding images that were never the bottleneck. Many compressors blindly re-encode every embedded JPEG. If an image is already 60 KB and is left alone, the total file shrinks a little. If a tool forces that same image through a lower-quality setting, the file grows or stays the same size with visibly worse visuals. Targeted replacement beats blanket re-encoding.
- Uploading a confidential document to a server. Tax returns, signed contracts, medical records, and internal reports routinely get sent to free online compressors. Even with a delete-on-download promise, the file passes through infrastructure you do not control, which is unnecessary for a job that can be done entirely in the browser tab.
- Setting an unreachable target. Asking a 25 MB source with one tiny embedded JPEG to drop to 1 MB guarantees that something unrelated to images — fonts, vector content, document structure — has to be sacrificed. A good tool should refuse this politely rather than produce a degraded file and call it success.
- Letting the compressor loop until it "converges." Some tools re-encode at lower and lower quality without bound, until the browser tab hangs or the file actually grows back because aggressive JPEG settings beat diminishing returns. The safer pattern is a fixed list of profiles, run once, then stop.
What "Verified Target Size" Actually Means
A verified target-size workflow has three rules that the typical compressor skips. First, the target is validated against a defined range — for the Compress PDF to Size tool, that range is 0.1 to 25 MB, and the target must be smaller than the source file. Second, every candidate output is saved as a real PDF on the local disk and its byte length is measured. The check is "≤ target bytes," not "estimated to fit." Third, the tool only attempts a small fixed sequence of JPEG quality and longest-side combinations rather than chasing an unbounded optimum. The four profiles used, in order, are shown in the table below.
| Profile | JPEG quality | Longest-side pixels | Typical role |
|---|---|---|---|
| 1 | 0.70 | 1400 | Light reduction; first attempt for sources that are close to the target |
| 2 | 0.55 | 1000 | Moderate reduction; common for JPG-heavy reports and brochures |
| 3 | 0.40 | 800 | Strong reduction; used when earlier profiles overshoot the target |
| 4 | 0.30 | 600 | Maximum reduction within the bounded sequence; lower visual fidelity |
The first profile whose saved PDF is at or below the target wins, and the browser's HTML Canvas toBlob method handles the actual JPEG encoding. Two safety rules sit underneath that process. The tool only replaces embedded JPG streams that are unmasked DCTDecode DeviceRGB or DeviceGray images without decode parameters; everything else, including vectors, fonts, forms, annotations, and unsupported image objects, is left exactly as it was. And if a candidate recompression would make a single image larger than its original, that image is left untouched, so the loop never makes things worse.
How to Compress a PDF to a Target Size Without the Usual Mistakes
The procedure mirrors the verified-target contract directly. There is no upload step, no signup, and no "best effort" promise.
- Open the Compress PDF to Size tool in your browser.
- Choose one local PDF that is at most 25 MB. Files larger than 25 MB are outside the supported range and should be split or trimmed first.
- Enter a target in MB that is smaller than your source file. Any value from 0.1 to 25 MB is accepted, and the target is what the saved file must actually be at or under.
- Select Compress to target size. The tool runs through its bounded sequence of JPEG quality and maximum-dimension profiles, saves each candidate locally, and measures its real bytes.
- Wait for a download link to appear. A link only shows up once a candidate's saved byte length is at or below your target and the page count matches the source, verified with the PDF.js library. If no candidate meets the target, no download appears, and the tool explains why.
- Click download and review the result. Keep your original until you confirm the saved PDF opens cleanly, shows the right number of pages, and reads at an acceptable size on screen.
The order of operations matters. Entering a target before choosing the file is a common mistake, because the validator cannot check "smaller than source" without knowing the source. Choosing the file first lets the tool refuse impossible targets up front rather than after a wasted compression pass.
When a Target Can and Cannot Be Reached
Not every PDF can shrink to every target, and a useful compressor communicates that instead of pretending otherwise. The table below shows how different source types typically behave with safe JPG recompression. Exact outcomes depend on the actual bytes in the file, so treat the right-hand column as a qualitative guide rather than a precise prediction.
| Source PDF type | What dominates the size | Likely reachability of an aggressive target |
|---|---|---|
| Scanned pages saved as JPG | Embedded JPEG streams at moderate quality | High — usually reaches a much lower target than the source |
| JPG-heavy report or brochure | Mixed JPEG images, some vector text | Moderate to high — typically hits a target well below the source |
| Text-only PDF with system fonts | Font subsets, text operators, structure | Low — there are no large images to compress, so the tool may return no result |
| Vector-heavy design or CAD export | Vector paths, patterns, gradients, fonts | Low to moderate — only the few raster images shrink, so the saved file often stays close to the source size |
| File dominated by unsupported images | Masked images, CMYK, JPEG2000, or images with decode parameters | Low — these streams are left untouched, so the tool may report it cannot safely reach the target |
If your source falls into one of the lower rows and the target you entered was aggressive, the tool will not invent a smaller file. It will tell you the target cannot be reached safely. For a deeper look at why some PDFs never reach the requested size even with verified compression, see this guide on target-size reliability.
What the Compression Leaves Untouched
One of the biggest mistakes users worry about is collateral damage to the document. The verified-target approach protects specific things by design. Selectable text on every page remains selectable. Internal and external link annotations are preserved. Form fields, signatures, and flattened annotations stay in place. Vector drawings, paths, gradients, and pattern fills are never rasterized — the tool only swaps eligible embedded JPG streams, nothing else. Fonts and font subsets used by the document are not regenerated. Page count is verified against the source before any download link is shown, so a document cannot silently lose or duplicate pages.
There is no general "lossless" claim. If the tool replaces a JPG stream at a lower-quality profile, that image has been recompressed and a careful reader at original print size might detect the difference. The contract is honest about that: it is target-aware JPG recompression, not a magic optimizer. Treat the original as the master copy and review the saved file before you delete anything that matters.
Privacy Mistakes You Avoid by Staying Local
The single biggest mistake with a PDF compressor is the one you cannot see in the UI: the upload. Many online compressors serialize your document, send it to a backend, run processing on rented infrastructure, then return a link. Even if the link expires quickly, the bytes touched servers you do not operate. For documents that contain personal data, legal language, or anything an employer or client expects to stay private, that round-trip is the part most worth avoiding.
The verified-target workflow used here keeps PDF reading, JPEG decoding, encoding, byte measurement, and page-count verification inside the browser tab. Nothing is uploaded, and the verified claim in the FAQ is about saved bytes on your machine, not a server response. The job is also bounded: at most one source PDF up to 25 MB, at most 80 eligible images, and at most 100 megapixels across the images the tool decodes. Those caps exist to keep the local job responsive and to prevent an unbounded browser session that could itself become a usability mistake.
A Simple Worked Example for Setting a Target
Targets in this tool are measured against saved bytes, so the math is worth doing once. The binary megabyte convention used by file sizes is 1 MB = 1,048,576 bytes. Suppose your source PDF is 10 MB and you want to fit it under a 2 MB email attachment limit.
- Source bytes: 10 MB × 1,048,576 bytes/MB = 10,485,760 bytes.
- Target bytes: 2 MB × 1,048,576 bytes/MB = 2,097,152 bytes.
- Required reduction: 10,485,760 − 2,097,152 = 8,388,608 bytes, which is 80% of the source.
The tool will refuse a target that is not smaller than the source, so this 2 MB target is accepted only because 2 MB is smaller than 10 MB. If the source is JPG-heavy, the bounded sequence of profiles is very likely to find a saved candidate under 2,097,152 bytes. If the source is text-only, the tool may report that no candidate passes — and that answer is correct, not a failure.