Skip to content
SPECIFICTION
Get listed

UPX

upx.github.io

Free plan WindowsmacOSLinux
Visit upx.github.io
Spec score 7.4 #16 of 28 in Executable Packers

What it is

UPX is a portable executable packer and file compressor for Windows, macOS, and Linux. It works with executable formats including Windows programs and DLLs, macOS apps, and Linux executables; listed formats also include PE, ELF, Mach-O, COFF, DOS, and Atari/TOS. The project says compression commonly reduces program and DLL sizes by around 50%–70%. For most supported formats, compressed programs are self-contained and run as before without runtime or memory penalties. UPX can list, test, and unpack executables, and maintains checksums for compressed and uncompressed files. It is free software under GPL v2 or later, with a special exception allowing unmodified UPX to compress commercial programs. UPX does not add protection or encryption, and the project advises handling only trusted files. Linux users should account for documented tradeoffs: compressed executables may require more RAM or swap when multiple processes run, and the generic Linux format recreates the original file in /tmp before launch.

Spec sheet

Purpose
UPX is a portable executable packer and file compressor for several executable formats.Read 30 Sep 2026 · upx.github.io
Support
The project asks users to report bugs through its GitHub issues page.Read 30 Sep 2026 · github.com
License
UPX is distributed with full source under GPL v2 or later, with a special exception allowing unmodified UPX to compress commercial programs.Read 30 Sep 2026 · upx.github.io
Maker
The homepage says UPX is maintained by the UPX Team and credits Markus F.X.J. Oberhumer, László Molnár, and John F. Reiser.Read 30 Sep 2026 · upx.github.io
Compression
The project says UPX typically reduces program and DLL file sizes by around 50%–70%.Read 30 Sep 2026 · upx.github.io
Download platforms
The latest release page provides Linux and Windows binaries, DOS builds, and a source tarball; it says each build handles all supported executable formats.Read 30 Sep 2026 · github.com
Inspect and restore
UPX can list, test, and unpack executables, and internally maintains checksums of compressed and uncompressed files.Read 30 Sep 2026 · upx.github.io
Linux runtime tradeoff
The documentation says compressed Linux executables do not share RAM at runtime like file-mapped executables, so concurrent processes may need more RAM or swap.Read 30 Sep 2026 · github.com
Linux temporary files
For its generic Linux format, UPX recreates a copy of the original file in /tmp before running it.Read 30 Sep 2026 · github.com
Runtime behavior
Compressed programs are self-contained and run as before with no runtime or memory penalty for most supported formats.Read 30 Sep 2026 · upx.github.io
Security handling
The project warns that UPX inherits the security context of files it handles and says to use it only on trusted files.Read 30 Sep 2026 · github.com
Security limits
UPX describes itself as a packer and explicitly says it will not add protection or encryption features.Read 30 Sep 2026 · github.com
Supported executable formats
UPX supports formats including Windows programs and DLLs, macOS apps, and Linux executables.Read 30 Sep 2026 · upx.github.io

Plans and prices

UPX Free Free software under GPL v2+; special license exception permits use with commercial programs Read 30 Sep 2026 · upx.github.io

Every UPX plan and price →

Strong points and limits

Strong points

  • Project reports typical size reductions of around 50%–70%
  • Can list, test, and unpack executables
  • Supports Windows, macOS, and Linux executable formats
  • Free under GPL v2 or later

Limits

  • Does not provide protection or encryption
  • Use is advised only with trusted files
  • Compressed Linux executables may need more RAM or swap
  • Generic Linux format creates a copy in /tmp

Who it suits

UPX suits users who want to reduce executable file sizes and can work with command-line tools. Its formats cover Windows, macOS, and Linux, with specific runtime considerations for Linux users.

Verdict

UPX focuses on executable compression and inspection, with broad format support and no charge. It is not a security tool, and Linux users should review its runtime and temporary-file behavior.

Where Specifiction places it

Alternatives to UPXAll alternatives →