How the numbers work
What this measures, and what it does not
A browser cannot measure absolute reaction time honestly. Display refresh, vsync and keyboard polling add roughly one frame of error that we cannot see or remove. That error is close to constant for you on your setup, so your improvement over time is real — but a millisecond number here is not comparable to anyone else’s hardware.
Concretely: browser timing studies put visual presentation error at roughly one frame — about 16.7 ms — with one to two frames of variability, before you add display scan-out and keyboard polling (1 ms on a 1000 Hz gaming board, 8 ms on a 125 Hz office one). We cannot see or remove that.
So the claim is narrow and true: faster, more consistent, more accurate key execution. Not rank gains. The research on whether isolated mechanical drilling transfers to match performance does not support that, and we are not going to pretend otherwise.
It also means there is no global leaderboard of absolute milliseconds here. At this precision that would substantially be a hardware leaderboard, and you would work that out.
The score
Every number below is computed in the browser and reproducible by hand.
CPM = correct keys × 60000 / elapsed ms
accuracy = correct / (correct + errors)
score = CPM × accuracy²
consistency = 100 × (1 − tanh(c + c³/3 + c⁵/5))
where c = stdDev(gaps) / mean(gaps)Accuracy is squared so that speed bought with mistakes does not pay. Consistency uses the coefficient of variation of your inter-key gaps, so a steady rhythm scores above a fast-then-stalled one.
Errors are classified, not just counted
Your presses are aligned against the target sequence with Damerau-Levenshtein, which separates four things most trainers merge into one:
- Wrong key — you pressed something else.
- Omission — you skipped a key.
- Extra key — you pressed one that was not asked for.
- Order error — you pressed the right keys in the wrong order. Reported separately because it is the actionable one: you press R before E 12% of the time is a fact you can train against.
Your keyboard
League binds abilities to physical key positions, not characters, and so do we — every press is matched on its position, never on the letter it produces. On a Turkish-F board your first ability sits under a cap printed f and Flash is under one printed e; on Dvorak the first ability is the apostrophe key. All of those work correctly here, and the caps on screen show the letters actually printed on yours.
Where the data comes from
Champion, ability, item and summoner spell names come from Riot’s public Data Dragon service, baked in at build time and refreshed weekly. That is also why the interface is translated: Riot has already localized the game vocabulary, so ability and item names appear in your language without us translating a word.