Free tool · nothing is uploaded

BPM & Key Finder

Drop an audio file and get its tempo and key in a few seconds. The analysis runs entirely inside your browser — your music is never uploaded, stored or sent anywhere.

Nothing uploaded Tempo + key Multiple files No signup

Drop audio files here

or

MP3, WAV, M4A, FLAC, OGG · analysed on your device · nothing uploaded

Made with Drumloop AI — describe a beat and hear it in seconds.

Generate drum loops with Drumloop AI

How to find the BPM of a song

  1. Drop an audio file onto the panel, or click it to browse. MP3, WAV, M4A, FLAC and OGG all work.
  2. Wait a couple of seconds while your browser decodes and analyses the file locally.
  3. Read the tempo. If the result looks like double or half what you expected, use the half/double buttons — see the note on halftime below.
  4. Send the tempo to the metronome, browse loops at that BPM, or generate a matching drum loop.

Half time, double time, and why detection disagrees with you

The most common complaint about any tempo detector is that it returned double or half the "right" answer. It usually did not. Tempo is genuinely ambiguous: a piece of music contains several regular pulses at once, and which one you call the tempo is a perceptual choice rather than a fact about the audio.

Take a drum and bass track. The hi-hats run at 174 BPM. The snare lands every other beat, implying 87. The bassline might move once per bar, implying 43.5. All three pulses are really there. An algorithm picks the one with the strongest periodic energy, which is usually the fastest clear one; a listener picks the one they would nod their head to, which is usually slower.

This matters practically because different jobs want different answers. If you are lining up hi-hats or programming a shaker, you want the fast reading. If you are writing a bassline or matching a vocal, you want the slow one. Neither is more correct — that is why the results above give you both, one click away.

The one case where the detector is simply wrong is a track with a tempo change or heavy rubato. There the confidence figure drops, because the intervals between detected beats stop agreeing with each other. When you see low confidence, the honest answer is that the track does not have a single tempo, and tapping the section you care about will serve you better than any automatic reading.

Sanity-check the result against the genre

If the detected tempo sits far outside the usual range for the style, you are probably looking at a half-time or double-time reading. This table is the quickest cross-check.

If your result is double or half one of these, the other reading is probably the one you want.
Genre Range Typical Notes
Hip hop 80–100 90 Boom bap sits at the low end; modern rap creeps toward 100.
Boom bap 85–95 90 Swung 16ths and a heavy backbeat define the pocket.
Trap 130–150 140 Written at 140 but felt at 70 — the halftime illusion.
Lo-fi 70–90 80 Deliberately behind the beat, often with swing.
R&B 60–90 75 Slow tempos with dense 16th-note hi-hat work.
Reggaeton 90–100 95 The dembow pattern locks to this narrow window.
Rock 110–140 120 Straight eighths, backbeat on 2 and 4.
Metal 140–200 160 Double kick and blast beats push the top end.
Funk 95–115 105 Sixteenth-note ghost notes make it feel faster.
Jazz (swing) 120–200 140 Counted in swung eighths on the ride.
House 120–130 125 Four-on-the-floor; 128 is the club standard.
Techno 125–150 135 Faster and drier than house, with off-beat hats.
Drum & bass 160–180 174 174 is the genre default; the bass implies half that.
Dubstep 138–142 140 Written at 140 with the snare landing on beat 3.
Drill 138–145 140 Sliding 808s over a halftime feel.
Pop 100–130 120 Radio pop clusters tightly around 120.
Afrobeats 100–118 108 Syncopated kick with a triplet-leaning shaker.
Ballad 60–80 70 Slow enough that subdivisions carry the pulse.

How the detection works

Tempo detection here follows the standard approach for the problem, and it is worth knowing roughly what it does so you can predict when it will struggle.

  1. Isolate the low end. The file is mixed to mono and low-pass filtered at around 150 Hz, which leaves the kick drum and bass dominating. Percussive onsets are much easier to find without cymbals and vocals in the way.
  2. Build an energy envelope. The filtered signal is reduced to a series of short-window loudness measurements — roughly one every twelve milliseconds — which turns the waveform into a curve with a bump at every beat.
  3. Pick peaks. Bumps that rise meaningfully above their local surroundings are treated as onsets. Using a local rather than a global threshold means quiet passages still contribute.
  4. Histogram the intervals. Every gap between nearby peaks is converted to a tempo and counted. The tempo that explains the most intervals wins, and its immediate neighbours are folded in so a reading spread across 119, 120 and 121 is not beaten by a spurious spike.

Key detection works differently. The track is sampled in windows, the energy at each of the twelve pitch classes is measured across five octaves, and the resulting profile is compared against the Krumhansl–Schmuckler major and minor templates. Whichever key correlates best wins. This is a well-established method, but it assumes tonal music with a stable key — it is far less reliable than the tempo figure, and it should be treated as a suggestion.

Frequently asked questions

Is my audio uploaded anywhere?

No. The file is read into memory by your browser, decoded with the Web Audio API and analysed on your own machine. Nothing is transmitted to us or to anyone else, nothing is stored, and no account is required. You can confirm it by opening your browser's network tab while you run an analysis — there are no requests.

How accurate is automatic BPM detection?

For music with a clear, steady beat — most produced pop, rock, hip hop and electronic music — it is reliable to within a fraction of a BPM. It struggles with rubato classical performances, live recordings that drift, ambient material with no transients, and tracks that change tempo partway through. The confidence figure tells you how consistent the detected pulse was; when it is low, cross-check by tapping the tempo manually.

Why does it say 174 when I expected 87?

Both are correct — this is the halftime ambiguity. Tempo detection finds the underlying pulse, which is often twice what you feel. A drum and bass track has hi-hats at 174 and a snare pattern that feels like 87; trap is written at 140 and felt at 70. Use whichever matches the grid you are working on, and the half and double buttons make switching one click.

Can it detect the key as well?

Yes, and it is shown alongside the tempo. Key detection compares the distribution of pitches in the track against standard major and minor profiles. It is more approximate than tempo detection — modal music, heavily processed material and tracks that change key will confuse it — so treat the result as a strong starting point rather than a fact.

Does it work with a YouTube link?

Not directly — browsers cannot read audio from another site's player, and we do not proxy or download anything on your behalf. If you have the rights to the audio, download it to your device first and drop the file here. For anything you cannot download, tapping the tempo while it plays works well and takes about ten seconds.

What file formats are supported?

Whatever your browser can decode, which in practice means MP3, WAV, M4A/AAC, FLAC and OGG. Very long files take longer to analyse because the whole file must be decoded first; a three-minute track is typically done in one to three seconds.

Can I analyse several files at once?

Yes. Drop or select multiple files and they are analysed one after another, with results listed as they finish. This is the fastest way to sort a folder of samples or check a set of reference tracks before a mix.

Can I get drum loops at the detected tempo?

Yes. Once you have the tempo, Drumloop AI generates an original, royalty-free drum loop at exactly that BPM from a text description, and the free loop library is organised by tempo.

More free music tools

You know the tempo. Get drums that match it.

Drumloop AI generates original, royalty-free drum loops at exactly the BPM you just detected — described in plain English, ready in seconds.

Try for free