RSS

// BPM Calculator

I kept doing the same maths by hand. BPM to milliseconds, milliseconds to Hz, for every delay, every reverb tail, every envelope stage.

This does it instead. Type a BPM, get every standard note division in milliseconds and Hz, straight, dotted and triplet.

Also: click any number to copy it straight to your clipboard.

Hope you find it useful too.

BPM

BPM
1 bar (4/4): 2000.0 ms as a rate: 0.50 Hz

Delay, reverb & envelope timings

Straight Dotted Triplet

Using this

Delay: pick a straight division for an in-time echo, a dotted 8th for the classic ambient bounce, or a triplet for a shuffled feel.

Reverb tail: aim the decay time at or just under a division so it clears before the next hit lands. A quarter or 8th keeps things tight. A half or whole note lets it wash.

Envelopes: release times read the same way. A pluck decaying over a 16th feels rhythmic. A pad released over a bar feels like it's breathing with the track.

LFO sync: the Hz column is the rate for anything that takes Hz instead of a note value. Filter wobble, tremolo, sidechain-style pumping without a compressor.

To do

  • Tap tempo. Click in time and let it average the intervals instead of typing a BPM you already half-know.
  • A "fits under" mode for reverb tails: type a target ms and it highlights the nearest division under it, rather than reading the table by eye.
  • Time signatures other than 4/4. Right now "1 bar" always means 4 beats.

Changelog

2026-07-16

  • Initial release: BPM input with presets, straight/dotted/triplet chart from a whole note down to a 32nd in ms and Hz, click-to-copy.
  • Added a slider synced to the BPM field for quick scrubbing.
  • Relabelled the top row "1 Bar" instead of "1/1" so the table's top end reads unambiguously.
  • Removed the BPM preset pills.
  • Removed the "Tempo" / "beats per minute" labels; "BPM" now sits next to the field in white, matching the number's size.
  • Fixed the stat row's unused small low-contrast default styling, now full size and light like the rest of the page.
  • Fixed the "Using this" hint paragraph, still using the low-contrast muted colour on text. Now light, like everything else.
  • Removed bold weight from the BPM display and table headers, the site never uses bold text.

I'd love to tell you more.