Rhythm, Tempo, Meter, and Practice Timing

Practice a subdivision against a steady pulse

Choose a beat unit and a subdivision count. This tool schedules the main beat and its subdivisions with clear, distinct cues, so you can practice placing eighths, triplets, or sixteenths accurately against a stable pulse.

Play

Stopped

Beat: — / Sub: —

Next decision: Metronome

Want to learn more? Tempo, Meter, Beat Units, and Subdivision

Understand

A triplet subdivides a beat into three even parts; a sixteenth subdivision divides it into four. Both are common but audibly distinct, and mixing them up is one of the most common early rhythm mistakes. There is no performance scoring here: the tool schedules the cues precisely and leaves the judgment of how closely you matched them to you and, ideally, a recording.

Worked example

At any BPM, a sixteenth-note subdivision places four evenly spaced cue positions inside every quarter-note beat, the main beat itself plus three more. A triplet subdivision instead places exactly three evenly spaced positions in the same beat, which is why triplets and sixteenths never line up except at the beat itself.

Method and limitations

Subdivision positions are scheduled as rational offsets inside each beat (beatDurationMs × i / subdivisionCount) against the same AudioContext look-ahead scheduler the Metronome uses, not per-tick JavaScript timers. Very fast tempos with fine subdivisions can approach real browser timing limits; if audio glitches at an extreme setting, try a lower BPM or coarser subdivision first.

Why the cues stay steady under load

A subdivision cue that drifts even slightly defeats the entire point of practicing against it, so every cue here is scheduled ahead of time against the Web Audio clock rather than fired the instant a JavaScript timer happens to fire. That distinction matters most at fast tempos with fine subdivisions, exactly the setting where a per-tick timer would be most likely to lag behind real time under normal browser load.

Next decisions