zstd 1.4.5 -1 2.884 500 MB/s 1660 MB/s
zstd 1.4.5 --fast=1 2.434 570 MB/s 2200 MB/s
zstd 1.4.5 --fast=5 2.178 700 MB/s 2420 MB/s
lz4 1.9.2 2.101 740 MB/s 4530 MB/s
3% larger size for a nearly 2x decompression speed is a no brainer for lots of uses.Anecdotally I have also gotten much better decomp speed on snappy on previous generations of CPUs staying within ~10% compression ratio, though I had not benchmarked/tuned extensively nor reconfirmed in the past ~2 years. (Probably this can also vary a lot by implementation, which you're often stuck with based on some other library choice.)
For my use case, any extra benefits of zstd are far outweighed by the extra cost of downloading zstd itself in the browser.
LZ4 is smaller, faster and much more simple.
zstd also seems to be optimizing much more, recently, for the large stream of data use cases, versus the fixed-size or smaller records you might get in, say, databases, or filesystems, so I think it's actually becoming less generally useful over time of late.
And if you're going to play with Snappy, you might find S2, which was linked on HN relatively recently, interesting. [1]