A browser metronome's accuracy rests on a single formula: 60 divided by BPM seconds per click, combined with the timing jitter introduced by the browser's scheduler. At 60 BPM the interval is exactly one second, at 120 BPM it is half a second, and at 240 BPM it is one quarter second. Those numbers come from the definition of beats per minute, so the long-term tempo any honest tool reports matches what you typed. What changes between tools is how close each individual click lands to its theoretical time. A backgrounded tab, a busy CPU thread, a power-saving mode, a Bluetooth audio path, or the operating system's own clock can delay a scheduled callback by a few milliseconds. The Online Metronome schedules every click through the Web Audio API, which gives it tighter timing than a JavaScript setInterval timer, but it is still a browser clock, not a sample-accurate studio clock. That distinction between a stable average tempo over many minutes versus exact instantaneous click placement is the whole question behind online metronome accuracy, and it is what tells a musician whether the tool is enough for the work in front of them.

The Math Behind a Browser Metronome
Every metronome, physical or digital, derives its interval from the same arithmetic. One minute holds 60 seconds, and the BPM value tells you how many beats must fit inside that minute, so each interval in seconds is exactly 60 divided by BPM. The Online Metronome implements that division directly. It validates the BPM as a whole number from 30 through 240, divides 60 by it, and schedules each next callback from that result. Because the calculation is the same one a stage metronome or a digital hardware box uses, the average tempo over many minutes will not drift away from your setting.
The table below shows the exact intervals the formula produces for representative BPM values across the tool's full 30–240 range.
| BPM | Interval (seconds) | Clicks in 60 seconds |
|---|---|---|
| 30 | 2.0000 | 30 |
| 40 | 1.5000 | 40 |
| 60 | 1.0000 | 60 |
| 90 | 0.6667 | 90 |
| 120 | 0.5000 | 120 |
| 160 | 0.3750 | 160 |
| 200 | 0.3000 | 200 |
| 240 | 0.2500 | 240 |
These are not measurements; they are direct arithmetic from the formula. The clicks-in-60-seconds column is just 60 divided by the interval. What the table cannot show is jitter, meaning the small variation in where each individual click lands around that ideal time. Browser-side accuracy is where the math gives way to scheduling reality.
What Affects Timing Accuracy in a Browser Tab
A browser is not a real-time operating system. When you ask it to schedule a callback 0.5 seconds from now, the underlying scheduler tries to honor that, but several common conditions push the actual call later.
- Background tabs. Most browsers throttle timers in tabs you are not looking at, so a metronome running while you read a different tab can lose beats or stretch intervals.
- Power-saving modes. Laptops on battery, phones in low-power mode, and some desktop power profiles will also slow timer resolution.
- Busy main threads. If the tab is decoding audio, rendering a complex page, or running heavy JavaScript, the next scheduled callback can wait until the thread is free.
- Bluetooth and wireless audio. The audio path itself adds latency, and that latency is not perfectly stable from one packet to the next.
- Operating-system scheduling. macOS, Windows, Linux, and mobile operating systems all run their own clock discipline that the browser inherits.
- Audio buffer sizes. Smaller buffers mean lower latency but more CPU pressure; larger buffers mean steadier playback but a fixed offset the player cannot shrink.
For most practice work, none of these matter. The tempo stays close enough to the BPM you set that you can lock in a piece, run scales, or rehearse a rhythm exercise. Where it does matter is when you need sample-accurate alignment with another device, such as a DAW running on the same machine, a hardware synth, or a backing track you imported. Those workflows need a shared clock the browser does not provide.
How the Online Metronome Generates Each Click
The Online Metronome runs entirely in the current browser tab. It does not upload audio, request microphone access, or contact a server for sound. Each click is a freshly created oscillator paired with a short gain envelope, scheduled through the Web Audio API's AudioContext. The first beat of each measure plays at 1320 Hz, and the remaining beats play at 880 Hz, which gives the click a built-in accent the ear can lock onto without changing any setting. Those frequencies are descriptive product cues that signal which beat is beat one, and are not a claim about a standardized concert pitch, a note name, a tuning system, or an ideal practice sound.
Gain starts at a conservative 0.2 and decays exponentially to 0.001 over 50 milliseconds; the oscillator stops after 60 milliseconds so old nodes do not accumulate in memory. The visual counter wraps safely across the chosen measure length, so the displayed beat always matches what is sounding. The interval is computed once from the validated BPM, and the next JavaScript callback is scheduled from that interval. Web Audio scheduling, described in the W3C Web Audio API specification, is tighter than a plain setInterval timer, but it is still subject to the same throttling and latency conditions described above. Per the MDN documentation for OscillatorNode, every click is a fresh node that the audio context cleans up automatically when its envelope finishes.
Set Up the Online Metronome for Steady Practice
- Open the Online Metronome in a browser tab that will stay in the foreground during your session.
- Enter a whole tempo between 30 and 240 in the BPM field. Do not add decimals, signs, spaces, or units; untrimmed whole numbers between 30 and 240 are the only values accepted.
- Choose a beats-per-measure value from 1 through 12 that matches the time signature you are practising.
- Press Start. The browser will create or reuse an AudioContext and schedule the first click immediately.
- Listen for the higher pitch on beat one, then let the remaining beats of the measure click at the lower pitch.
- Begin playing. Keep the tab foregrounded and the device volume low at first if you are wearing headphones.
- When you finish, press Stop before leaving the page. Stop closes the audio context, clears the next scheduled click, resets the visual beat counter, and returns the tool to a stopped state.
Editing either value after Start stops playback before the new value takes effect, which keeps the displayed tempo and the active timer from drifting apart.
Verify the Click Speed in 60 Seconds
If you want to know what your browser is actually delivering, run a one-minute count and compare it to a wall clock or phone stopwatch. Use 120 BPM so the math is easy. The interval is 60 divided by 120, which equals 0.5 seconds per click, and 60 divided by 0.5 equals 120 clicks in one minute. Start the metronome, start the stopwatch at the first audible click, and count every click until the stopwatch reads 60.0 seconds. The count tells you the delivered tempo directly: 120 clicks means 120 BPM, 118 clicks means the tool is running roughly 1.7 percent slow, 122 clicks means it is running about 1.7 percent fast.
Run the test in the foreground with nothing else open in the tab for the cleanest reading. Repeat it in a backgrounded tab and you will likely see the count slip because the browser is throttling the timer. That single test, repeated at 60 BPM (one click per second) and again at 180 BPM (one click every 0.333 seconds), gives a practical picture of how your browser, your device, and your audio path handle steady tempo work.
What an Online Metronome Cannot Replace
Online metronomes are honest about what they are. The Online Metronome is suitable for ordinary practice, scales, rhythm exercises, sight-reading, and rough tempo reference. It is not a hearing-protection device, a calibrated sound-pressure source, a medical device, or a clinical timing instrument. It does not claim DAW synchronization, MIDI clock output, tap-tempo analysis, latency calibration, subdivision patterns, swing, polyrhythm, or recording alignment. Background tabs, power-saving modes, busy main threads, Bluetooth latency, browser policies, and operating-system scheduling can all delay an audible click. If your work needs sample-accurate alignment with a DAW timeline, lock to the DAW's built-in click instead. If you only need a steady pulse at a known BPM to practise against, the Online Metronome is a low-friction way to get one without installing software or uploading audio.