🎵 BPM Detector
Upload audio files and automatically analyze BPM tempo in your browser with waveform visualization and beat audition.
Related guide
How to Trim an Audio File Online, and How to Read a BPM Result
Sample-accurate cut points, why the exported file is always 16-bit WAV, what the trimmer cannot do — and why an autocorrelation BPM detector keeps handing you double the tempo you expected.
What the detector actually measures
Tempo detection here is done by autocorrelation, and knowing that explains most of the results you will see. The file is decoded in the browser, reduced to a single channel, downsampled to about eleven kilohertz, and then chopped into short overlapping windows whose loudness is measured. The result is an energy envelope — a curve of how loud the track is over time, with the individual waveform thrown away.
That envelope is then compared against itself at every possible offset, and the offsets that line up best are the ones that repeat most regularly. A lag that recurs every half second is a tempo of 120 beats per minute. Peak positions are interpolated between frames, so the figure is not rounded to the nearest window, and every peak scoring well enough is returned rather than just the winner.
What this approach is good at is steady, percussive material with a clear pulse — house, pop, rock, most electronic music. It is weaker on rubato performance, on music whose beat is implied rather than struck, and on anything where the loudness envelope is dominated by something other than the beat.
Why the number is sometimes double or half
The raw peaks are folded into a working range of 55 to 210 beats per minute, and the folding is done by testing each candidate against a set of multipliers — half, double, and the ratios in between — then keeping whichever adjusted value scores best. A tempo of 70 can come back as 140, and 128 can come back as 64, depending on which multiple the algorithm prefers.
This is not an error, it is genuine ambiguity: a pulse every 1.7 seconds, every 0.86 seconds and every 0.43 seconds all describe the same repeating structure, and which one is "the" tempo depends on how you hear the music. Half-time and double-time are real musical devices. So when the primary figure looks wrong by exactly a factor of two, check the candidate list before assuming the analysis failed — the figure you expected is usually sitting just below.
Auditioning the result
The audition button plays a metronome at the detected tempo — sixteen clicks, with a higher tone on every fourth beat so you can hear where the bar starts — and clicking any candidate in the list auditions that one instead. This is the part worth using: play it against the track and you will know in a few seconds whether the number is right, which no confidence percentage can tell you.
The confidence figure describes how strongly that periodicity stood out against the alternatives, not how musically correct the answer is. A track with a very steady beat scores high even if the algorithm chose the half-time reading of it.
Two structural limits are worth knowing. Only the first two minutes are analysed, so a track that changes tempo later is described by its opening; and only the left channel is used, which does not matter for almost anything in print but would misread a mix with the drums panned hard right. Files up to fifty megabytes are accepted in MP3, WAV, FLAC, OGG, M4A and AAC, and a clip needs roughly a second of audio before there is enough to work with.
FAQ
Why is the detected BPM exactly double what I expected?
Because the algorithm folds candidates into a 55 to 210 range using octave multiples, and half-time and double-time readings describe the same pulse. Check the candidate list — the tempo you were expecting is usually there. Use the audition button to hear which one fits.
How accurate is it?
For steady, percussive music with an obvious pulse it is usually right or out by a clean factor of two. Where it struggles is anything with rubato, an implied rather than struck beat, or a loudness envelope dominated by something other than percussion. There is no way to give a single accuracy figure.
What does the confidence percentage mean?
It reflects how strongly that periodicity stood out in the autocorrelation compared with the other candidates, not whether the answer is musically correct. A very steady track can score highly on the half-time reading of its own tempo.
Can I hear the beat instead of just reading a number?
Yes, and it is the quickest way to check the result. The audition button plays sixteen metronome clicks at the detected tempo with an accent every fourth beat, and you can audition any candidate in the list by clicking it.
Does it analyse the whole file?
No — only the first two minutes, which is normally enough to establish the tempo and keeps the analysis quick. A track that changes tempo partway through will be described by its opening section.
Is my audio uploaded anywhere?
No. The file is decoded by your own browser and every stage of the analysis runs locally, so nothing is sent to a server. That is also why the analysis takes a moment on a long file — the work is happening on your machine.