FLAC Format: Complete Technical Reference
FLAC gives you bit-for-bit perfect audio at roughly half the size of WAV. It is free, open-source, patent-unencumbered, and by now supported almost everywhere that matters — from Android and Windows to Apple devices, Tidal, Amazon Music, and Qobuz. For anyone who wants to keep the full quality of a recording without paying WAV's storage tax, FLAC is the default answer. This is the complete technical reference: how lossless compression actually shrinks audio without discarding a single sample, what the compression levels really change, how FLAC differs from ALAC and WAV, its genuine limits, and where it fits in a modern archival and distribution workflow.
History of the FLAC Format
FLAC — the Free Lossless Audio Codec — was created by Josh Coalson, with the first stable 1.0 release in 2001. It was open-source and royalty-free from day one: no patents, no licensing fees, and a permissively-licensed reference implementation (libFLAC). In 2003 the project joined the Xiph.Org Foundation, the same non-profit behind Vorbis, Opus, and the OGG container, which still maintains it. FLAC's adoption followed a clear arc. Audiophiles embraced it first, because it preserved CD quality exactly while halving file size. Music-sharing communities standardized on it for lossless trading for the same reason. Then the streaming industry caught up: Tidal launched FLAC-based HiFi tiers, Amazon Music HD adopted it, and Qobuz built its whole catalog around lossless FLAC. The final compatibility milestone came in 2017, when Apple added FLAC playback to iOS 11 and macOS High Sierra — meaning that for the first time every major platform could play FLAC out of the box. Twenty-plus years on, FLAC is the de facto standard for lossless audio that isn't tied to a single vendor.
Technical Specifications
FLAC is a lossless codec: decoding a FLAC file reproduces the original PCM samples exactly, bit for bit. It supports bit depths from 4 to 32 bits per sample, sample rates up to 655,350 Hz (far beyond any practical need), and 1 to 8 channels, including 5.1 and 7.1 surround layouts. Compression is controlled by levels 0 through 8, where 0 encodes fastest and 8 produces the smallest file; crucially, the level affects only encoding effort and file size, not quality — every level is lossless, and decode speed is roughly the same regardless. Typical output lands around 50-70 percent of the equivalent WAV, depending on the music. The STREAMINFO header carries an MD5 signature of the unencoded audio so a decoder can verify the file has not been corrupted. FLAC files are seekable and streamable, support embedded cover art and rich metadata via Vorbis comments, and can store a seek table and ReplayGain loudness tags. The format is designed for fast decoding on modest hardware, which is why it works on phones and embedded players, not just PCs.
How FLAC Compression Works
FLAC achieves lossless compression in two stages, and understanding them explains why it is both smaller than WAV and slower to encode than to decode. First, prediction: the encoder splits audio into short frames and, within each, models the waveform with a mathematical predictor — either a simple fixed polynomial or a more powerful Linear Predictive Coding (LPC) model whose coefficients it computes per frame. The predictor guesses each sample from the ones before it; because music is highly self-similar over short spans, the guesses are close. Second, residual coding: FLAC stores only the small differences (residuals) between the prediction and the actual samples, encoded with Rice/Golomb coding, an entropy scheme that represents small numbers in very few bits. For stereo, FLAC also applies inter-channel decorrelation (mid/side, left/side, or right/side) since the two channels are usually similar. None of this discards information — the exact residuals are kept — so the original reconstructs perfectly. Higher compression levels simply let the encoder search harder for better LPC coefficients and partitioning, spending more CPU up front to shave off a few more percent.
Compression Levels and What They Change
FLAC's -0 through -8 levels trade encoding time for file size, never quality. Level 0 uses only fixed predictors and minimal searching — fast, but the largest FLAC output. Levels 1 through 4 progressively enable LPC and modest block/partition searching. Level 5 is the reference encoder's default and the sweet spot: it captures nearly all the achievable savings at reasonable speed. Levels 6 through 8 push exhaustive LPC-order and partition searches for diminishing returns — often less than one percent smaller than level 5 while taking several times longer to encode. In practice the difference between level 5 and level 8 on a typical album is a few megabytes, so level 5 (or 8 if you are archiving once and never re-encoding) is the sensible choice. Because decode cost is essentially level-independent, a level-8 file plays back just as easily on a phone as a level-0 file. The one setting that does affect compatibility is block size and sample format, not the level — every level produces a standard FLAC any decoder can read.
FLAC vs ALAC, WAV, and MP3
FLAC versus ALAC (Apple Lossless): both are lossless and compress to a similar size, roughly half of WAV. The difference is ecosystem, not fidelity — ALAC was Apple's house format and integrates tightly with the Music app and older iTunes libraries, while FLAC is the open, cross-platform standard that every non-Apple device prefers. Since Apple now plays FLAC too, FLAC is the more portable choice; use ALAC only if a specific Apple workflow demands it. FLAC versus WAV: identical audio, but FLAC is about half the size, carries proper metadata and cover art, and self-verifies with an MD5 checksum. WAV's only edge is zero-decode simplicity for heavy DAW editing. For storage and distribution, FLAC wins clearly. FLAC versus MP3: not the same job. FLAC is lossless and large; MP3 is lossy and small. A FLAC album might be 250-400 MB against 60-100 MB for a 256 kbps MP3. Keep FLAC as the archive and export MP3 or AAC for phones, cars, and casual sharing.
What FLAC Cannot Do
FLAC's limits are mostly about size and reach rather than quality. It cannot make files as small as a lossy codec — being lossless, it is fundamentally larger than MP3, AAC, or Opus, and there is no way to squeeze a FLAC below the information content of the original audio. It is therefore the wrong tool for bandwidth-constrained web streaming, email attachments, or podcast delivery. FLAC has no lossy mode at all: if you need a 5 MB file, you must convert to a different codec. Device support, while now broad, is not truly universal — some older car stereos, budget Bluetooth players, and legacy hardware still refuse FLAC, and Apple's support, though present since 2017, historically lived in the Files app and browser rather than a fully-integrated Music-library citizen. FLAC also has no DRM and no chapter/bookmark system for audiobooks (M4B remains better for chaptered long-form content). And converting a lossy source to FLAC gains you nothing but wasted space — wrapping an MP3's already-degraded audio in a lossless container cannot recover what the MP3 encoder discarded.
Device and Software Compatibility
FLAC support is now broad across platforms. Android has decoded FLAC natively since version 3.1 (2011); Windows 10 and later play it without extra codecs; and iOS 11 and macOS High Sierra (both 2017) added native FLAC playback. In the browser, Chrome, Firefox, and Edge support FLAC through HTML5 audio, while Safari's support is more limited. Dedicated players handle it universally — VLC, foobar2000, Winamp, MusicBee, Plex, and Roon all read FLAC and its metadata. Most digital audio workstations import FLAC, though some still prefer you decode to WAV for sample-accurate editing. On the hardware side, a growing majority of modern car stereos play FLAC from USB, and home audio gear from Sony, Pioneer, Denon, Marantz, and others supports it natively, as do most network streamers and NAS media servers. The remaining gaps are at the low end: some inexpensive or older portable players and car units simply do not list FLAC among supported formats, so for a truly unknown playback target, MP3 remains the safer bet.
Metadata, Cover Art, and Integrity
FLAC has one of the cleaner metadata stories in audio. Tags use Vorbis comments — free-form UTF-8 key-value pairs such as TITLE, ARTIST, ALBUM, ALBUMARTIST, DATE, TRACKNUMBER, GENRE, and any custom field you like, with no fixed length limits. Cover art is stored in a dedicated PICTURE metadata block that can hold multiple images (front cover, back cover, artist) as JPEG or PNG, following the same typing scheme as ID3's attached-picture frame. FLAC also natively supports ReplayGain tags for consistent loudness across a library, and a seek table for instant scrubbing. The integrity story is unusual and valuable: the STREAMINFO block stores an MD5 hash of the original uncompressed audio, so tools like 'flac -t' can confirm a file decodes to exactly the bits that were encoded — useful for verifying archives have not silently corrupted over years of storage. Because metadata lives in standard blocks that every FLAC decoder understands, tags and art reliably survive transfers between apps and devices, unlike WAV.
FLAC File Sizes and Compression Ratios
FLAC size depends on the music, because compressibility varies with complexity: sparse acoustic recordings shrink more than dense, loud, heavily-limited masters. As a rule of thumb, expect 50-70 percent of the WAV size, averaging around 55-60 percent for typical modern music. Concrete figures at CD quality (16-bit / 44.1 kHz stereo): a three-minute song is roughly 30 MB as WAV and about 18-20 MB as FLAC; a full 45-minute album is roughly 450 MB as WAV and about 250-300 MB as FLAC. High-resolution 24-bit / 96 kHz material is proportionally larger — a 45-minute album can run 1-1.5 GB in FLAC — but still meaningfully smaller than its ~2.7 GB WAV equivalent. Against lossy formats the gap is stark: that same album is about 85 MB at 256 kbps MP3. So FLAC roughly halves your lossless storage versus WAV while remaining three to four times larger than a high-quality lossy copy. For a music library, that means a few terabytes covers a serious lossless collection — practical for a home NAS, excessive for a phone, which is exactly why phones get the MP3 or AAC exports.
Streaming Services and Lossless FLAC
FLAC underpins most of the lossless streaming market. Tidal's HiFi tiers, Amazon Music HD/Unlimited, and Qobuz all deliver lossless (and, in several cases, hi-res 24-bit) audio built on FLAC. Deezer HiFi likewise streams FLAC. The notable outlier is Apple Music, which offers lossless streaming using ALAC rather than FLAC, and Spotify, whose long-promised lossless tier has used its own delivery rather than consumer FLAC downloads. For creators and labels distributing to these platforms, FLAC (or WAV) is typically the accepted lossless master upload, from which each service derives its own delivery streams. For listeners, the practical upshot is that a personal FLAC library sits in exactly the same quality tier as paid lossless streaming, with the advantage that you own the files and they never expire, re-encode, or vary with your connection. If a service lets you export or download purchases, FLAC is the format to prefer where offered.
When to Use FLAC
Use FLAC as your archival and lossless-distribution format. Rip CDs to FLAC to preserve exact quality at half the storage of WAV. Keep a FLAC master library on a home server or NAS as the authoritative copy from which you generate MP3 or AAC for phones and cars. Share high-fidelity mixes with collaborators when WAV would blow past email or upload limits. Upload FLAC (or WAV) to streaming services and distributors that accept lossless masters. Choose FLAC over ALAC whenever you want maximum cross-platform portability, and over WAV whenever you want smaller files with reliable metadata and integrity checking. Avoid FLAC for bandwidth-sensitive web audio, email-sized attachments, and podcast distribution, where a lossy codec is both smaller and perfectly adequate for the content. The clean workflow: master in WAV, archive in FLAC, distribute in MP3 or AAC.
How to Convert To and From FLAC
Converting to FLAC is how you turn a bulky WAV or AIFF master into a smaller lossless archive — the audio is preserved bit for bit, and you gain metadata, cover art, and an integrity checksum. From WAV or AIFF to FLAC is fully lossless. From FLAC to WAV is also lossless and is the usual first step before editing in a DAW that prefers raw PCM. From FLAC to MP3, AAC, OGG, or Opus produces the compressed distribution copy — pick 192-320 kbps for music — and is the correct way to get FLAC-quality masters onto phones, into cars, or attached to email. Converting a lossy file (MP3, M4A, OGG) to FLAC is generally pointless: it makes a large file without recovering any quality, since the lossy encoder already discarded detail permanently. The one exception is convenience — wrapping mixed sources in one lossless format for a uniform library. AudioUtils performs all of these conversions entirely in your browser using FFmpeg WebAssembly: no upload, no signup, no software install, and your files never leave your device.