Method card · Number sense

How many dots?.

Can you tell how many dots flashed on the screen before you get a chance to count them?

Go to experiment2 min long2 real first answers

Original study

  1. Jevons, W. S. (1871). The power of numerical discrimination. Nature, 3(67), 281–282. Source
  2. Kaufman, E. L., Lord, M. W., Reese, T. W., & Volkmann, J. (1949). The discrimination of visual number. The American Journal of Psychology, 62(4), 498–525. Source
  3. Trick, L. M., & Pylyshyn, Z. W. (1994). Why are small and large numbers enumerated differently? A limited-capacity preattentive stage in vision. Psychological Review, 101(1), 80–102. Source
  4. Revkin, S. K., Piazza, M., Izard, V., Cohen, L., & Dehaene, S. (2008). Does subitizing reflect numerical estimation? Psychological Science, 19(6), 607–614. Source
  5. Izard, V., & Dehaene, S. (2008). Calibrating the mental number line. Cognition, 106(3), 1221–1247. Source
  6. Kılıç, A., & İnan, A. B. (2022). Response bias in numerosity perception at early judgments and systematic underestimation. Attention, Perception, & Psychophysics, 84(1), 188–204. Source

Our adaptation

An adaptation of the subitizing and numerosity estimation task of Kaufman et al. (1949). After a 500 ms fixation cross the dots are shown for 200 ms and covered by a 300 ms mask; then the number is typed. Round 1 shows 1–4 dots, round 2 5–9 and round 3 15–60 (6 trials each). Dot size and the spread of the cluster vary from trial to trial; feedback is given only at the end of a round.

Differences from the original study

  • 200 ms on screen depends on frames (about 12 frames at 60 Hz) and can deviate by a few milliseconds by device.
  • Response time includes typing time.
  • There are only a few trials per range.

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
scorenumberTotal score (0–18): 1 point for a correct answer on 1–9 dot trials; max(0, 1 − |log2(estimate / truth)|) on 15–60 dot trials.
trialsJSONTrials: [{"n": number of dots shown, "a": answer, "rt": time from mask to answer in ms}].
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 requires at least 6 valid trials (true count 1–200, answer 0–999) and computes the score from the trial records 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: the sum of accuracy points over three rounds (at most 18); higher is better.

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

Version notes

  • October 2026

    This experiment started storing the play mode (free, daily, challenge, race, session) with the answer; the mode column is empty for earlier answers.

  • 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.