How the scores work
The clock, the clicks and the limits behind your result.
What a browser can measure
These tests measure received input and elapsed browser time. They do not measure gaming skill, diagnose hardware or compare you with a population. Device, display and browser delay are part of a reaction result.
Timing and input
Elapsed time uses performance.now(), the browser’s monotonic clock. Script-dispatched events and held-key repeats do not count. This cannot identify every hardware or operating-system auto-clicker.
CPS, typing and aim
CPS is accepted clicks divided by the selected seconds. A run with 37 clicks over 5 seconds gives 7.40 CPS. The first click counts; an input at the exact end of the window does not.
Typing WPM uses five characters as a word, including spaces. Gross WPM is characters / 5 / minutes. Correct-character WPM multiplies gross WPM by final-text accuracy. It is not a typing certificate.
Aim accuracy is hits / (hits + misses) × 100. A hit lands inside the displayed circle. Time per hit starts when that target appears, so misses before the hit remain part of that time.
Comparing your runs
Use the same device, input, duration and mode for a useful personal comparison. A new local best says only that this browser saved a better comparable score. Interrupting a timed run discards it.
What the score leaves out
There are no world records, percentiles or average-player bands here. The browser cannot identify your fingers, prove a clicking technique or isolate your mouse’s delay. The aim drill is a flat target field, without game-sensitivity matching.
When a rule changes
Scores saved under an older scoring rule are not mixed with new ones. A personal best only compares runs calculated the same way.
CPS and spacebar pace
A timed window includes its first event and excludes events at the exact end. Total accepted inputs divided by selected seconds gives the rate. Pace bars count fixed one-second bins from the start; peak is the largest bin, not a sliding-window record.
Median gap is the middle sorted interval between inputs. Gap spread is the population standard deviation of those intervals, in milliseconds: the square root of the average squared distance from their mean. Smaller spread means more evenly spaced inputs in this run, not a skill rating. Empty intervals remain unavailable, not zero. Millisecond results are displayed as whole numbers; CSV downloads keep the underlying values.
The normal-click comparison keeps the pace of your fastest normal run at the same duration. A tied best keeps the latest run’s pace. An older best without saved pace still shows its CPS; match or beat it to save the missing comparison.
Reaction attempts
The visual cue changes in an animation frame and timing starts with that update. The browser cannot tell the exact instant the display emits light. The sound clock starts when playback is requested; output latency remains in the measurement.
A set has five valid attempts. Presses before the cue or less than 80 ms after it count as false starts and do not fill a slot. The 80 ms cutoff is a rule for this game, not a claim about human limits. The result shows median, mean, fastest, slowest and population standard deviation. The changing wait and start-light sequence are game rules, not physical benchmarks.
The practice guide is a same-setup recording protocol. It does not claim that repeating these drills causes physiological improvement or transfers to a particular game.
Typing and corrections
WPM uses final typed characters, including spaces, divided by five and by elapsed minutes. Correct WPM multiplies gross WPM by the proportion of correct final character positions. This convention follows the BMJ typing study; its population results are not used as benchmarks here.
Uncorrected mistakes are final mismatched positions. Corrected mistakes count previously mismatched positions removed or replaced while editing. A later correction can bring final-text accuracy to 100%; the separate corrected count retains those earlier mistakes. Missed-word practice uses words with a mismatch during the preceding run.
Aim and key-response drills
A hit is a point within the target radius, using Euclidean distance. Misses remain in the accuracy denominator and the time until that target is hit. Mean time per hit is the arithmetic mean of successful target-response intervals, not total round time divided by hits.
Moving-target positions use an authored sine/cosine path. A keyboard drill focuses each target and measures key response, so it has separate scores. Field resizes and hidden tabs stop an active run.
Pocket arcade rules
Points per press = (1 + spring keys) × (1 + boosters). Points per second = motors × 2 × (1 + boosters). Upgrade price = the starting cost × 1.6 raised to the number already owned, rounded up. Starting costs are 25 for a spring key, 80 for a motor and 150 for a booster. These are original game rules.
Automatic points accrue only while this tab is visible. Fractional earned points remain in the saved balance; the display rounds down to whole points. Reloading restores the balance, not offline income.
The next-upgrade bar uses the cheapest current upgrade price. Points to go is the price minus your balance, rounded up to a whole point, with nothing left to earn once you can afford it.
Source notes
Sources read September 19, 2026: W3C High Resolution Time, WHATWG input trust, W3C Web Audio, NIST measures of location and WHATWG Web Storage.
Examples on the tool pages are our arithmetic scenarios, not measured human results. Durations, thresholds, target sizes, cue timing and upgrade prices are explicit design choices. The text and download notes cover word-list rights.