PapaTools

Free Online Metronome

120

BPM

120 BPM
20 BPM300 BPM
4/4

Something not working? Report a problem

About the Metronome

A synthesised-click metronome with BPM (20–300), time signature, accent-on-first-beat, visual beat indicator and tap-to-tempo — powered by Web Audio API, all in your browser.

How to use the Metronome

  1. 1Set the tempo with the BPM slider, or type a number directly.
  2. 2Click the play button to start the metronome — dots flash on each beat.
  3. 3Adjust 'Beats per bar' to set the time signature (e.g. 4 for 4/4, 3 for waltz).
  4. 4Toggle 'Accent first beat' to get a higher-pitched tick on beat 1 — helpful for feeling the downbeat.
  5. 5Don't know your BPM? Tap the Tap Tempo button rhythmically 3+ times and the tempo is calculated from your taps.

Frequently asked questions

How accurate is the timing?

The metronome uses `setInterval` to schedule Web Audio API oscillator bursts. JavaScript timers are not sample-accurate, but the Web Audio clock is — the slight scheduling variation from `setInterval` drift (typically < 5 ms) is below the threshold of human perception for tempos up to 300 BPM.

What is tap tempo?

Tap tempo lets you find the BPM of a song you're listening to by tapping in time with the beat. Tap the button 3 or more times and the tool averages the time between taps to calculate the BPM. Taps older than 3 seconds are discarded so you can re-tap if you make a mistake.

What do the Italian tempo markings mean?

They are traditional musical terms for speed: Largo (very slow, ~40 BPM), Adagio (slow, ~66), Andante (walking pace, ~76), Moderato (moderate, ~108), Allegro (fast, ~132), Presto (very fast, ~168). These are approximate — ranges vary by era and composer.

Does this work in the background (with the tab hidden)?

Most browsers throttle JavaScript timers in background tabs, which causes timing drift. Keep the tab visible for consistent timing, or use a dedicated hardware metronome for professional practice.

More audio tools

View all