whatsmybitrate

About

About WhatsMyBitrate

Who runs this, how the analysis works, and what happens to your files.

What this site is

WhatsMyBitrate is a free tool that tells you what an audio file actually is, rather than what its filename, extension or metadata claims. You upload a file, and it reports the codec, sample rate, channel layout, duration, the stated bitrate, and — the part that matters — an estimated bitrate derived from measuring the audio itself. Optionally it renders a spectrogram of the track so you can see the evidence rather than take our word for it.

The problem it solves is narrow and real: a lossless container does not guarantee lossless contents. Anyone can convert a 128 kbps MP3 to FLAC. The file gets bigger, the extension says FLAC, and most players will happily call it lossless. The audio inside is still the hollowed-out MP3. Measuring the frequency content is the only reliable way to tell the difference.

Who builds it

WhatsMyBitrate is built and maintained by Oren Cohen. It began as a personal Python script for auditing a music library that had accumulated files of dubious provenance over many years, and it went on GitHub before there was ever a website. The site is the friendly front door to that same open-source project.

There is no company behind this, no team, and no funding. It is one person's tool that turned out to be useful to other people. If you want to reach me, the contact form goes straight to my inbox.

How the analysis works

There are two independent passes, and they are deliberately kept separate so you can see when they disagree.

The metadata pass uses ffprobe to read what the file says about itself: codec, sample rate, channels, duration, and the declared bitrate. When no bitrate is declared in the stream or container, it falls back to deriving one from file size divided by duration — which is flagged in the log, because that method over-reports on files with large embedded artwork.

The spectral pass decodes the actual audio and looks for the highest frequency that still carries meaningful energy. This is the part that cannot be faked. Lossy encoders apply a lowpass filter and discard everything above it, and no subsequent re-encoding puts that content back. A genuine lossless file has content running up to near the Nyquist limit (half the sample rate — 22.05 kHz for CD-quality 44.1 kHz audio). A transcode has a hard shelf well below it.

The exact thresholds it uses

Since this is a tool that judges other people's files, it would be poor form for it to be a black box. These are the literal cutoffs the estimator applies to the measured peak frequency:

Measured peak frequency Reported bracket
≤ 15,500 Hz~96 kbps
≤ 16,500 Hz~128 kbps
≤ 18,500 Hz~192 kbps
≤ 19,600 Hz~256 kbps
above 19,600 Hz~320 kbps or lossless

Every analysis also returns a full debug log showing which values came from metadata, which were measured, and how the verdict was reached. If you disagree with the conclusion, you can see precisely where it came from.

Limitations, stated plainly

Spectral analysis is strong evidence, not proof. A few honest caveats: material that genuinely contains no high-frequency content — solo upright bass, some spoken word, old analog recordings, heavily processed ambient — can look like a transcode when it is not. Encoders vary in where they place their lowpass, so the brackets above are typical values rather than guarantees. And a file that was mastered from a lossy source will be flagged as lossy no matter how pristine the FLAC wrapping it is, which is correct behavior but occasionally surprising.

Treat a result as a well-supported opinion backed by a measurement you can inspect. The spectrogram is there so you can form your own.

What happens to your files

Uploaded audio is processed for analysis and then discarded. Nothing is stored long-term, nothing is shared, and nothing is sold. There are no accounts, so there is nothing to attach a file to even if we wanted to. Uploads are capped at 100 MB, and the supported formats are MP3, AAC, M4A, WAV, FLAC, AIFF and OGG/Vorbis.

You do not have to take that on faith, which is rather the point of the next section. Full details are in the privacy policy.

Open source

The analysis code is public at github.com/oren-cohen/whatsmybitrate. You can read exactly what is measured, how the verdict is reached, and what happens to a file after processing. You can also run it locally and skip uploading anything at all — and unlike the web version, the command-line tool does batch scans, which is what you want if you are auditing a whole library rather than a single track.

Bug reports and pull requests are welcome. Audio is full of strange formats and stranger encoders, and no one person tests against all of them.

How this site is funded

The tool is free and has no paywall, no accounts and no premium tier. Running costs are covered by advertising. Ads are clearly separated from analysis results, and they never influence what a result says — the verdict comes from the same open-source code you can read on GitHub.

Try it on your own files

Upload any audio file and see its true bitrate, codec, and frequency content in seconds. Free.

Analyze a File