Method card · Rhythm

Keep the beat.

How closely can you tap along with a metronome, and how well can you hold the tempo once the sound stops?

Go to experiment3 min long1 real first answers

Original study

  1. Repp, B. H. (2005). Sensorimotor synchronization: A review of the tapping literature. Psychonomic Bulletin & Review, 12(6), 969–992. Source
  2. Repp, B. H., & Su, Y.-H. (2013). Sensorimotor synchronization: A review of recent research (2006–2012). Psychonomic Bulletin & Review, 20(3), 403–452. Source
  3. Flach, R. (2005). The transition from synchronization to continuation tapping. Human Movement Science, 24(4), 465–483. Source
  4. Anglada-Tort, M., Harrison, P. M. C., & Jacoby, N. (2022). REPP: A robust cross-platform solution for online sensorimotor synchronization experiments. Behavior Research Methods, 54(5), 2271–2285. Source

Our adaptation

A browser adaptation of the synchronization–continuation task (Repp, 2005). In each round a metronome clicks 12 times (the first 3 are warm-up) and the participant taps with each click; when the sound stops, 12 more taps continue at the same tempo. Five rounds use five tempos (inter-onset intervals of 450, 550, 650, 750, 850 ms; order from the game seed). Clicks are scheduled on the audio clock and taps are timed with the event timestamp; if sound is unavailable, a silent mode flashes a light with each click.

Differences from the original study

  • Audio output and touch detection latency differ between devices; mean asynchrony should not be compared directly with laboratory values.
  • Bluetooth headphones add noticeable latency.

Measured variables

The columns of the open data file. List fields are expanded into numbered columns (for example rt_60, est_3); JSON columns contain only numbers and fixed stimulus names.

ColumnTypeDescription
rJSONRounds: [{"i": inter-onset interval ms, "v": 1 = light only, "t": taps (ms from the first click), "n": matched clicks, "nc": continuation taps, "asyn": mean asynchrony ms, "abs": mean absolute asynchrony, "sda": asynchrony SD, "iti": mean continuation interval ms, "cv": interval variability %, "drift": interval slope, "tempo": tempo deviation %}].
pts_1numberRound score: mean of the synchronization score 10 / (1 + (SD / 40 ms)^1.6) and the continuation score 10 / (1 + ((|tempo %| + 0.5 × CV) / 6)^1.6). (item 1)
pts_2numberRound score: mean of the synchronization score 10 / (1 + (SD / 40 ms)^1.6) and the continuation score 10 / (1 + ((|tempo %| + 0.5 × CV) / 6)^1.6). (item 2)
pts_3numberRound score: mean of the synchronization score 10 / (1 + (SD / 40 ms)^1.6) and the continuation score 10 / (1 + ((|tempo %| + 0.5 × CV) / 6)^1.6). (item 3)
pts_4numberRound score: mean of the synchronization score 10 / (1 + (SD / 40 ms)^1.6) and the continuation score 10 / (1 + ((|tempo %| + 0.5 × CV) / 6)^1.6). (item 4)
pts_5numberRound score: mean of the synchronization score 10 / (1 + (SD / 40 ms)^1.6) and the continuation score 10 / (1 + ((|tempo %| + 0.5 × CV) / 6)^1.6). (item 5)
pointsnumberTotal score (0–50).
visualintegerNumber of rounds played in light mode.
nmanumberMean asynchrony in sound rounds (ms; negative = before the click).
nma_visualnumberMean asynchrony in light rounds (ms).
temponumberMean tempo deviation in continuation (%; negative = speeding up).
driftnumberMean interval slope in continuation.
cvnumberMean interval variability in continuation (%).
latencynumberAudio output latency reported by the browser (ms; empty if not reported).
offsetintegerWhether the audio clock was converted with the output timestamp (1) or an estimate (0).
Columns present in every file (14)
row_idstringRow code. Regenerated at random in every release; it does not identify a person and cannot be matched across releases or experiments.
experimentstringShort name of the experiment (URL slug).
experiment_versionintegerVersion of the answer format. For experiments whose format changed, only the current format is published.
dateYYYY-MM-DD | YYYY-Www | YYYY-MMDay the answer was given (Istanbul time). If fewer than 5 answers share the same day, language and device, it is coarsened to the ISO week, and to the month if that is still too few.
date_precisionday | week | monthPrecision of the date column.
langtr | en | (boş)Interface language. Language recording started in the first week of October 2026; for earlier answers it is known only in experiments whose stimuli depend on the language, and empty otherwise.
devicedesktop | mobile | tablet | (boş)Device class reported by the browser (class only; browser details are neither stored here nor published).
sourcesite | embedWhere the answer came from: the balabs site or the experiment embedded on another site. The embedding site is not published.
modefree | daily | challenge | race | session | (boş)Play mode in scored experiments: free play, daily round, challenge, race room, experiment session. Empty for unscored experiments and for older answers that did not store it.
color_visionnormal | rg | by | contrast | (boş)In color-based experiments, the color vision mode the participant chose: normal, red-green, blue-yellow or high contrast. Stimuli are generated along different axes per mode, so compare within a mode. Empty for other experiments.
first_play1Every row is a participant’s first play of this experiment (always 1). Replays are stored only as leaderboard scores and are not part of the open data.
seen_beforeyes | no | unsure | (boş)Participant’s own report of whether they had seen this experiment or its known answer before (in experiments that ask).
duration_snumberTime from the start of the experiment to submitting the answer, in seconds (measured in the browser, 0.1 s).
play_scorenumberLeaderboard score of the first play (scored experiments; defined on the method card). Empty for unscored experiments.

Exclusion criteria

The server checks that each of the five tempos appears exactly once and that taps are within range; it computes asynchrony, tempo and scores from the tap times itself.

  • Only each participant's first answer to this experiment; replays are not included.
  • Simulated rows, bots, banned and sample accounts are not included.
  • Answers before 3 October 2026 are not included (the first day the open data notice was live).

Scoring

Leaderboard score: total score (0–50); computed from measures unaffected by a device's constant latency (variability and continuation tempo). Higher is better.

Leaderboard measure: rhythm (higher is better). The play_score column in the open data is this score for the first play.

Version notes

  • October 2026

    The interface language (lang) started being stored with each answer; for earlier answers it is known only in experiments whose stimuli depend on the language, and empty otherwise.