How to compress a pdf with embedded images to a smaller size
- Step 1Confirm your PDF is actually image-heavy — Open it and try to select a paragraph of body text with your cursor. If most pages are photos, scans, or full-bleed design with little selectable text, lossy is the right tool. If you can highlight crisp text everywhere, use lossless compress instead — lossy would needlessly fuzz that text for little gain.
- Step 2Open the compressor and drop your PDF — Load the document into PDF Compress (Aggressive). Rendering and re-encoding happen in your browser via pdf.js and pdf-lib — nothing is uploaded to a server.
- Step 3Let it auto-process — there are no controls to set — The browser tool has no quality slider or DPI box. As soon as the file is loaded it renders each page at
1.5×scale, re-encodes the page as a JPEG at the built-in quality (~0.65), and assembles the new PDF. You don't pick a percentage — the default is applied for you. - Step 4Wait for every page to render — Each page is rasterised individually in the browser, so a long catalogue takes longer and uses more memory than a two-pager. The tab stays responsive; give it a moment on large files. Splitting a very long document first with PDF Split keeps memory in check.
- Step 5Download and eyeball the images at 100% — Check the photographs at actual size, not just zoomed-out thumbnails. At the built-in quality, screen-display fidelity is good; fine detail and gradients soften slightly. If a specific image looks too soft for your use, that's inherent to lossy re-encoding — keep the original for any print or archival need.
- Step 6Keep the original; distribute the compressed copy — Lossy compression is one-way — the discarded image detail cannot be recovered, and the flattened text can't be made selectable again. Archive the high-resolution original and send only the compressed copy for web, email, or chat.
What actually happens to each element
Because the tool re-renders whole pages to JPEG (it does not surgically re-encode individual image XObjects), everything on the page is affected the same way.
| Element in your PDF | After lossy compression | Keep it? Use instead |
|---|---|---|
| Embedded photographs / raster images | Re-encoded as part of the page JPEG — this is where the size savings come from | This is the intended target |
| Selectable / searchable text | Flattened into the page image — no longer selectable or searchable | Lossless compress keeps text |
| Vector logos & line art | Rasterised into the page JPEG; crisp edges soften at low quality | Lossless if the vectors matter |
| Form fields / annotations | Drawn into the image and lose interactivity | Flatten then keep, or skip lossy |
| Bookmarks / outline / metadata | Dropped — the new PDF is rebuilt from scratch | Metadata scrubber for metadata-only cleanup |
Lossy whole-page JPEG vs. the alternatives
Pick the tool that matches what your PDF is made of and what you need to keep.
| Your PDF is… | Best tool | Keeps text selectable? | Why |
|---|---|---|---|
| Photos / catalogue / scanned brochure | Lossy (this tool) | No | Pages are images already; JPEG-encoding the whole page shrinks them most. |
| Mostly text with a few images | Lossless compress | Yes | Lossy would fuzz the text for little benefit; lossless keeps it and still trims. |
| Colour images you only need to print B&W | Grayscale then compress | Depends on next step | Dropping colour first removes two of three channels before re-encoding. |
| Bloated by fonts, not pictures | Font subsetter | Yes | If embedded fonts are the bulk, subsetting trims them without touching images. |
Tier limits for the in-browser compressor
Free vs. paid input limits for PDF tools. Everything runs locally; these are input-size guards, not server quotas.
| Tier | Max input file | Max pages | Files per run |
|---|---|---|---|
| Free | 2 MB | 50 | 1 |
| Pro | 50 MB | 500 | 5 |
| Pro Media | 500 MB | 2,000 | 50 |
Cookbook
Real image-PDF situations and what to expect from whole-page JPEG re-encoding.
A product catalogue that won't email
A 24-page catalogue of product photos exported at print resolution is 32 MB — over most mailbox attachment caps. Every page is a photo, so lossy is ideal.
Input: catalogue.pdf 32 MB 24 pages of product photos Process: each page rendered at 1.5x, re-encoded as JPEG (~q0.65) Output: catalogue.pdf ~3-5 MB Result: emails fine; photos slightly softer at 100%, fine for screen
Mostly-text report with one cover photo — wrong tool
A 40-page text report with a single full-page cover image. Running lossy here fuzzes 39 pages of crisp text to save almost nothing, because text doesn't JPEG-compress well.
Input: report.pdf 2.1 MB 1 image page + 39 text pages
Lossy output: ~1.9 MB AND text is now an un-selectable image
Better: use /pdf-tools/pdf-compress-lossless
-> ~1.4 MB, text stays selectableVector logos turned fuzzy
A brand deck with crisp vector logos on every slide. After lossy, the logos are part of the page JPEG and their sharp edges show JPEG ringing at corners — visible on a projector.
Before: logo edges are crisp vectors (infinite resolution)
After: logo is baked into the 1.5x page bitmap, then JPEG'd
-> faint halos / softening on hard edges
Keep the vector original for anything projected or printed large.Confirming the size dropped before sending
Always compare the downloaded file's size against the original. For an image-heavy source a several-fold reduction is normal; a tiny reduction means the PDF was mostly text, not images.
original.pdf 18.4 MB compressed.pdf 2.7 MB <- 85% smaller, image-heavy: expected original.pdf 1.2 MB compressed.pdf 1.1 MB <- barely moved: it was text, use lossless
Drop colour first for a B&W handout
A scanned colour brochure you only need to hand out in black and white. Converting to grayscale before compressing removes two of three colour channels, so the subsequent JPEG is smaller still.
Step 1: /pdf-tools/pdf-grayscale -> removes colour channels Step 2: /pdf-tools/pdf-compress-lossy -> JPEG the grayscale pages Result: smaller than compressing the colour version directly
Edge cases and what actually happens
The PDF is mostly text, not images
use losslessA page of crisp text does not JPEG-compress well and can even grow once flattened to an image — and you lose text selection in the bargain. For text-dominant documents use lossless compress, which keeps every page's text selectable.
You needed to keep the text selectable
trade-offWhole-page JPEG re-encoding is the mechanism that makes image PDFs shrink, but it bakes text into the image. There is no setting that keeps selectable text in lossy mode — it is inherent. If selection matters, lossless is the only option.
Expecting a quality slider or DPI box on the page
By designThe browser tool exposes no quality, DPI, or target-size controls — it auto-runs at the built-in quality (~0.65) and 1.5× render scale. Quality and target-size are parameters of the underlying engine and the API/runner, not the web page. To target a specific size like 1 MB, see the under-1MB guide.
Vector logos and line art soften
ExpectedCrisp vector graphics are rasterised into the page bitmap and then JPEG-encoded, so hard edges can show faint halos or softening. For decks and brand assets where logo crispness matters, keep the vector original and only distribute the compressed copy where softness is acceptable.
Form fields stop being fillable
interactivity lostInteractive form fields are drawn into the page image and lose their behaviour. If you need a flat, non-editable form, flatten it first (lossless) and only then compress if the result is still too big.
Free tier rejects a large file
size limitThe free tier caps PDF input at 2 MB and 50 pages; Pro raises this to 50 MB / 500 pages and Pro Media to 500 MB / 2,000 pages. A large catalogue may exceed the free cap before compression even starts — upgrade, or split it first with PDF Split.
Very large document is slow
slow but worksEach page renders individually in your browser, so hundreds of high-resolution pages take time and memory. It still completes — give the tab a moment, and consider splitting the PDF first to process it in chunks.
Result is barely smaller
wrong source typeIf a several-fold reduction didn't happen, the PDF probably wasn't image-heavy. Text PDFs, or PDFs already saved as low-quality JPEGs, have little image data left to squeeze. Check whether the bloat is fonts (font subsetter) or metadata (metadata scrubber) instead.
An invisible OCR text layer is discarded
OCR lostIf your scan carried a searchable OCR layer, re-rendering the page to an image drops it along with all other structure. Re-run OCR after compressing, or keep the original if the searchable text matters.
Frequently asked questions
Does it only re-encode the images, leaving the rest of the page alone?
No — and this is the most common misconception. The tool rasterises the entire page to a bitmap and re-encodes that whole page as a single JPEG, then builds a new PDF with one image per page. It does not reach into the file and re-compress individual embedded image objects while preserving the surrounding text and vectors. That whole-page approach is exactly why it shrinks image-heavy PDFs so well, and exactly why text on those pages stops being selectable.
What quality setting does it use? Can I pick 80%?
The in-browser tool has no quality picker — it runs at a fixed built-in quality (about 0.65 on a 0–1 scale) and a 1.5× render scale, applied automatically when you drop the file. There is no 60/80/90% preset in the web UI. The underlying engine and the API/runner do accept a quality value and an optional target size, but those are not surfaced as controls on the page.
Will lossy compression affect the text in my PDF?
Yes — unlike selective image compression, this tool flattens every page (text included) into a JPEG. Crisp text becomes part of the image: it looks slightly softer and is no longer selectable or searchable. If your document is mostly text, that's a bad trade — use lossless compression, which leaves text untouched.
Can I undo lossy compression?
No. The discarded image detail is gone permanently and the flattened text cannot be turned back into selectable text. Always keep the original high-resolution PDF and distribute only the compressed copy.
How much smaller will my image-heavy PDF get?
For a genuinely photo-dominated PDF a several-fold reduction (often 70–90% smaller) is typical, because the photographs are the bulk and JPEG-encoding the page collapses them. The exact result depends on page count, image content, and how the source was already compressed. A PDF that's mostly text will barely move — that's the signal to switch to lossless.
My PDF has both photos and important text — what should I do?
Decide which matters more. If small size is critical and you can live without selectable text, lossy hits the smaller number. If you need the text selectable, use lossless compress — it keeps text and still trims, just not as aggressively. There's no mode that keeps selectable text and aggressively re-encodes images in the same pass here.
Is my document uploaded to a server?
No. Rendering with pdf.js and re-assembly with pdf-lib happen entirely in your browser. The PDF never leaves your device — important for unreleased product imagery, design comps, and other confidential visuals. Only an anonymous usage counter is recorded when you're signed in.
Why did a logo or chart go fuzzy after compression?
Vector logos and charts are infinitely sharp until they're rasterised. This tool bakes them into the page bitmap and then JPEG-encodes it, so hard edges can show softening or faint halos. Keep the vector original for anything projected or printed; use the compressed copy only where slight softness is fine.
Will the compressed PDF open everywhere?
Yes. The output is a standard PDF with one JPEG image per page, which every PDF reader, browser, and upload portal handles. It's about as universally compatible as a PDF gets — at the cost of selectable text.
How big a file can I compress?
Free tier accepts up to 2 MB and 50 pages; Pro up to 50 MB / 500 pages; Pro Media up to 500 MB / 2,000 pages. Beyond that, everything is bounded by your browser's memory since processing is local — very long, high-resolution documents are slow and memory-heavy, so splitting first helps.
Does compressing the same PDF twice help?
No — re-JPEGing an already-lossy page just adds more artefacts for almost no extra size saving. Compress the original once. If it isn't small enough, start from the original again (for a hard target, see the under-1MB guide) rather than re-compressing the already-compressed file.
I want a specific image quality per picture — does this do that?
No. There is no per-image quality control; the tool applies one quality to the whole-page JPEG of every page. If you need fine-grained, per-image control, edit the images in dedicated image software before assembling the PDF — this tool is built for fast, uniform, whole-document size reduction of image-heavy files.
Privacy first
All PDF processing runs locally in your browser using PDF-lib and pdf.js. No file is ever uploaded — only metadata counters are saved for signed-in dashboard stats.