BYTETOOLS

BPM Detector

Find the tempo of any song in beats per minute. Upload nothing: the track is decoded and analysed in your browser, with alternates and a confidence score.

Drop a song here or click to browseThe track is decoded and analysed in your browser — nothing is uploaded.

What is the BPM Detector?

The ByteTools BPM Detector estimates how fast a track is. It decodes the audio with the Web Audio API, builds an onset envelope that tracks where energy suddenly appears, then looks for the spacing that repeats most strongly through the whole clip.

  • Spectral flux onset detection followed by autocorrelation of the beat spacing
  • Tempo prior around 120 BPM that corrects the usual half and double time errors
  • Confidence score so you know when to trust the number
  • Alternate tempo candidates ranked by strength, plus half and double time
  • Beat interval in milliseconds for setting delays and LFOs
  • Runs entirely in your browser - the track is never uploaded

How to use the BPM Detector

  1. 1

    Drop a song onto the box, or click to browse.

  2. 2

    Click Detect BPM and wait a few seconds while the track is decoded and analysed.

  3. 3

    Read the tempo, along with its confidence score and beat interval.

  4. 4

    Check the alternates list if the confidence is low or the feel seems half speed.

About the BPM Detector

The ByteTools BPM Detector estimates how fast a track is. It decodes the audio with the Web Audio API, builds an onset envelope that tracks where energy suddenly appears, then looks for the spacing that repeats most strongly through the whole clip. You get a tempo, a confidence score, the beat interval in milliseconds and a list of alternates.

It is aimed at DJs matching tracks, producers sampling a loop, dancers and instructors picking music at a workable speed, and anyone who needs a starting tempo before dropping a file into a DAW. The first two minutes are analysed, which is plenty for a track that keeps a steady pulse.

The result is an estimate produced by a heuristic, not a value read from the original session file, and this page says so plainly rather than presenting a number as fact. Everything runs inside your browser - the audio is never uploaded, so unreleased material stays entirely on your machine.

Frequently asked questions

How accurate is automatic BPM detection?

On steady electronic and pop material with a clear kick pattern it is usually within a fraction of a beat per minute. On live playing, orchestral music, rubato or anything without obvious percussion it can be well off, or find no tempo at all. The confidence score is your guide.

Why does it show a tempo that is double or half what I expect?

Half time and double time genuinely fit the same track, which is why the error is so common. This tool weights its answer toward the range people usually count in, and lists the alternates underneath. If 174 feels wrong for a drum and bass track, 87 is the same groove counted differently.

Can it detect the BPM of a song that changes tempo?

Not meaningfully. The analysis assumes one steady pulse across the section it examines and reports a single figure, so a track with a tempo change gives you an average that matches neither part. Split the file first and analyse each section separately.

How long a clip does it need?

At least a few seconds, but around thirty is much better - more repetitions of the beat give the autocorrelation a clearer pattern to lock onto. The tool analyses up to the first two minutes and ignores the rest.

Is my music uploaded to find its BPM?

No. The file is decoded and analysed by JavaScript running in your own browser tab. Nothing is sent to a server, which makes it safe to check unreleased tracks and private demos.

Related tools