About
About WhatsMyBitrate
Most audio files tell you what they claim to be, not what they actually are. WhatsMyBitrate exists to close that gap: upload a file, and instead of trusting its filename, extension, or embedded tags, the tool measures the audio itself and reports what it finds.
WhatsMyBitrate analyzes an uploaded audio file in two independent ways. First, it reads the file's own metadata codec, sample rate, channel layout, duration, and the bitrate the file claims for itself. Second, it decodes and measures the actual frequency content of the audio and compares that to what the file's sample rate makes physically possible. The two are shown side by side, including a full spectrogram of the entire track, so a mismatch between what a file claims and what it actually contains is visible rather than taken on faith.
A lossless-sounding file extension is not proof of lossless audio. A file that was compressed down to a low bitrate and later converted into an uncompressed or lossless container will keep the extension of a high-quality file while still missing the frequency content that was discarded the first time it was compressed. That loss cannot be recovered by changing the wrapper, and most media players have no way to warn a listener that it happened. Measuring the frequency spectrum directly is the only reliable way to catch it.
The tool is built for anyone who wants a straight answer about an audio file's real quality producers and audio engineers checking material before it goes into a project, podcasters and archivists auditing a library, and listeners who simply want to know whether the "FLAC" or "320kbps" file they downloaded is what it claims to be.
Supported formats currently include MP3, AAC, M4A, WAV, FLAC, AIFF, and OGG/Vorbis, up to 100MB per file. For each file, the tool reports the codec, stated and estimated bitrate, sample rate, channel count, duration, peak frequency, the Nyquist ceiling for that sample rate, and where selected a spectrogram of the whole track.
Because the entire point of the tool is to catch mislabeled or misrepresented audio, its own findings need to be verifiable rather than opaque. Every analysis includes a debug log showing which values came directly from the file's metadata and which were measured from the audio itself, so a result can be checked rather than simply trusted.
Files are uploaded only for the purpose of running the analysis you requested. There are no user accounts, and a submitted file is not needed or kept for anything beyond producing your result. See the Privacy Policy for the complete description of what is and isn't collected.
Spectral analysis is strong evidence, not absolute proof. Certain source material solo bass, some spoken word, older analog recordings, or heavily processed ambient material can naturally contain little high-frequency content and may resemble a lossy transcode even when it isn't one. Encoders also vary in exactly where they apply their cutoff, so the estimator's bitrate brackets are typical values rather than guarantees for every encoder. And a file that was originally sourced from a lossy recording will correctly be flagged as lossy no matter how cleanly it is packaged afterward which is accurate, if occasionally surprising, behavior.
WhatsMyBitrate is an independent project built and maintained by Oren Cohen. It began as a personal script for auditing a music collection and has since grown into this website. There is no separate company, investor, or team behind it it is one person's tool, made public because it turned out to be useful to other people as well.
The analysis code is publicly available on GitHub, where the exact methodology described above including the file-handling behavior described in the Privacy Policy can be independently inspected. A command-line version is also available there for anyone who would rather analyze files locally without uploading them at all.
WhatsMyBitrate is free to use, with no accounts, subscriptions, or paywalls. Running costs are covered by advertising shown alongside the tool. Advertising is kept separate from the analysis itself, and it has no influence on what a result reports the verdict comes from the same open-source code anyone can read.