Need a PDF under 1 MB for a form, portal, or email attachment? Use the Medium or Low quality setting to reduce file size aggressively. The tool shows the compressed size before you download so you can try again at a lower setting if needed. All processing runs locally in your browser.
Drop a PDF here or click to browse
Hitting a hard 1 MB target usually means picking an image-based mode. pdfjs-dist renders every page onto a Canvas at the scale matching your chosen quality, exports the canvas as a JPEG, and pdf-lib stitches those JPEGs into a fresh document with addPage(). The output size is shown before you download, so if Medium does not get you under 1 MB you can try Low without restarting.
Targeting a 1 MB cap happens entirely in your browser. Each quality attempt is compressed locally, the resulting size is displayed in the tab, and if the result still exceeds your target you can try a lower setting without ever sending the PDF over the network. You can check this yourselfin your browser's DevTools Network tab.
To stitch multiple PDFs into one before compressing, try merge PDF. For pulling out a subset of pages, use split PDF. To extract pages as standalone images, see PDF to image.