I was actually under the impression compression algorithms tend to work over a bitstream, but I can't entirely confirm that.
[1] Many of the context models in a typical PPM compressor will be byte-by-byte, so even that isn't fully clear-cut.
> Ultimately, Zstd is a byte-oriented compressor that doesn't understand the semantics of the data it compresses