Zstandard
facebook.github.io
What it is
Zstandard is a lossless compression algorithm for real-time workloads, with controls that let users shift compression speed and ratio in small increments. Its reference implementation includes a C library and a command-line utility that creates and decodes .zst, .gz, .xz, and .lz4 files. The format is stable and documented in RFC 8878; the implementation is available under BSD or GPLv2. For small, related samples, training can produce a data-specific dictionary to improve compression. The same dictionary must be present for both compression and decompression, and the samples need to be correlated; there is no universal dictionary. The project documents builds with Make, CMake, Meson, Visual Studio, Buck, and Bazel, plus installation using vcpkg and Conan. Community bindings and ports are listed for languages including Python, Rust, Java, C#, JavaScript, Go, PHP, and Swift. Zstandard is free, with a free plan, and supports Linux, Windows, and macOS.
Spec sheet
- What it does
- Zstandard is a fast, lossless compression algorithm for real-time compression scenarios, targeting zlib-level speed with better compression ratios.Read 8 Oct 2026 · github.com
- Purpose
- Zstandard is a fast, lossless compression algorithm for real-time scenarios, targeting zlib-level speed with better compression ratios.Read 8 Oct 2026 · github.com
- API
- The API offers simple methods first and introduces more parameters and control for advanced use.Read 8 Oct 2026 · facebook.github.io
- License
- The reference implementation is dual-licensed under BSD or GPLv2.Read 8 Oct 2026 · github.com
- Build and package integrations
- The project documents builds with Make, CMake, Meson, Visual Studio, Buck, and Bazel, and installation through vcpkg and Conan.Read 8 Oct 2026 · github.com
- Build integrations
- The repository documents builds or integration through Make, CMake, Meson, vcpkg, Conan, Visual Studio, Buck, and Bazel.Read 8 Oct 2026 · github.com
- Compression controls
- The compression speed and ratio trade-off is configurable in small increments, and decompression speed remains roughly similar across settings.Read 8 Oct 2026 · github.com
- Dictionary compression
- A training mode builds a dictionary from sample files to improve compression of small, related data; a matching dictionary must be loaded for compression and decompression.Read 8 Oct 2026 · github.com
- Format
- The Zstandard format is stable, documented in RFC 8878, and has multiple independent implementations.Read 8 Oct 2026 · github.com
- Language bindings
- The homepage lists community-provided bindings and ports for languages including Python, Rust, Java, C#, JavaScript, Go, PHP, and Swift.Read 8 Oct 2026 · facebook.github.io
- Latest listed release
- The GitHub releases page lists Zstandard v1.5.7 as the latest release.Read 8 Oct 2026 · github.com
- Library and CLI
- The reference implementation provides a C library and a command-line utility that can produce and decode .zst, .gz, .xz, and .lz4 files.Read 8 Oct 2026 · github.com
- Platform builds
- The project documents Windows builds and CMake Universal2 builds for Apple Silicon and Intel Macs.Read 8 Oct 2026 · github.com
- Security reporting
- The project asks reporters to submit security issues through Meta's Bug Bounty program rather than public GitHub issues or pull requests.Read 8 Oct 2026 · github.com
- Security testing
- The project says it is continuously fuzzed for security issues by Google’s OSS-Fuzz program.Read 8 Oct 2026 · github.com
- Small-data constraint
- Dictionary training works when a family of small samples is correlated, and the project says there is no universal dictionary.Read 8 Oct 2026 · github.com
- Small-data dictionaries
- Training on sample files creates a data-specific dictionary that can improve compression of small, correlated data samples.Read 8 Oct 2026 · github.com
- Speed and ratio controls
- Compression speed and ratio can be adjusted in small increments, while decompression speed remains roughly similar across settings.Read 8 Oct 2026 · github.com
- Use at scale
- The project says Zstandard is deployed within Meta and other large cloud infrastructures to compress data in various formats and use cases.Read 8 Oct 2026 · github.com
- Vulnerability notices
- For significant vulnerabilities not yet public, maintainers may notify selected high-exposure users before public disclosure.Read 8 Oct 2026 · github.com
- Vulnerability notifications
- At its discretion, the project may notify high-profile, high-exposure users about significant undisclosed vulnerabilities before public disclosure and a fix.Read 8 Oct 2026 · github.com
Plans and prices
Strong points and limits
Strong points
- Configurable compression speed and ratio
- Decompresses .zst, .gz, .xz, and .lz4
- C library and command-line utility included
- Stable format documented in RFC 8878
- Free under BSD or GPLv2
Limits
- No archive encryption
- No archive repair
- Dictionary compression requires matching dictionaries
Who it suits
Zstandard suits developers and operators who need lossless compression, command-line tools, or a C library across Linux, Windows, or macOS. Dictionary training may help when compressing small, related data samples.
Verdict
Zstandard combines adjustable compression with a documented format and broad build integrations. Its dictionary mode is aimed at related small samples, not arbitrary data.
Where Specifiction places it
- File Compression Software#9 of 368.0