metronomepractice musicbpmtap tempo

Online Metronome: Practicing at Reduced Tempo Without Buying Anything

A free metronome from 1 to 1000 BPM with tap tempo and adjustable time signatures. Why a software metronome needs a special technique to avoid drifting out of sync.

August 22, 2026·5 min read

There's a passage in a piece that just won't come out at the original speed no matter how hard you try. The technique musicians use to solve this isn't "practice faster until it works", it's the opposite: slow the tempo down until it comes out clean, then raise it gradually. That requires a reliable metronome, and you don't need to buy a physical one to have it.

Why a software metronome can drift out of sync (and how to avoid it)

A naive metronome built with basic JavaScript would use a timer (setInterval) to play a click every X milliseconds. The problem is browser timers aren't precise: they can lag by a few milliseconds depending on what else the tab is doing, and that small error accumulates click after click until the metronome noticeably drifts, especially in long sessions.

The correct technical solution is to schedule clicks ahead of time using the Web Audio API's precision clock (AudioContext.currentTime), instead of trusting when the timer fires. The browser calculates the exact instant of each click in advance and schedules it in the audio engine, which does have sample-accurate precision. The result is a stable tempo even in long practice sessions.

Tap tempo: finding a song's BPM by ear

If you have a song stuck in your head and want to know its tempo, the tap tempo feature lets you press a button to the beat you're hearing; the tool averages the time between your last several taps and calculates the corresponding BPM. The more consistent taps, the more accurate the result.

Reduced-tempo practice technique

For a difficult passage, the usual sequence is:

  1. Slow the metronome down to a speed where you can play it with zero mistakes, even if it feels absurdly slow.
  2. Repeat until it's automatic at that speed.
  3. Raise the tempo in small increments (5-10 BPM) and repeat the process.
  4. If you slip up again, drop a few BPM and consolidate before going back up.

Practicing fast with mistakes reinforces those mistakes; practicing slow and gradually speeding up builds the correct muscle memory from the start.

Frequently asked questions

What BPM range does it support? From 1 to 1000 BPM, though the normal musically useful range is roughly 40 to 240 BPM.

What time signatures are available? From 2/4 to 8/4, with the first beat of each bar accented with a distinct click to mark the downbeat.

Why does my homemade metronome (with setInterval) drift out of sync on long pieces? Because browser timers aren't millisecond-precise and the error accumulates. A well-built metronome schedules clicks with the Web Audio API clock, not a plain timer.

Do I need an internet connection? No, once the page loads it works completely offline.


Practice at any tempo with the online metronome, from 1 to 1000 BPM, with tap tempo and adjustable time signatures, free and with nothing to install.

Try it without code

Online Metronome

Metronome with tap tempo and adjustable time signatures.

Open Online Metronome

Built by

Miguel Ángel Colorado Marin (MACM)

Full-Stack Developer · Guadalajara, España

I develop web apps, digital tools and full projects — from design to deployment.

Contact me