Compress PDF from the command line on Windows

install bim-cli · windows · per-user · no admin
powershell.exe -NoProfile -ExecutionPolicy Bypass -Command 'iwr -useb https://bimcli.com/install.ps1 -OutFile $env:TEMP\bim-install.ps1; powershell -NoProfile -ExecutionPolicy Bypass -File $env:TEMP\bim-install.ps1'

Most Windows PDF compression tools are paid GUI applications or browser uploads. bim pdf optimize runs locally, processes any PDF, and costs nothing. No admin rights, no account, no file leaving your machine.

Reduce PDF file size in one command on Windows. De-duplicates shared resources across pages without re-rendering — image quality unchanged.

The command

compress a PDF
bim pdf optimize drawings.pdf
{"ok":true,"result":{"inputBytes":98304000,"outputBytes":62914560,"reduction":"36%","path":"C:\\Users\\...\\AppData\\Local\\Temp\\bim-cli\\out\\drawings-out.pdf"}}

The optimized file is written to a temp path shown in result.path. The original is not modified.

Check size before and after

inspect a PDF before optimizing
bim pdf info drawings.pdf
{"ok":true,"result":{"file":"drawings.pdf","sizeBytes":98304000,"pages":142,"pdfVersion":"1.6"}}

Batch compress a folder

compress every PDF in a folder
Get-ChildItem *.pdf | ForEach-Object { bim pdf optimize $_.FullName }

Each file is processed independently. Results are written to the temp dir; copy the output files where you need them.

Agent use

An AI assistant can inspect and optimize PDFs without you touching the terminal:

paste into your AI coding tool
Compress a PDF file on Windows using bim-cli.

Step 1 -- install bim-cli if not already installed: powershell.exe -NoProfile -ExecutionPolicy Bypass -Command 'iwr -useb https://bimcli.com/install.ps1 -OutFile $env:TEMP\bim-install.ps1; powershell -NoProfile -ExecutionPolicy Bypass -File $env:TEMP\bim-install.ps1'

Step 2 -- refresh PATH: pwsh: $env:Path += ";$env:LOCALAPPDATA\bim-cli"

Step 3 -- inspect the file: bim pdf info drawings.pdf

Step 4 -- optimize: bim pdf optimize drawings.pdf

The result includes inputBytes, outputBytes, and the output path.

Install

iwr -useb https://bimcli.com/install.ps1 -OutFile $env:TEMP\bim-install.ps1; powershell -NoProfile -ExecutionPolicy Bypass -File $env:TEMP\bim-install.ps1

No admin rights. Works on Windows 10 and 11. Nothing leaves your machine.

install bim-cli · windows · per-user · no admin
powershell.exe -NoProfile -ExecutionPolicy Bypass -Command 'iwr -useb https://bimcli.com/install.ps1 -OutFile $env:TEMP\bim-install.ps1; powershell -NoProfile -ExecutionPolicy Bypass -File $env:TEMP\bim-install.ps1'

Then ask your assistant to run bim describe --json. See what the installer does.