gizmobench

Rhythm Trainer

Read a seeded rhythm in 2/4 to 5/4, built from quarter notes, eighth notes, eighth-note triplets or sixteenth notes at 40 to 200 BPM. After a count-in, tap each note on the pad or with the Space bar, with or without metronome clicks, and the trainer times every tap against the browser's audio clock. Each note gets its target time, your tap and a signed error in milliseconds, with missing notes and extra taps listed separately, a timing-error chart and a score out of 1000. Listen plays the pattern first, optional latency calibration adjusts practice results, and a fixed 16-beat challenge can be shared as a link so someone else can try the same pattern.

PatternNo pattern open

Preparing a pattern.

Settings2/4 to 5/4 · 40 to 200 BPM · 1 to 8 bars

Meter, subdivision, tempo and length apply to the next pattern you generate, and the same settings and seed always rebuild the same pattern. The metronome switch applies to the next run. The count-in is one bar (two bars in 2/4) and always clicks.

Latency calibration (optional)

Tap once with each of eight clicks after a four-click count-in. The median offset mixes audio output delay, touch or key delay and your own habit of anticipating, and cannot separate them. It only adjusts practice runs; challenge scores never use it.

Preparing a pattern.

Session scores

Completed runs appear here with their scores, newest first, and stay in this browser. Up to 20 are kept.

  • Beat length120 BPM
    At 120 BPM a quarter-note beat lasts 500 ms, so count-in and metronome clicks are 500 ms apart and an off-beat eighth note lands 250 ms after its beat.
  • Signed error+50 ms
    A note due 500 ms after the count-in, tapped at 550 ms, is 50 ms late: +50 ms. In the challenge it earns 0.75 of that note.
  • Missing and extraone tap per note
    Taps are taken in time order and each claims the earliest unclaimed note within the window. A note nobody claims is missing; a tap that finds no note is extra and costs 10 points.

Common questions

How does the rhythm trainer time my taps?
Every count-in click, metronome click and played note is queued on the browser's audio clock before the run starts, so page timers never decide when a sound plays. Each tap keeps its own event timestamp, which is converted onto the same clock using the output timestamp the browser reports, or, when that is unavailable, the current audio time minus the latency the browser reports. If the browser reports no latency, none is subtracted, and calibration can measure it for practice runs. The error is your tap time minus the note's time: positive is late, negative is early. At 120 BPM a quarter-note beat lasts 500 ms, so a tap 550 ms after the count-in against a note due at 500 ms reads +50 ms.
What counts as a hit, a missing note or an extra tap?
Taps are taken in time order, and each one claims the earliest unclaimed note within the timing window. The window is 200 ms either side of each note in the challenge; in practice it is half the shortest gap between two notes of that pattern, at most 200 ms. A matched note earns 1 minus the size of its error divided by the window, a note nobody claims is missing and earns nothing, and a tap that finds no note is extra. The score is 1000 times the average note credit minus 10 per extra tap, rounded and never below 0. Taps during the count-in, before the first window opens, are counted separately and not scored.
Why calibrate latency, and what does it change?
Speakers, wireless headphones, touchscreens and keyboards add delay that the browser cannot always see. Calibration plays four count-in clicks and then eight clicks at 100 BPM; tap once with each of the eight. If at least six taps land within 250 ms of their click, with no more than two extra taps, the median offset is kept and practice results subtract it while the Subtract option is on. The offset mixes device delay with your own habit of tapping early or late, and cannot tell them apart. Challenge runs never apply it, so shared scores use no calibration offset.
What settings can I change?
Meter: 2/4, 3/4, 4/4 or 5/4. Subdivision: quarter notes, eighth notes, eighth-note triplets or sixteenth notes. Tempo: any whole number from 40 to 200 BPM. Length: 1 to 8 bars, and every bar has at least one note. The metronome can click through practice runs or stay silent after the count-in, which is one bar (two bars in 2/4). The same settings and seed always rebuild the same pattern, and Copy pattern settings gives you a line with the meter, subdivision, tempo, length and seed to reuse later.
How does a rhythm challenge link work?
New challenge pattern makes a fixed 16-beat pattern in 4/4 at 120 BPM. After a 4-beat count-in, each beat has one note, either on the beat or an eighth note (250 ms) later. The metronome clicks every beat and the pattern itself does not play. After a fresh run you can copy the challenge link, share it or download a result card. The recipient sees your self-reported score and the rules and presses Start same challenge, then Start run; nothing starts by itself. After their run the page shows both scores, the signed difference and a new link carrying their score. Listening first, replays, restored patterns and patterns this browser has already played or heard are practice. Besides the tool name, the link holds only the seed, the 16-beat setting and the score.
What is saved in my browser?
Settings you change, your calibration, your last 20 completed runs with their scores, and up to 1,024 challenge patterns this browser has already played or heard, all under one local storage key. Taps and timings are not sent anywhere. Practice again reopens a past pattern as practice. A run in progress is never restored: Stop, Escape, hiding the page or leaving it stops every queued sound and discards the incomplete run.
Can I use it with a keyboard or on a phone?
Yes. Tap the large pad with a finger or mouse, or press Space anywhere outside a text field; Enter on the focused pad also taps, and Escape stops a run. The notation has a text version, the result table lists every note with its target, tap and error, and the chart has a text summary. Buttons and fields are at least 44 pixels tall on narrow screens, and with reduced motion set the tap flash is turned off.

Taps are mapped onto the browser's audio clock using any output delay the browser reports; delay it does not report, and your touch or key delay, stay in every error. Optional calibration estimates that remaining delay but cannot separate it from your own timing. Scores describe timing on these exercises, not musical aptitude.