Metronome

← All tools

A swinging brass pendulum keeps time the way a real metronome does, but the clicks underneath it are scheduled a fraction of a second ahead on the Web Audio clock rather than fired one at a time from a JavaScript timer — the standard lookahead-scheduler technique that keeps tempo sample-accurate even if the browser tab is busy or briefly throttled. On top of that beat you get the three things a practice metronome actually needs: subdivisions down to sixteenths, a swing control that pushes the offbeat towards the triplet grid, and a trainer that walks the tempo up a few BPM at a time while you play.

Metronome Idle
120BPM

Subdivision and swing

Eighths or triplets only

Subdivision clicks are quieter and higher than the beat, so the pulse stays the loudest thing in the bar. Swing applies to eighths and triplets only, and pushes the offbeat of each pair later — 33% lands it on the triplet grid, 50% on a dotted eighth. The downbeat never moves.

Tempo trainer

Bar

Trainer off — the tempo stays exactly where you put it.

How to use the Metronome

  1. Set a tempo with the number field, the slider, or tap it live with Tap Tempo (tap at least twice at the beat you want).
  2. Choose a time signature — beats per bar and the beat unit — to set how the accent lights group.
  3. Pick a subdivision if you want the inside of the beat filled in: eighths, triplets or sixteenths, clicked quieter and higher than the pulse. On eighths or triplets, the swing slider pushes the offbeat later, from straight through a triplet shuffle at 33% to a dotted-eighth feel at 50%.
  4. To drill a passage up to speed, tick Ramp the tempo and give it a start, a step, a bar count and a ceiling — 80, +4, every 8 bars, stop at 140 — then press Start and play. The tempo climbs on its own and stops at the target.
  5. Change anything while it is running. The next beat picks up the new setting without a stutter.

FAQ

Why not just use setInterval for the beat?
setInterval fires late whenever the browser tab is busy, backgrounded, or the OS deprioritizes it — the errors accumulate and the tempo audibly drifts over a long run. Instead, every click’s exact start time is scheduled on the Web Audio clock a fraction of a second ahead of when it plays, which is immune to that kind of jitter.
Do the beat lights count subdivisions too?
No, and deliberately. Turning on sixteenths does not turn a bar of 4/4 into sixteen beats: the lights, the accented downbeat, the pendulum and the bar counter all keep counting quarter notes, and the extra clicks are simply sounded inside each beat at a lower level. A subdivision that moved the accent every fourth click would be a tempo change wearing a disguise.
What does the swing percentage actually mean?
It is the fraction of one subdivision by which the offbeat is delayed. At 0% a pair of eighths is even. At 33% the second eighth arrives two thirds of the way through the beat — that is the triplet-based shuffle you hear in jazz and blues. At 50% it lands three quarters of the way through, which is a dotted eighth followed by a sixteenth, and the slider’s 66% ceiling is harder still — useful mainly for exaggerating a feel while you are learning it. Note that this is a percentage of the subdivision and not of the beat, so it does not line up with the swing control in a sequencer, where 50% usually means straight. Most recorded swing is far gentler than a full shuffle: on this scale, often only 10 to 25%.
Why can I only swing eighths and triplets?
Because swing is a displacement of the offbeat towards the triplet grid, and that only means something when there is an offbeat to displace. A plain quarter has nothing inside it. Sixteenths as the primary division are already denser than the grid swing would push them towards, so a swing control there would just be smearing the timing rather than producing a recognised feel.
How should I use the tempo trainer?
Set the ceiling to the tempo the music is actually marked at, the start to somewhere you can play the passage cleanly with no mistakes at all, and the step small — 4 BPM is usually enough that you cannot feel the change happen. Eight bars per step is a good default: long enough to settle, short enough that a full run from 80 to 140 takes about five minutes. If you start making mistakes, the tempo you can actually play is the last one you got through cleanly, not the one on the screen.
Can I use time signatures like 6/8 or 7/8?
Yes — set beats-per-bar to the numerator and the beat unit to the denominator (2, 4, 8 or 16); the metronome computes each beat’s real duration from both, so a 6/8 bar at a given tempo ticks at the correct eighth-note speed, not a quarter-note one.
What does the pendulum represent?
It’s a real-time view of the same schedule driving the clicks — its position each frame is computed directly from the current and next scheduled beat times, easing between them the way a physical pendulum decelerates at each turnaround, so what you see always matches what you hear. It swings once per beat whatever the subdivision is set to.
How does tap tempo work?
Each tap is timestamped; once you’ve tapped at least twice, perfecttune averages the intervals between your last several taps and sets the BPM from that average — tap steadily for a few beats for the most accurate result.

Tempo markings and the BPM they mean

Beethoven was the first major composer to publish metronome marks alongside these words, in 1817, and the words had already been in use for well over a century by then. That order matters: the Italian tells you the character and the number tells you the speed, which is why the bands below overlap and why two of them can be true of the same tempo at once. Every band that contains one of the tempo pages on this site links to it.

MarkingSenseBPMTempo pages
Larghissimovery, very slow1–24
Graveslow and solemn25–45
Largobroadly40–6060
Lentoslowly45–6060
Larghettorather broadly60–6660
Adagioslowly, with ease66–7670
Adagiettoa little adagio70–8070, 80
Andanteat a walking pace76–10880, 90, 100
Andantinoslightly quicker than andante80–10880, 90, 100
Moderatomoderately108–120110, 120
Allegrettomoderately quick112–120120
Allegrofast and bright120–156120, 130, 140, 150
Vivacelively156–176160
Prestovery fast168–200180, 200
Prestissimoas fast as it will go200–260200