Is your FLAC really lossless?
Drop a FLAC, WAV, AIFF or a "320 kbps" MP3 and see what is really inside. A file made from an MP3 keeps the MP3's missing top end however it is saved; a "24-bit" file made from a 16-bit one has 8 empty bits in every sample; a "96 kHz" file made from a CD has nothing above 22 kHz. All three show up here, with the spectrum to see for yourself. Nothing is uploaded.
drop the files to check
FLAC, WAV, AIFF, ALAC, MP3 or M4A. Up to 20 at once; each is read where it is.
At a glance
| Finds | Lossless files made from lossy ones (a FLAC from an MP3), MP3s re-encoded at a higher bitrate, 24-bit files holding 16-bit audio, hi-res files upsampled from 44.1 or 48 kHz |
|---|---|
| Shows | The average spectrum of the whole file, with the cutoff marked |
| Names | The likely source bitrate, from cutoffs we measured with LAME and AAC |
| Won't call fake | An edge near 20 kHz, which a 320 kbps MP3 and some studio filters share |
| Takes | FLAC, WAV, AIFF, ALAC, MP3, M4A, several at once |
| Uploads your files | No |
How a fake FLAC gives itself away
An MP3 or AAC encoder saves space by throwing away what it judges you will not miss, and the first thing to go is the very top of the spectrum. Before encoding, it low-passes the sound with a steep filter, so the file has nothing at all above a fixed frequency: 16 to 17 kHz at 128 kbps, around 19 kHz at 192. Converting that MP3 to FLAC or WAV makes a bigger file, but the missing top end stays missing, and the edge where the music stops is a cliff, 30 dB or more within a few hundred hertz, with only silence above.
A genuine recording does not do that. Cymbals, breath, room noise and the recording chain's own hiss carry on up to the top of the band and fade into the noise floor gradually, or stop at the converter's anti-alias filter just under 22 kHz on a 44.1 kHz file. That difference is what this page measures. It averages the spectrum over the whole file, so a quiet intro does not fool it, then looks for the highest cliff and how far it falls.
The cutoffs we measured
To name a likely source, we encoded a full-band test recording at 44.1 kHz with LAME (the MP3 encoder almost everything uses) and with ffmpeg's AAC encoder, decoded each back, saved it as FLAC, and measured where the content stopped:
| MP3 96 kbps | 15.5 kHz |
|---|---|
| MP3 128 kbps | 16.9 kHz |
| AAC 128 kbps | 17.3 kHz |
| MP3 160 kbps | 17.5 kHz |
| MP3 192 kbps | 18.9 kHz |
| MP3 V2 (VBR) | 19.0 kHz |
| MP3 256 kbps | 19.6 kHz |
| MP3 320 kbps | 20.3 kHz |
| MP3 V0, AAC 256 kbps | no cutoff: they kept the whole band |
Older encoders, Fraunhofer's and early iTunes among them, cut lower for the same bitrate, so the name the page gives is the likeliest source, not the only one. The check behind this page re-runs those encodes and requires each to be recognised and named, the 320 kbps file to be called "can't tell" rather than fake, and the original to pass.
What it can't tell you
Spectrum analysis catches the low-bitrate files that most fakes are made from, but not everything. A V0 MP3 or a 256 kbps AAC can keep the whole band, and they did on our test file, so a clean result does not prove a file was never lossy. An edge near 20 kHz is ambiguous: a 320 kbps MP3 leaves one, and so do some studio and mastering filters and some converters, so the page says "can't tell" rather than guess. A sharp cutoff can also come from a recording made at a lower sample rate, such as 32 kHz broadcast audio, or from an old master that was low-passed on purpose. Treat a flag as strong evidence, and a pass as "no sign of the usual fakes".
Fake 24-bit and fake hi-res
Some hi-res downloads have turned out to be a 16-bit master with eight zero bits added, or a 44.1 kHz master resampled to 96 kHz. Both are easy to measure. For bit depth, the page reads every sample and finds the lowest bit any of them uses: a padded 24-bit file uses 16. For sample rate, a genuine 96 kHz recording has content or at least noise above 22 kHz, and an upsampled one stops dead at the old Nyquist frequency. Spek draws the same spectrogram picture for you to judge by eye; Fakin' The Funk and Lossless Audio Checker automate the call on Windows and macOS. This page does it in the browser, file by file, with the reasoning written out.
FAQ
How can I tell if a FLAC file is fake?
Drop it above. A FLAC made from an MP3 has a sharp cutoff where the MP3 encoder low-passed it, usually 16 to 19 kHz, with nothing above. The page finds that edge, draws the spectrum and names the likely source bitrate.
Is my 320 kbps MP3 really 320?
If it was made from a 128 kbps file, it keeps that file's cutoff around 17 kHz, and the page will flag it as upscaled. A real 320 kbps LAME file cuts at about 20.3 kHz, which the page reports as "can't tell", because some genuine masters stop there too.
Can it prove a file is genuine lossless?
No tool can prove it from the audio alone. A clean result rules out the low-bitrate MP3s and AACs that most fakes are made from; a V0 MP3 or 256 kbps AAC can keep the whole band and pass.
What is a fake 24-bit file?
A 16-bit recording saved as 24-bit, so the bottom 8 bits of every sample are zero. The page reads every sample and reports how many bits are actually in use.
Why does a real CD rip show a cutoff near 22 kHz?
A 44.1 kHz file can only hold frequencies up to 22.05 kHz, and the converter's anti-alias filter sits just under that. That is normal and the page treats it as genuine.
Are my files uploaded?
No. Each file is decoded and analysed in your browser tab, so even a large FLAC collection never leaves your computer.