BPM to ms and tempo to ms
Convert BPM to ms for delay, pre-delay, and note lengths, or convert milliseconds back to BPM for a chosen note value and feel. This tempo to ms calculator does not measure a room, a speaker distance, or RT60.
From BPM
| Note | Straight | Dotted | Triplet |
|---|---|---|---|
| 1/4 quarter | 500.0 ms | 750.0 ms | 333.3 ms |
From milliseconds
The same millisecond value is a different BPM for a quarter note than for an eighth. Choose the note length you used on the delay.
Tempo:
Delay, pre-delay, and reverb starting points
Delay and pre-delay
Use the table for delay repeats. Pre-delay is the gap before reverb is heard; 1/32 or 1/16 at the current BPM is a common starting point. Copy a value, then listen. This is not a room measurement and does not compute RT60.
Reverb length as beats, not acoustics
One bar and half a bar at this tempo are convenient decay starting points. They do not describe a physical space. Set the plugin, then listen.
The formula this page uses
Milliseconds for one note =
60000 ÷ BPM × beats × feel.
60000 is the number of milliseconds in one minute. BPM is beats per
minute. beats is how many quarter-note beats that note
lasts. feel is 1 for straight, 1.5 for dotted, and 2/3
for triplet. Those coefficients are the same ones in this site’s
delay-times code.
| Note | beats | Straight (×1) | Dotted (×1.5) | Triplet (×2/3) |
|---|---|---|---|---|
| 1/1 whole | 4 | 4 | 6 | 8/3 |
| 1/2 half | 2 | 2 | 3 | 4/3 |
| 1/4 quarter | 1 | 1 | 1.5 | 2/3 |
| 1/8 eighth | 0.5 | 0.5 | 0.75 | 1/3 |
| 1/16 sixteenth | 0.25 | 0.25 | 0.375 | 1/6 |
| 1/32 | 0.125 | 0.125 | 0.1875 | 1/12 |
Worked example at 120 BPM, 1/4 straight: 60000 ÷ 120 × 1 × 1 = 500 ms. Dotted quarter: 60000 ÷ 120 × 1 × 1.5 = 750 ms. Quarter triplet: 60000 ÷ 120 × 1 × 2/3 = 333.333… ms, which this page prints as 333.3 ms. Those three numbers are the noscript example on this page and the live table at the default BPM.
Common BPM delay times
Each cell is 60000 ÷ BPM × coefficient, then rounded the way this page prints milliseconds: one decimal place when the value is 10 ms or more. The coefficients are 1 (1/4), 0.5 (1/8), 0.75 (1/8 dotted), and 1/6 (1/16 triplet). Run on this machine from the same delay-times function the calculator uses.
| BPM | 1/4 | 1/8 | 1/8 dotted | 1/16 triplet |
|---|---|---|---|---|
| 90 | 666.7 ms | 333.3 ms | 500.0 ms | 111.1 ms |
| 100 | 600.0 ms | 300.0 ms | 450.0 ms | 100.0 ms |
| 110 | 545.5 ms | 272.7 ms | 409.1 ms | 90.9 ms |
| 120 | 500.0 ms | 250.0 ms | 375.0 ms | 83.3 ms |
| 128 | 468.8 ms | 234.4 ms | 351.6 ms | 78.1 ms |
| 140 | 428.6 ms | 214.3 ms | 321.4 ms | 71.4 ms |
| 174 | 344.8 ms | 172.4 ms | 258.6 ms | 57.5 ms |
Check one row: 128 BPM, 1/8 dotted = 60000 ÷ 128 × 0.75 = 351.5625, printed 351.6 ms. 174 BPM, 1/16 triplet = 60000 ÷ 174 × 1/6 = 57.471…, printed 57.5 ms. If a plugin wants a whole number, it is rounding again on top of this table; this page does not know which plugin you will open.
The same delay at half BPM and double BPM
If you keep the millisecond box fixed and change only the session BPM, the delay lands on a different note. If you keep the note fixed and change BPM, the millisecond value halves or doubles. Both were run on this machine from 60000 ÷ BPM × beats.
| Session BPM | 1/4 at that BPM | 1/4 at half BPM | 1/4 at double BPM |
|---|---|---|---|
| 90 | 666.7 ms | 1333.3 ms (at 45) | 333.3 ms (at 180) |
| 120 | 500.0 ms | 1000.0 ms (at 60) | 250.0 ms (at 240) |
| 140 | 428.6 ms | 857.1 ms (at 70) | 214.3 ms (at 280) |
| 174 | 344.8 ms | 689.7 ms (at 87) | 172.4 ms (at 348) |
Identity that does not depend on a particular tempo: 1/8 at half BPM equals 1/4 at the original BPM, and 1/2 at double BPM equals 1/4 at the original BPM. At 120, 1/8 at 60 is 500.0 ms, and 1/2 at 240 is 500.0 ms. At 140, 1/8 at 70 is 428.6 ms, the same as 1/4 at 140. If you copy 500.0 ms from a 120 BPM session and paste it into a 60 BPM session without changing the note length, the delay is now a full quarter at 60 — twice as long relative to the bar.
Rounding on this page, and what is unknown
This page stores each millisecond as Number(ms.toFixed(ms ≥ 10 ? 1 : 2)) in delay-times.ts. Values of 10 ms or more print to one decimal place. That is display rounding, not a plugin’s sample grid.
Measured here: 110 BPM, 1/4 raw is 60000 ÷ 110 = 545.4545… ms, printed 545.5 ms, difference about 0.0455 ms. 174 BPM, 1/4 raw is 60000 ÷ 174 = 344.8275… ms, printed 344.8 ms, difference about 0.0276 ms. 128 BPM, 1/4 raw is exactly 468.75 ms, printed 468.8 ms, difference 0.05 ms.
How many milliseconds off the grid a delay must be before a listener hears it as late or early: I do not know. I do not have a sourced listening test for tempo-synced delay error. I am not filling that gap with a generic echo threshold. If you need that number, it has to come from a named study, not from this page.
Pre-delay here is a wait in milliseconds, not a room size
Pre-delay on a reverb is the wait after the dry sound before the reverb is heard. On this page that wait is the same formula as delay: 60000 ÷ BPM × beats. At 120 BPM, 1/32 is 62.5 ms, 1/16 is 125.0 ms, and 1/8 is 250.0 ms. Those three values are what the calculator copies under pre-delay. They are not meters, feet, or RT60.
A longer wait can leave the attack dry and put the tail later, so the source can feel closer while the reverb sits behind it. That is a mix choice. This calculator does not take a room width and return a millisecond value, and it does not claim those waits equal a hall. If a plugin also models early reflections, those are a separate control; this page does not set them.
Decay starting points on this page are one bar (four beats) and half a bar (two beats). At 120 BPM that is 2000.0 ms and 1000.0 ms. At 90 BPM that is 2666.7 ms and 1333.3 ms. At 174 BPM that is 1379.3 ms and 689.7 ms. They are tempo-synced lengths so a tail is less likely to smear the next downbeat. They are not a measured room.
One millisecond value can reverse to more than one BPM
The reverse formula is BPM = 60000 × beats × feel ÷ ms. The millisecond number does not name a unique tempo until you choose the note. That is a note-length fork, not a second physics equation.
| You treat 500.0 ms as | beats × feel | BPM |
|---|---|---|
| 1/4 straight | 1 | 120.00 |
| 1/8 straight | 0.5 | 60.00 |
| 1/2 straight | 2 | 240.00 |
| 1/4 dotted | 1.5 | 180.00 |
| 1/4 triplet | 2/3 | 80.00 |
| 1/8 dotted | 0.75 | 90.00 |
A second fork is pulse feel. 428.6 ms is 1/4 at 140 BPM and 1/8 at 70 BPM: 60000 ÷ 140 = 428.571… and 60000 ÷ 70 × 0.5 = 428.571…. Those two tempos describe the same interval. Which one you want is the grid you will count, not a second delay time. This page’s reverse mode does not pick that grid for you; it only applies the note and feel you select. If the BPM lands outside 20–400, the output still shows the number and marks it outside range.
What this calculator does not do
It does not convert speaker distance or air temperature into delay. It does not change audio, export a stem, or set a plugin for you. For tempo of a file or a tap, use the BPM guide or tap tempo.
