| Metric | Value | Copy |
|---|---|---|
| {{ row.label }} | {{ row.value }} |
| Timing guide | Duration | Copy |
|---|---|---|
| {{ row.label }} | {{ row.value }} |
| Tap | Interval | Tap pulse | Reported BPM | Drift | Copy |
|---|---|---|---|---|---|
| {{ row.tap }} | {{ row.interval }} | {{ row.pulse }} | {{ row.reported }} | {{ row.drift }} |
Tempo is the speed of a repeating musical pulse. In written music that speed is commonly expressed as beats per minute, but the beat value still matters. A quarter note at 120 BPM is not the same physical tapping pattern as eighth notes or a dotted-quarter pulse at the same musical pace.
This calculator turns live taps into a quarter-note tempo estimate while keeping track of the pulse you actually tapped. You can tap quarter notes, eighth notes, dotted quarters, or half notes, then let the tool translate that pulse into a quarter-note BPM that is easier to share with other players, a metronome, or production notes.
It does more than show one jumpy number. The newest accepted interval produces an instant BPM, while a rolling window of recent taps produces a steadier reported BPM. The calculator also scores how settled the tapping looks, maps the result to a conventional tempo family, and shows how far each new tap is pulling away from the rolling average.
That makes it useful for quick count-ins, rehearsal click setup, cue logging, and checking whether a groove is actually stabilizing. The timing math, charts, and exports all run in the browser, so the session behaves like a self-contained tap record rather than a server-side analysis workflow.
The core calculation is simple. The tool measures the time between accepted taps, converts that gap into beats per minute, and then translates the result if you were tapping a subdivision or a larger pulse. A quarter-note tap needs no conversion, an eighth-note tap is halved to reach quarter-note tempo, a dotted-quarter tap is multiplied by 1.5, and a half-note tap is doubled.
| Tapped pulse | Factor | Practical effect |
|---|---|---|
| Quarter-note beat | 1.0 | The tapped pulse already matches the reported quarter-note BPM. |
| Eighth-note pulse | 0.5 | Useful when you naturally tap subdivisions and still want the final result expressed as quarter-note tempo. |
| Dotted-quarter pulse | 1.5 | Useful for compound meter, where the felt beat is often a dotted quarter rather than a single quarter note. |
| Half-note pulse | 2.0 | Useful when the large beat is easier to tap than every quarter note. |
The rolling result depends on the stabilization rule you choose. In tap-count mode the calculator averages the most recent accepted tap intervals from a fixed tap window. In seconds mode it averages only the intervals that still fall inside the most recent time slice. Short windows react faster, while longer windows suppress single-tap wobble.
The confidence label is rule-based rather than cosmetic. The tool calculates jitter from the standard deviation of the active window, tracks how wide recent rolling BPM values spread out, and checks how far the newest tap drifted from the rolling average. Those checks decide whether the session still needs more taps, is rough, is usable, or is effectively locked.
| Label | Code-level trigger | What it means in practice |
|---|---|---|
| Need more taps | The session has not yet built enough steady intervals for a reliable rolling read. | Use it only as a live hint, not as a final tempo note. |
| Rough | At least 3 interval records with moderate consistency, but the pulse still wanders enough to show visible drift. | You can hear the neighborhood of the tempo, but another phrase will usually tighten it. |
| Usable | At least 4 interval records, interval variability at or below 3%, recent spread at or below 5 BPM, and latest drift at or below 3 BPM. | The rolling BPM is good enough for many rehearsals and cue notes. |
| Locked | At least 6 interval records, interval variability at or below 1.5%, recent spread at or below 2.5 BPM, and latest drift at or below 1.5 BPM. | The average is tight enough to use as a click-track candidate with more confidence. |
The tempo-family field is a conventional label layered on top of the rolling BPM. This calculator maps the result into Grave, Largo, Larghetto, Adagio, Andante, Moderato, Allegro, Vivace, Presto, or Prestissimo, but those words are descriptive rather than universal measurement standards. Printed sources often overlap or disagree on their exact boundaries, so the BPM itself is still the value to keep.
Start by choosing the pulse you are truly feeling, not the one you think you are supposed to report. If a song naturally lands as dotted-quarter pulses in 6/8, choose that pulse and let the calculator convert it. If you are tapping fast subdivisions because the tempo is brisk, choose eighth-note pulse instead of forcing yourself to tap slower quarter notes inaccurately.
The stabilization window changes what kind of answer you get. A tap-count window is useful when you want each reading to be based on the same amount of recent evidence. A seconds window is useful when the pulse is changing and you want the newest slice of time to dominate. In both cases, a short window is lively and a long window is calmer.
The Advanced controls protect session quality. A long pause starts a new session so an old gap does not contaminate the next reading. The minimum tap-gap filter rejects taps that arrive too quickly to be plausible, which is especially helpful for accidental double taps on a keyboard or trackpad. Optional sound feedback adds a short local click on each accepted tap, but it does not change the math.
Once the session is stable, the best quick decision is usually based on the rolling BPM, confidence label, and drift band together. A strong number with a wide drift band is still telling you that the latest taps were pulling around more than you may want.
Reported BPM is the working tempo. It comes from the rolling window and is the number most people should use for rehearsal notes or metronome entry. Instant BPM is only the last accepted interval. It is useful for spotting abrupt change, but it is not meant to be the calmer final answer. Tap pulse BPM shows the physical pulse you were tapping before any note-value conversion.
The drift chart is easiest to read around zero. Positive drift means the latest tap was faster than the rolling average, so the pulse is momentarily rushing. Negative drift means the latest tap was slower than the rolling average, so the pulse is momentarily dragging. A narrow drift band means new taps are landing close to the established average. A wide drift band means the session is still being tugged around.
The timing guide converts the current rolling BPM into practical durations for 1, 2, 4, 8, and 16 beats. That is useful when you need more than a headline BPM. At 120 BPM, for example, one beat is 500 ms and four beats make a 2.00-second bar in common time. Those values help when you are lining up cue points, click-ins, or short loop lengths.
The session metrics table summarizes the whole state in one place: reported BPM, instant BPM, tap pulse BPM, tempo family, confidence, tap count, window rule, beat length, pulse length, jitter, and drift band. The Recent Tap Ledger shows the latest accepted tap rows for quick inspection, while the JSON export keeps the broader session detail, including inputs, summary fields, recommendations, and the per-tap record list.
Treat the tempo-family word as orientation, not arbitration. If the calculator says Allegro or Andante, that is a useful musical shorthand, but the actual BPM and the stability of the session remain the more dependable information.
If a bandleader taps steady quarter notes at about 120 BPM, the rolling result settles near 120 and the timing guide shows roughly 500 ms for one beat and 2.00 seconds for four beats. That gives a usable click value and a simple bar-length cross-check from the same session.
Suppose the music feels natural as dotted-quarter beats in 6/8 and you tap that pulse at about 90. Because the dotted-quarter factor is 1.5, the calculator reports a quarter-note tempo near 135 BPM while still acknowledging that the felt pulse you tapped was the larger compound beat.
Imagine the rolling value stays close to 100 BPM, but the latest taps keep swinging above and below it. The Live BPM Curve may still look centered, yet the Drift Deviation Map and the drift band will show whether those swings are narrow enough to trust or still wide enough to justify another phrase of tapping.
After a clean run, you can download chart images or chart CSV files, export the metrics, timing guide, or recent tap ledger as CSV or DOCX, and save the structured JSON payload. That makes it easier to hand off a tempo note, keep rehearsal evidence, or compare later sessions against the same beat-length data.
They answer different questions. Instant BPM is the latest interval only. Reported BPM is the rolling average from the active stabilization window, so it changes more slowly and is usually the better final tempo.
Tap the pulse you can keep most evenly. If that is an eighth-note subdivision, a dotted-quarter beat in compound meter, or a half-note pulse, choose that setting and let the calculator translate it to quarter-note tempo.
A positive drift value means the newest tap was faster than the rolling average. A negative drift value means it was slower. Values clustering close to zero show a steadier pulse.
A gap longer than the selected pause threshold starts a new session, and a tap that arrives faster than the minimum tap-gap setting is ignored. Both checks exist to stop accidental timing noise from distorting the read.
The two charts can be saved as PNG, WebP, JPEG, or CSV. Session Metrics, Timing Guide, and Recent Tap Ledger can be copied as CSV, downloaded as CSV, or exported as DOCX. The JSON tab can be copied or downloaded as a structured session file.
The tool does not declare a tool-specific upload or server-processing path. Tap timing, chart rendering, local click feedback, and file exports all run in the browser for the current session.