Create & analyze

BPM Detector

Find a song's tempo, confidence, musical key, and Camelot code in seconds, or analyze a whole batch of files and export the results as CSV.

  • Runs on your device
  • Free, no sign-up
  • WAV, MP3, FLAC & more

How to find a song's BPM and key in 3 steps

  1. 01

    Load your track

    Click Open file, drag a track into the drop zone, or select Try a demo. Analysis starts automatically once the file decodes.

  2. 02

    Read the results

    The tool shows a tempo estimate with a confidence score and half/double-time alternatives, plus the musical key, mode, Camelot code, and relative key. Duration, sample rate, and loudness (LUFS) are listed alongside.

  3. 03

    Confirm or export

    Use the tap-tempo pad to double-check an uncertain reading by tapping along yourself. To analyze several files at once, add them to batch analyze and download the full results table as a CSV.

What you can do with this BPM detector

  • Get an automatic tempo estimate for any track, shown alongside a confidence score so you know how certain the reading is.
  • See half-time and double-time alternatives when a tempo could reasonably be counted two ways, a common ambiguity in electronic and dance music.
  • Detect the track's musical key and mode (major or minor), plus its Camelot code and relative key for harmonic mixing.
  • Confirm or override an uncertain tempo yourself with the tap-tempo pad, tapping along to the beat in real time.
  • Batch analyze multiple files at once, with results collected into a single table instead of one file at a time.
  • Download batch results as a CSV file, ready to import into a spreadsheet or DJ library tool.
  • See duration, sample rate, and integrated loudness (LUFS) for each track alongside the tempo and key readings.
  • Run everything on-device, so tracks you haven't released or shouldn't share never leave your browser.

What is a BPM detector?

A BPM detector analyzes a track and estimates its tempo in beats per minute, along with its musical key, without you needing to count beats by hand or already know the song. This one reports a confidence score with every tempo estimate, offers half-time and double-time alternatives when the reading could reasonably go either way, and includes a tap-tempo pad so you can confirm or set the tempo yourself by tapping along.

Alongside tempo, it detects the track's key and mode, converts that into a Camelot code for harmonic mixing, and reports basic technical details — duration, sample rate, and integrated loudness in LUFS — all from a single pass over the file, all processed on your device.

How tempo detection works, in plain words

Automatic tempo detectors generally combine two ideas. The first is onset detection: scanning the audio for moments where energy suddenly increases, which usually corresponds to a drum hit, a plucked note, or any other percussive attack. That produces a rough map of when things happen in the track.

The second is autocorrelation: comparing that pattern of onsets against a time-shifted copy of itself to find the spacing that repeats most consistently. The spacing that lines up best, across the whole track rather than just one section, becomes the tempo estimate. A track with a strong, steady beat produces a clear, repeating pattern and a high confidence score; a track with a loose, sparse, or constantly shifting rhythm produces a weaker pattern and a lower one.

Half-time and double-time: reading the alternatives

Tempo can be genuinely ambiguous, not just hard to measure. A beat you could tap on every pulse is just as easy to tap on every other pulse instead, and both are defensible readings of the same rhythm — this is especially common in electronic, hip-hop, and dance music where the underlying pulse can be felt in more than one way. When that's the case, the detector shows a primary estimate plus its half-time and double-time alternatives, so you can pick whichever matches how you actually count the track.

If the confidence score is low or a result looks off, the tap-tempo pad is the fastest way to settle it: tap along to the beat yourself for a few bars, and that overrides the automatic reading with something grounded in how you hear the track.

Key, mode, and the Camelot wheel

Alongside tempo, the detector reports the track's musical key, its mode (major or minor), and a Camelot code — a two-character label combining a number from 1 to 12 with a letter, A for minor keys and B for major keys, used widely for harmonic mixing. Camelot codes make it easy to see at a glance which keys are musically close to each other without needing to think in sharps, flats, and modes directly.

The relative key is also shown: every major key has a relative minor that shares the same key signature, and the Camelot wheel places them on the same number, one on the A side and one on the B side. The full mapping is below.

Camelot codeKeyRelative key
1AAb minor (G# minor)1B — B major
1BB major1A — Ab minor
2AEb minor2B — F#/Gb major
2BF#/Gb major2A — Eb minor
3ABb minor3B — Db/C# major
3BDb/C# major3A — Bb minor
4AF minor4B — Ab/G# major
4BAb/G# major4A — F minor
5AC minor5B — Eb/D# major
5BEb/D# major5A — C minor
6AG minor6B — Bb/A# major
6BBb/A# major6A — G minor
7AD minor7B — F major
7BF major7A — D minor
8AA minor8B — C major
8BC major8A — A minor
9AE minor9B — G major
9BG major9A — E minor
10AB minor10B — D major
10BD major10A — B minor
11AF#/Gb minor11B — A major
11BA major11A — F#/Gb minor
12ADb/C# minor12B — E major
12BE major12A — Db/C# minor

Harmonic mixing basics

Camelot codes exist mainly to make key compatibility easy to judge without music theory. As a starting point, tracks that share the same code are in the same key and mode, so they generally layer or transition cleanly. Moving to an adjacent number with the same letter, say 8B to 9B, shifts by a perfect fifth, one of the smoothest possible key changes and a common way DJs build a set that gradually moves through related keys.

Switching the letter while keeping the number, like 8B to 8A, moves between relative major and minor — the same key signature, different tonal center — which is another common, low-friction transition. None of this guarantees two tracks will sound good together; tempo, energy, arrangement, and mix all matter too. It's a starting point for narrowing options, not a substitute for listening.

Batch analysis and CSV export

When you need results for more than one file, batch analyze processes multiple tracks in sequence and collects tempo, key, Camelot code, duration, sample rate, and loudness for each one into a single table, instead of making you open and read files individually. It's built for going through a folder of tracks at once rather than one-off lookups.

From that table, download a CSV file with every result. A CSV opens directly in a spreadsheet or imports into most DJ library and playlist tools, which makes it a practical way to tag or sort a batch of tracks by tempo or key without retyping anything by hand.

Honest limits of automatic detection

Tempo and key detection are estimates, not certainties, and it's worth knowing where they're weaker. A track whose tempo changes partway through, common in DJ mixes, live recordings, or songs with a deliberate tempo ramp, will produce one estimate for a signal that doesn't actually have a single fixed BPM — the confidence score tends to drop in these cases, which is a useful signal on its own.

Key detection can also be less certain on tracks that modulate to a different key partway through, lean on ambiguous or modal harmony, or don't have much tonal content to begin with, like a mostly percussive drum loop. Treat both tempo and key results as strong starting points to confirm by ear, especially when the confidence score is low or the half/double-time alternative looks just as plausible as the primary reading.

Tips for reliable BPM and key results

  • If the confidence score is low, use the tap-tempo pad and tap along for several bars — a few seconds of manual tapping is often more reliable than pushing the automatic detector on a difficult track.
  • When a tempo reading looks off, check the half-time and double-time alternatives before assuming the detection failed — it may just be counting the beat differently than you do.
  • Treat the Camelot code as a starting point for choosing compatible tracks, then confirm by listening — matching codes don't guarantee two tracks will sound good mixed together.
  • Use batch analyze and the CSV export when you're tagging a whole folder of tracks, rather than opening and reading files one at a time.
  • Cross-check a detected key against what you already know about a track when possible; ambiguous or modulating harmony can lower key detection's certainty.
  • Once you have a target tempo, send the track straight to the tempo changer to match another track's BPM exactly.
  • If two candidate keys seem equally plausible, listen for the track's home chord, the one it resolves back to, which is usually the true tonal center.

Frequently asked questions

Is my audio uploaded when I detect BPM and key?

No. Analysis runs on-device in your browser. Your file is decoded and analyzed locally and is never sent to a server, whether it's one track or a whole batch.

Is this BPM detector free?

Yes, free with no sign-up. The practical limits are a 150 MB file size and your device's available memory, especially when batch analyzing many files at once.

How accurate is the BPM detection?

It's generally reliable on tracks with a clear, steady beat, and the confidence score gives you a sense of how certain each result is. Tracks with a changing tempo, a weak or sparse rhythm, or unconventional structure can produce a lower-confidence or ambiguous reading.

What does the confidence score mean?

It reflects how consistently the detected tempo repeats across the track. A high score means the rhythmic pattern was clear and steady throughout; a lower score means the reading is less certain, often because the tempo shifts, the beat is faint, or the rhythm is irregular.

Why does my BPM show as double or half what I expected?

Tempo can validly be counted two ways depending on whether you feel the beat on every pulse or every other one — common in electronic and dance genres. The half-time and double-time alternatives are there for exactly this, so check them before assuming the detection is wrong.

How does tap tempo work?

Tap the pad in time with the beat for several bars, and your tapping sets the tempo directly. It's a fast way to confirm an automatic reading or to get a tempo for a track where automatic detection is uncertain.

What is the Camelot wheel and why does it matter?

It's a system that labels each musical key with a two-character code, a number and a letter, arranged so that musically compatible keys sit near each other on the wheel. It's widely used for harmonic mixing because it turns key compatibility into a simple visual pattern instead of music theory.

How accurate is the key detection?

It works well on tracks with a clear, consistent tonal center. Music that modulates to a different key partway through, leans on ambiguous or modal harmony, or has little tonal content, like a pure drum loop, can produce a less certain result.

What audio formats does the BPM detector support?

Anything your browser can decode, typically MP3, WAV, FLAC, OGG/Opus, M4A/AAC, and AIFF, browser dependent.

Can I analyze multiple songs at once?

Yes. Add several files to batch analyze and each one is processed in turn, with tempo, key, Camelot code, duration, sample rate, and loudness collected into a single results table you can download as a CSV.

After I find the BPM, can I change a song's tempo to match it?

Yes. Send the detected BPM straight to the tempo changer, type a target tempo, and it calculates the exact speed percentage needed to get there.

Does this work on mobile devices?

Yes, it runs in mobile browsers. Batch analyzing many large files at once may be slower on a phone than on a desktop, since everything is processed on your device.

What does the loudness (LUFS) reading tell me?

It's the track's integrated loudness, a standard measurement of overall perceived volume. It's shown alongside tempo and key mainly as a useful reference, for example when comparing how loud different tracks in a batch are relative to each other.

Guides for this tool