How to Compress Multiple PDFs at Once — Batch Compression
Need to compress 10, 20, or 50 PDFs at once? The right approach depends on how many files you have, whether they're sensitive, and how much time you want to spend. This guide covers every practical option — from free browser tools to desktop apps to a command-line one-liner that handles hundreds of files in seconds.
Your Options for Batch PDF Compression
- Browser tool (ShrinkPDF): One file at a time, no upload, completely private. Best for sensitive documents or when you have 5–10 files.
- ILovePDF batch: Upload multiple files at once, server processes them together. Best for non-sensitive files when you have 10–50 files.
- PDF24 desktop app: Free Windows/Mac app, processes locally. Good for regular batch needs without command line.
- Ghostscript command line: Free, runs locally, handles hundreds of files in one command. Best for technical users or large batches.
Method 1: Browser Tool — One at a Time, No Upload
ShrinkPDF processes files locally in your browser with no upload — which means it cannot process multiple files simultaneously (each file uses browser memory while being processed). For batches of up to 10 sensitive files, the workflow is:
- Open shrinkpdf.fyi in a browser tab
- Compress the first file and download it
- Click "Compress another file" to reset, then upload the next one
- Repeat for each file
This takes about 30–60 seconds per file depending on size. For 10 files, total time is approximately 5–10 minutes. For larger batches, use one of the methods below.
Use ShrinkPDF one-at-a-time for sensitive documents: IC copies, payslips, medical records, bank statements, signed contracts. These should not be uploaded to third-party servers, even temporarily. For non-sensitive files like marketing materials, reports, or presentations, the batch methods below are faster.
Method 2: ILovePDF Batch (Upload Required)
ILovePDF supports batch compression on their free tier — you can upload multiple PDFs at once and download a ZIP file of the compressed results.
- Go to ilovepdf.com/compress_pdf
- Click "Select PDF files" and select multiple files at once (hold Ctrl/Cmd to select multiple)
- Choose a compression level and click Compress PDFs
- Download the ZIP file containing all compressed PDFs
Limitations: Free tier has daily task limits (the number is not clearly displayed). Files are uploaded to ILovePDF's servers and deleted after processing. Do not use for sensitive personal documents.
Method 3: PDF24 Desktop App (Free, Local Processing)
PDF24 offers a free desktop application for Windows and Mac that compresses PDFs locally — no upload required — and supports batch processing through its interface.
- Download PDF24 Creator from pdf24.org/en/creator (free, no subscription)
- Open the app and navigate to the Compress tool
- Drag multiple PDF files onto the interface
- Select a compression profile and click Compress All
- Choose an output folder for the compressed files
PDF24 processes files locally using Ghostscript under the hood, which gives excellent compression ratios. The interface is functional but not polished. Good for Windows users who need regular batch compression without using the command line.
Method 4: Ghostscript Command Line (Most Powerful)
Ghostscript is a free, open-source PDF engine used by most server-side PDF tools (including ILovePDF). Running it locally gives you the same compression quality as cloud tools, with no upload, no limits, and the ability to process hundreds of files in seconds.
Install Ghostscript
- Windows: Download from ghostscript.com → download → Windows installer (64-bit). Install and add to PATH.
- Mac: Run
brew install ghostscript(requires Homebrew) - Linux: Run
sudo apt install ghostscript(Ubuntu/Debian) orsudo yum install ghostscript(RHEL/CentOS)
Compress a single file
gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook -dNOPAUSE -dQUIET -dBATCH -sOutputFile=output.pdf input.pdf
Replace /ebook with /screen for maximum compression or /printer for higher quality.
Compress all PDFs in a folder (Windows)
for %f in (*.pdf) do gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook -dNOPAUSE -dQUIET -dBATCH -sOutputFile="compressed_%f" "%f"
Compress all PDFs in a folder (Mac/Linux)
for f in *.pdf; do gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook -dNOPAUSE -dQUIET -dBATCH -sOutputFile="compressed_$f" "$f"; done
The PDFSETTINGS options:
/screen— 72 DPI, maximum compression, smallest file size/ebook— 150 DPI, good quality, recommended for most uses/printer— 300 DPI, near-print quality, larger files/prepress— 300 DPI+ with colour preservation, for professional printing
Tips for Managing Batch Compression
- Keep originals separate: Always compress into a different folder, never overwrite originals. You may need the high-quality versions later.
- Verify a sample before processing everything: Compress one or two files first and open them to confirm quality is acceptable. Then run the full batch.
- Name output files clearly: Add a prefix like "compressed_" or a suffix like "_small" so you can tell compressed files from originals at a glance.
- Check total output size: After batch compression, select all output files and check the total size — useful when preparing a submission with a combined size limit.
- Don't compress already-compressed files: Re-compressing a file that was already optimised yields minimal benefit and can slightly degrade quality. If a file doesn't compress much, it was already optimised at the source.
✓ Try ShrinkPDF Free — No Login Required
No registration. No file size limit. Your file never leaves your browser.
📚 Compress My PDF Now