StrataZip
The smallest archives for structured data.
CSV, logs, sensor and market data, audio and genomes: StrataZip tries several coders on every block, keeps the one that wins, and checks every byte on the way out. Close to the best on everything else, with verification and repair built in.
Free and open source under the AGPL-3.0. Most people never need to pay: see who does. Linux x86-64 today; Windows, macOS and a desktop app are planned.
$ stratazip -l 9 -c prices.csv prices.stz $ stratazip -d prices.stz prices.csv
Measured, not promised
One thread per tool, and every result decompressed and compared with the original byte for byte. The Silesia numbers can be rerun from the repository on public data.
Bitcoin price history, 2017 to 2025, CSV (2,575,631 bytes)
Compressed size in bytes; shorter is better.
| Data | Best other | StrataZip |
|---|---|---|
| E. coli genome | 1,114,234 zpaq | 1,099,133 |
| Bitcoin prices, float64 pairs | 110,793 zpaq | 88,913 |
| Field recordings, ten ESC-50 clips | 1,951,940 FLAC | 1,788,551 |
| Two pop songs, 30 s each | 6,668,828 FLAC | 6,224,960 |
| Tool | Size | Ratio |
|---|---|---|
| zpaq -m5 | 39.11 | 5.419 |
| StrataZip -l 9 | 41.33 | 5.128 |
| bzip3 | 46.93 | 4.516 |
| xz -9e | 48.46 | 4.374 |
| 7z -mx=9 | 48.76 | 4.347 |
| zstd --ultra -22 | 52.52 | 4.035 |
| gzip -9 | 67.63 | 3.134 |
The honest part: level 9 is slow, and as slow to open as to make, like zpaq and cmix. It is for archives you keep. The default level 4 decompresses at about 175 MB/s, three times xz, but is larger than xz today. The Bitcoin file is private and available on request to anyone who wants to check the result. Full tables, the machine and every caveat: BENCHMARKS.md.
Why it comes out smaller
Nothing is guessed from a file name. Each block goes to whichever coder measures smallest on that block.
The right coder per block
Text, code and binaries go to a context-mixing model; columns of numbers through derivative filters; 16-bit audio to a waveform coder; DNA to a two-bit coder that learns both strands.
Verified, and repairable
A CRC-32 on every block and a SHA-256 on every file. A damaged archive is refused, never silently mis-decoded, and optional Reed-Solomon recovery records (-r 5) can repair it.
Whole trees, incrementally
Permissions, times and links kept; identical files stored once. Give it last night's archive with --from and unchanged files are not even read again.
One file out of many
--get decodes only the blocks that hold the file you asked for.
Safe writes
Output goes to a temporary name and is renamed into place only when it is complete.
Readable forever
Every .stz archive StrataZip has written stays readable by every later version. The format is documented in full.
Commercial licence
Perpetual, with 12 months of updates, the way JetBrains does it. Keep the version you bought forever; renew only if you want newer ones. StrataZip never checks a key and never phones home: the licence is a legal grant, and the program is the same for everyone.
Professional
One named person, any number of their machines.
Team
Up to 10 named people in one organisation.
Server
Unlimited use on the servers and CI of one organisation.
You don't need one to
- use the
stratazipcommand, at home or at work, including on company servers and in internal scripts; - study, modify and share StrataZip under the AGPL;
- build it into a project that is itself open source under the AGPL-3.0 or GPL-3.0.
You need one if you
- ship StrataZip, or any of its code, inside a product that is not open source;
- run a network service on a modified StrataZip and don't want to publish your changes;
- work somewhere whose policy doesn't allow AGPL software.
Unsure? Ask in Discussions and we'll tell you honestly. The full terms are in COMMERCIAL-LICENSE.md.
Install
Ubuntu and Kubuntu 24.04 or 26.04: download the .deb from
the latest release. Every
release is installed and tested on both before it is published. Other x86-64 Linux: use the
.tar.gz, or build from source with Qt 6.4 and CMake.
$ sudo apt install ./stratazip_*.deb $ stratazip --test