QOI is a lossless image compression format with a reference implementation in C that prioritizes encoding and decoding speed alongside reasonable compression ratios.
The format addresses the need for fast lossless image compression by offering a middle ground between compression efficiency and throughput. Where PNG achieves better compression but requires more processing time, QOI trades slightly larger file sizes for substantially faster encoding and decoding. The format itself is intentionally simple, which facilitates porting to other programming languages and makes the specification straightforward to understand and implement.
QOI suits projects where encoding and decoding speed matter more than achieving maximum compression, or where simplicity of implementation is valued. The single-file C library works well for applications that need to process images quickly without external dependencies. Developers should be aware that this reference implementation loads entire images into memory before processing, making it unsuitable for streaming scenarios or extremely large images exceeding 400 million pixels. The format has been finalized without a version number, ensuring that any QOI decoder built today will remain compatible with all future QOI files.
The project maintains the reference implementation as deliberately readable rather than performance-optimized, with pull requests for performance improvements not accepted. The format specification is locked and will not change, with the maintainers explicitly declining requests to modify the format itself. The tool includes example utilities for format conversion and benchmarking against alternative implementations.