Reproducible PDF compression comes from a tool that measures the actual saved file against your target rather than estimating the result from the source size. Compress PDF to Size follows a fixed bounded sequence of JPEG quality and maximum-dimension profiles inside your browser, replaces only eligible JPG image streams, and shows a download button only after the final saved PDF sits at or below the MB value you entered. Because the steps are bounded, the eligible images are filtered the same way each time, and the verification step reads the real byte count of the saved file, every successful run delivers a file at or under your target. The source PDF is loaded locally, the recompression is performed locally, and the bytes of each candidate output are compared to your target before any download is offered.

Why Compression Results Often Drift Between Runs
Most PDF size complaints start with a tool that claims a compression ratio and then produces a file that is still too large or that fluctuates each time you re-run it. The drift usually has three causes: the tool estimates the output size from the source instead of measuring the actual saved bytes; the tool varies its internal quality or scale settings between attempts; or the tool quietly changes page content, vectors, or fonts to reach a number it has already promised.
Estimates can be off by tens of percent because they ignore what is actually inside a PDF: text layers, vector drawings, forms, and unsupported image objects all add bytes that no JPG recompression can reclaim. When the tool then forces a number anyway, it can do so only by degrading pages or stripping content. Either way, two runs through the same tool can produce two different files for the same source PDF. To repeat the same result you need a tool that measures the saved file, uses a fixed sequence of profiles, and refuses to release a download when the target cannot be met.
How Compress PDF to Size Produces Repeatable Results
The repeatability of Compress PDF to Size comes from three design choices. First, the tool measures the real byte length of each candidate PDF and compares it to your target. Second, it tries a fixed bounded sequence of profiles in this order: JPEG quality 0.70 with a longest side of 1400 pixels, then quality 0.55 with a longest side of 1000, then quality 0.40 with a longest side of 800, and finally quality 0.30 with a longest side of 600. Third, it only releases a download when the saved PDF sits at or below your target; otherwise it produces no file and tells you that the target cannot be reached safely.
Eligible JPG streams are the same on every run. The tool only touches embedded JPG streams that are unmasked DCTDecode images in DeviceRGB or DeviceGray with no decode parameters. Image objects that do not meet this filter, and any candidate JPG that would be larger than the original stream, are skipped. This means the same source PDF, run twice through the tool with the same target, produces either the same first-passing profile result or the same no-result state.
| Profile step | JPEG quality | Maximum longest side (pixels) | Role in the bounded sequence |
|---|---|---|---|
| 1 | 0.70 | 1400 | First mild pass; keeps images close to original |
| 2 | 0.55 | 1000 | Balanced step that lowers quality and dimensions |
| 3 | 0.40 | 800 | Aggressive reduction for JPG-heavy content |
| 4 | 0.30 | 600 | Final bounded attempt before refusing the target |
Steps to Repeat the Same Result When You Compress PDF to Size
- Open Compress PDF to Size in your browser. The page works locally; the PDF is read, measured, and recompressed in your browser, not on a remote server.
- Choose one local PDF that is up to 25 MB. Use the exact same source file for each run you want to compare; saving a fresh copy of the original between attempts keeps the inputs identical.
- Enter a target between 0.1 MB and 25 MB that is smaller than the source file. The target is the MB ceiling; the tool measures the saved bytes against this number and will not release a file above it.
- Select Compress to target size. The tool iterates through the bounded sequence of JPEG quality and dimension profiles listed above and only replaces eligible JPG streams.
- Wait for the verification step. Each candidate PDF is reopened in a PDF viewer and its page count is checked against the original before any download link appears.
- Download the file only when the link appears. A download link means the actual saved file is at or below your target; no link means no file is offered and the target was not reached within the bounded sequence.
- Compare bytes between runs by checking the file size in your operating system. Two successful runs against the same source and the same target will produce files at or below the same limit, because the first passing profile is deterministic.
When the Same Result Can and Cannot Be Repeated
You can repeat the same result whenever the source PDF contains eligible JPG streams that can be safely replaced and when the target is reachable inside the four bounded profiles. JPG-heavy documents such as photo books, scanned magazines, and image-based slide decks usually reach substantial reductions and will land on a specific profile each time. A scanned PDF may reach a much lower target than a text-heavy document because every page is essentially a JPG layer.
You cannot repeat a successful result, because none is offered, when the source is text-only, dominated by vectors or fonts, or made up of image objects the tool cannot safely replace. The same input and the same target will produce the same outcome on each run: a file at the first passing profile, or no file at all with the same explanation. If you need a different outcome, change either the source PDF or the target value; do not expect the tool to invent a new file by guessing.
| Source PDF type | Typical target reach with bounded JPG recompression | Result repeatability |
|---|---|---|
| JPG-heavy photo PDF | Likely reaches small MB targets | Same profile result on each successful run |
| Scanned document | Often reaches much lower targets | Same profile result on each successful run |
| Text-only PDF with embedded fonts | May not reach the chosen target | Same no-result outcome on each run |
| Vector-heavy drawing or CAD PDF | May not reach the chosen target | Same no-result outcome on each run |
| PDF dominated by unsupported image objects | May not reach the chosen target | Same no-result outcome on each run |
What Stays the Same Across Successful Runs
Reproducibility is only useful if the content that matters is also preserved. Compress PDF to Size keeps page structure, selectable text, links, form fields, vectors, and any image object it cannot safely replace. It does not rewrite fonts, flatten forms, or rasterize whole pages to hit a number. If a JPG would be larger than its original stream after recompression, the tool leaves it untouched, which keeps the visual quality stable across runs.
Two successful runs against the same target can still differ by a few bytes because of stream headers or metadata ordering inside the PDF container, but the visual content, page count, and overall size ceiling are the same. The local job is bounded to a 25 MB source, 80 eligible images, and 100 megapixels across the decoded images, and the verification step reopens the candidate with PDF.js to confirm the page count before exposing it. If you want a second opinion on the output, see how to check the result after compressing a PDF to size.
Practical Habits for Repeatable Compression
Treat the source PDF as the constant in your workflow. Save the original once, never overwrite it, and run copies through the tool so that every attempt starts from the same bytes. If you are comparing two attempts, keep the same target and the same browser, since the local job depends on the browser's canvas encoder described in the HTML Canvas toBlob specification.
When you want a smaller file than the previous successful run, lower the target in MB rather than re-running the tool with a vague expectation of "smaller." Each profile step in the table above represents a real reduction; choosing a lower target moves you deterministically through that sequence, which is what makes the next run repeatable as well. Keep your original and review the result when document fidelity matters, especially for signed contracts, archival scans, and any PDF where vector or text quality is the point of the file.
For a deeper look, see Can I Compress a PDF Without Uploading It? Browser Steps.