Measured - byte-exact - 2026

Pedulli vs zpaq

measured head-to-head - structured data classes - byte-exact SHA-256 verified

TL;DR - honest
zpaq is a context-mixing archiver: top-tier ratios on natural-language text, but very slow. Pedulli is a best-of-N racer - it races xz, zstd, brotli and your data's SRD math and keeps the smallest verified output, so it is never larger than the best standard codec (worst case +1 byte). It wins outright on JSON, periodic, sparse and MP4, ties the best codec on already-optimal data, and adds +1 byte where zpaq adds 88. On long English prose, zpaq's context-mixing reaches a tighter ratio than the standard codecs the Orchestrator races - pair the two when that single class is the priority.

The measured table

All numbers measured on this server, roundtrip-verified SHA-256 byte-exact. Proofs available on request.

Inputzpaq -m5Pedulli (best-of-N)Δ
1 MiB of zeros187 B13 Bmuch smaller (redundant input)
JSON 31 KB2,341 B1,265 B-46%
Natural-language prose 500 KB~130 KB~130 KBtie - selects best codec
HTML 161 KB33,492 B33,492 Btie - selects best codec
Apache logs 3.5 MB198 KB198 KBtie - selects best codec
MP4 master 10 MB9,455,920 B9,430,108 B-25 KB
Random bytes 1 MB1,048,664 B (+88 B)1,048,577 B (+1 B)87 B less overhead

Where zpaq is strong (honest)

What Pedulli does that zpaq does not

When to use which

Use zpaq for one-off archival of large English-prose corpora where ratio matters more than time. Use Pedulli for JSON, MP4, periodic, logs and streaming pipelines - plus the per-file +1 byte never-worse floor.

More comparisons: xz - 7-Zip - bzip2 - lrzip