BPM Delay Calculator

Convert BPM to delay times, reverse-engineer tempo from a known delay, tap-detect tempo and model feedback decay — all in one tool.

Ad placeholder (leaderboard)
Enjoying the tools? Go Pro for £4.99 (one-time) and remove all ads — forever, on this device. Remove ads — £4.99

A BPM delay calculator built for musicians, producers, mixing engineers and sound designers who need tempo-accurate delay times — and more. It covers four workflows in one tool: converting a tempo to a full table of note-length delay times, reversing that calculation to find the BPM that matches a hardware delay setting, detecting tempo by tapping along to a track, and modelling exactly how many echoes a feedback percentage produces before silence.

How it works

Converting BPM to delay time

Everything starts from the length of one quarter-note beat:

beat (ms) = 60,000 / BPM

Every other note value is a multiple of that beat. A whole note lasts four beats (x4); a half note lasts two beats (x2); an eighth note is half a beat (x0.5); a sixteenth is a quarter of a beat (x0.25). Dotted notes extend the straight value by 50% (x1.5). Triplet notes compress three notes into the space of two, giving a multiplier of 2/3.

The tool computes twelve note values — whole, half, dotted quarter, quarter, quarter triplet, eighth, dotted eighth, eighth triplet, sixteenth, dotted sixteenth, sixteenth triplet and thirty-second — and shows each one in milliseconds and in Hz. A copy button next to each value lets you paste the number directly into a plug-in.

Reverse mode: delay time to BPM

If you already have a delay time — perhaps from a vintage hardware unit, a sample or a field recording — you can work backwards:

BPM = (60,000 / delay in ms) x note multiplier

Select the note value that delay is meant to represent and the tool returns the matching BPM. Once you know the tempo you can set your DAW session to match and put everything on the grid.

Tap tempo detection

The tap-tempo panel uses the browser performance.now() timer for sub-millisecond accuracy. Tap at least twice; the tool averages the last eight intervals to smooth out inconsistent taps. A gap larger than three seconds resets the session automatically. After four or more taps the average is stable enough for professional use. The detected BPM feeds straight into the delay table below it.

Feedback decay modelling

Every delay unit has a feedback control that recycles the output back to the input. After n echoes the amplitude is:

amplitude(n) = feedback_fraction ^ n

where feedback_fraction is the percentage divided by 100. The tool counts repeats until the amplitude drops below the threshold you specify (e.g. -60 dB) and builds a table showing the time-stamp and level of every echo. This is useful for setting decay times on convolution reverbs, designing rhythmic gates and understanding how long a long reverb tail really is.

Worked example

Suppose you are working at 95 BPM and want to add a delay that feels wide and syncopated without cluttering the mix. The classic approach is a dotted-eighth delay:

  1. Enter 95 in the BPM field.
  2. Read the dotted-eighth row: 473.68 ms.
  3. Paste that value into your delay plug-in.
  4. Set feedback to 35% and switch to the Feedback decay panel. At that setting with a -60 dB threshold you will see 7 echoes spread over about 3.3 seconds — plenty of texture without washing out the next bar.
BPMNote valueDelay
120Quarter (1/4)500 ms
120Dotted eighth (1/8.)375 ms
120Eighth triplet (1/8T)166.67 ms
95Dotted eighth (1/8.)473.68 ms
140Eighth (1/8)214.29 ms

Formula notes

The core relationship is simply: frequency (Hz) and tempo (BPM) are both rates, so the bridge between them is the fixed constant 60,000 (the number of milliseconds in a minute). All note-value multipliers cascade from that single calculation. The Hz column uses 1000 / ms because there are 1,000 milliseconds in a second.

The feedback decay formula is pure geometric-series mathematics: if each repeat is a fraction f of the previous, after n repeats the amplitude is f to the power n. Converting to decibels uses 20 log10(f^n) = 20n log10(f). All calculations run entirely in your browser — nothing is uploaded or stored.

Ad placeholder (rectangle)