Metronome

Share:

A free online metronome with tap tempo, time signatures and subdivisions. The click is scheduled on the audio clock, so it does not drift — and it keeps time when you switch tabs.

RT-FUN-107 · Fun & Misc
Your browser is too old for this tool’s interactive features. Please update to Safari 13.1, Chrome or Edge 80, Firefox 74 or newer.

Metronome

120 BPM
Moderato / Allegro 4/4 · quarter notes
or tap the tempo

Tempo names follow the table in Wittner’s metronome manual (2006). Other charts give different ranges — see how six sources compare.

Space start/stop · ↑↓ ±1 BPM · ←→ ±5 BPM · T tap tempo

📅 Research current as of 15 Oct 2026 · Sources: Wittner Taktell manuals Serie 830/880 (2006); Meinel, Das Regensburger Mälzel-Metronom von 1816 (2023); Grove, A Dictionary of Music and Musicians, 1st ed., Metronome and Andantino; Chrome, Heavy throttling of chained JS timers beginning in Chrome 88
Standards, published formulas, and reference data are revised over time — check against a current authoritative source before relying on these figures.
Advertisement
After tool · AD-W1Responsive

How to Use the Metronome

Set the tempo, or tap it

Drag the slider, nudge it with the buttons, or press Tap in time with the music four or five times and it will read the tempo from your taps. Tapping uses the middle of your taps rather than the average, so one hesitant tap does not drag the answer.

Choose the bar and the subdivision

Beats per bar sets how often the accent lands; the subdivision adds clicks between the beats at two, three or four to a beat. The beats stay louder than the subdivisions so the pulse is still audible underneath.

Press Start, or the space bar

The dots follow the beat, with the accented one on the downbeat. You can change tempo while it runs: nothing sounds at the moment you change it, the next click comes one beat at the new tempo after the last one, and the bar carries on from the current beat rather than restarting.

Switch to your music

The click keeps time in a background tab, so you can leave this tab and go and read your score.

Advertisement
After how-to · AD-W2Responsive

Why a Browser Metronome Is Harder Than It Looks

A metronome has one job, and a web page is unusually badly equipped to do it. The obvious implementation — ask the browser to run a function every so many milliseconds, and play a click each time it fires — puts every click at the mercy of whatever else the page is doing. The failure is not a bug anyone introduced. It is the ordinary behaviour of a browser meeting a task that needs millisecond accuracy.

Two failures, both invisible at first

The first is drift. Browser timers are best-effort: they fire when the main thread is free, which might be a few milliseconds late, or considerably later if something else is happening on the page. If each click is scheduled relative to the previous one, that lateness is added permanently and the error can accumulate over a long session — while three beats in it looks perfect, which is why the flaw survives casual testing. The fix is to compute every click's time from a single fixed starting point, so that late arrivals correct themselves instead of compounding.

The second is background throttling. Chrome documents that a hidden page's timers are checked about once per second, and once per minute after five minutes for chained timers. It also exempts a page that has made a sound in the past 30 seconds, which a playing metronome has, so the documented rules are not the whole story. In our own testing a hidden pane stopped its timer for about twenty seconds, which no documented clamp predicts.

The tempting design plays a click when the timer fires. The correct one never plays anything from a timer at all — it queues clicks on the audio clock and lets the sound card keep time.

What makes this solvable is that browsers expose a second, far better clock. The Web Audio system runs on its own thread and will accept an instruction to play a sound at a precise future moment. So the pump's job changes completely: it stops being the thing that plays the click, and becomes the thing that tops up a queue of clicks already scheduled on the audio clock. This tool queues a quarter of a second ahead while you watch and up to 20 seconds ahead when the page is hidden, and its pump is driven from the audio thread by an AudioWorklet, with a timer only as a fallback.

Tempo words: one maker's table, and how far others differ

The name under the tempo comes from a single published table, the guide values (“Richtwerte”) in Wittner's Taktell metronome manuals, dated 2006. Wittner prints ranges that touch, so a tempo on a shared edge carries both names. Other charts do not agree with it, and none of them is the correct one.

Wittner's guide values, as this tool uses them
TermBPM
Largo40–60
Larghetto60–66
Adagio66–76
Andante76–108
Moderato108–120
Allegro120–168
Presto168–200
Prestissimo200–208
The same three words in six published sources (BPM)
SourceAdagioAndanteModerato
Wittner manual (2006)66–7676–108108–120
Wikipedia, “Tempo”44–6656–108108–120
Dolmetsch Online58–9756–8866–126
LibreTexts, Music Appreciation II55–6573–7786–97
Yousician66–6776–83108–120
Soundbrenner66–7176–79108–111

By our count, read off those six lists on 15 October 2026, the only tempos that are Andante on every one of them are 76 and 77, and no single tempo is Adagio on all six, or Moderato on all six. Dolmetsch adds that some sources put Andante at 76–108 and Moderato at 120–168, and Wikipedia calls its own figures very rough approximations. Some of these lists copy others, so they are six published lists rather than six independent judgements.

What a metronome measures, and what it does not

A number with no note value is not a tempo. Grove's first-edition article on the metronome objected to tempo words printed on the instrument's scale for exactly that reason: the same number means Moderato for a crotchet, Allegro for a minim and Largo for a quaver. Wittner's manual makes the same point the other way round: for a mark given in half notes, each swing of the pendulum is a half note. And the words themselves were never settled. Ebenezer Prout pointed out in Grove that three movements of Mendelssohn's Elijah, marked andante con moto, andante and andantino, all carry the same mark, ♩ = 72, which he called striking proof of the uncertainty in these time-indications.

Limits worth stating

This tool assumes bars of equal beats with the accent on the first. Music organised another way will not be served by an accent on beat one, and the tool does not pretend otherwise. Nor does a metronome mark always have to be obeyed exactly in an exam: ABRSM's piano syllabus for 2025 and 2026 says that “printed editorial suggestions such as fingering, metronome marks, realisation of ornaments, etc. do not need to be strictly observed.” That covers editorial marks, not a composer's own.

Maelzel’s patents, Prout’s Elijah puzzle and the audio clock behind the click

01

Johann Maelzel filed for patents on the metronome in London on 1 June 1815 and Paris on 14 September 1815, after apparently trying to buy the rights to Dietrich Nikolaus Winkel’s design (Meinel, 2023). Scores still mark tempo “MM”, for Maelzel’s Metronome.

02

According to Grove’s first-edition “Metronome” article, a commission found that the graduated scale was the only part of the instrument really originated by Maelzel, and gave judgment in Winkel’s favour.

03

According to Meinel (2023), Maelzel’s own 1815/16 Paris brochure already included a table matching the conventional tempo words to the metronome’s numbers, for composers.

04

Grove called tempo words printed on a metronome’s scale “a new, and utterly useless contrivance”: the same number means Moderato for a crotchet, Allegro for a minim and Largo for a quaver.

05

Ebenezer Prout noted that three movements of Mendelssohn’s Elijah, marked andante con moto, andante and andantino, all carry the same metronome mark, ♩ = 72.

06

Published charts disagree on Andante: Wittner’s manual gives 76–108 BPM, Wikipedia 56–108 and an open music textbook 73–77. Across the six sources compared on this page, only 76 and 77 are Andante on all of them.

07

At the top of this tool’s range, 400 BPM, the clicks are 150 milliseconds apart. At the bottom, 20 BPM, they are three seconds apart.

08

Chrome documents that a hidden page’s timers are checked about once per second, and once per minute after five minutes — but not throttled at all if the page has made a sound in the last 30 seconds.

09

This one does not rely on that exemption. When the page is hidden it queues up to 20 seconds of clicks on the audio clock, and the wake-up that tops the queue up comes from the audio thread rather than a timer.

10

At 60 BPM with sixteenth notes, a metronome emits 240 clicks a minute — four times the tempo you set.

11

Without an accent, 3/4 and 4/4 sound identical. The downbeat is the only thing that makes a time signature audible.

Frequently Asked Questions

  • Yes. Chrome documents that timers in a hidden page are normally checked about once a second (once a minute after five minutes), but exempts a page that has made a sound in the last 30 seconds, which a running metronome has. This tool does not depend on that. In our own testing a hidden pane once stopped its timer for about twenty seconds, so when the page is hidden it queues up to 20 seconds of clicks on the audio clock, and the regular wake-up that tops the queue up comes from an AudioWorklet on the audio thread, not from a timer. A timer is kept only as a fallback for browsers without AudioWorklet.
  • Because each click is placed at an absolute time computed from a fixed starting point — click number n happens at start + n × interval. The tempting alternative is to add one interval to the previous click, which quietly adds however late the browser was to every click after it, so the error can accumulate over a session. The timing tests check the ten-thousandth click, not the third, precisely because the broken version looks fine early on.
  • Nothing sounds at the moment you move the slider. The next click comes one beat at the new tempo after the last click you heard, and the bar carries on counting from where it was, so the accent still lands on the downbeat when it is due. If you speed up so far that the new beat has already passed, it moves on by whole beats at the new tempo rather than squeezing in an extra click.
  • No. Every click is synthesised on the spot as a short sine burst with a decay envelope, so there is no sample to fetch, nothing to 404, and no delay before the first beat. It also keeps the page well inside its size budget.
  • Once the page has loaded, yes — nothing further is fetched, and the click is generated in your browser rather than streamed. There is no network request at any point while it runs.
  • Browsers deliberately block audio until you interact with the page, to stop sites playing sound at you unprompted. That is why the audio engine is created on your first click rather than when the page loads. Press Start, or the space bar, and it begins immediately.
  • From one table: the guide values printed in Wittner's Taktell metronome manuals (2006). Wittner gives touching ranges, so a tempo on a shared edge, such as 76, shows both names, and below 40 or above 208 its table names nothing. Other published charts give different ranges for the same words, sometimes very different ones, so the name is one maker's guide rather than a fact about the music. The comparison table on this page shows how far six sources disagree.
  • Yes — the subdivision setting adds clicks between the beats at two, three or four to a beat, with the beats themselves still sounding louder than the subdivisions so you can hear the pulse underneath. Set 60 BPM with sixteenths and you get 240 clicks a minute grouped in fours.
  • Your tempo, time signature, subdivision and accent setting are kept in your own browser's local storage so they are there next time. Nothing is sent anywhere, there is no account, and clearing your browser data clears them.
  • Twenty beats a minute is a click every three seconds and four hundred is one every 150 milliseconds. Maelzel's scale, as Grove describes it, ran from 40 to 208 beats a minute, and Wittner's tempo table covers the same 40 to 208, so the tool reaches well past both ends of the traditional range.
  • Space starts and stops, the up and down arrows change the tempo by one, the left and right arrows by five, and T taps the tempo. The shortcuts are ignored while you are focused on a control, so the slider's own arrow-key behaviour still works normally.

Method & sources

How it computes

Click n at anchor + n x 60/BPM (divided by the subdivision) on the Web Audio clock, never previous + interval. Queued 0.25 s ahead when visible, up to 20 s when hidden; pumped from an AudioWorklet, timer fallback. A tempo change keeps the bar: next click one new interval after the last sounded. Tempo names from Wittner's 2006 manual table (40-208 BPM). MetronomeKernel, tested.

What this tool implements

  • Clicks scheduled at absolute times on the Web Audio clock (anchor + n x interval), never relative to the previous click; the test suite checks the 10,000th tick.
  • Hidden-page lookahead of 20 s, sized against a measured ~20 s pump stall in a hidden pane (2026-08-04) rather than Chrome's documented once-per-second timer check; the pump runs on the audio thread via an AudioWorklet. Chrome also documents no heavy throttling for a page that has made sound in the past 30 s.
  • Tempo change mid-play: nothing sounds at the change; the next click comes one interval at the new tempo after the last sounded click (or where it was already due, if that has passed) and the bar keeps counting. Corrected 2026-10-15: the page previously restarted the bar on a downbeat at almost every change.
  • Tempo names follow one named table, Wittner's Taktell manual guide values (Largo 40-60 to Prestissimo 200-208); a BPM on a shared endpoint shows both names, and outside 40-208 none. Other published charts differ widely (Andante 56-108 across six sources, shared only at 76-77); the page shows the comparison and calls no range correct.
  • Click synthesised at play time - no audio files.

Sources

Advertisement
Pre-footer · AD-W3 728 × 90