When a game tells you that you reacted in 247 milliseconds, it is worth knowing exactly what was measured and what was not. This guide covers how the timing figures on this site are produced, what limits their precision, and why they are still meaningful despite those limits.
What is actually timestamped
Two moments. The first is when the prompt is created - the frame on which a target is added to the game and will be drawn. The second is when your input event arrives at the page.
Both use the browser's high-resolution clock, which is monotonic and has sub-millisecond resolution. The reported figure is simply the difference.
Nothing is adjusted, smoothed, curved or compared against anything. If it says 247, the interval between those two events was 247 milliseconds.
What sits inside that interval
Rather more than your biology. The measured figure includes several things that are not you.
- Frame quantisation. The prompt is drawn on the next frame, which at 60Hz adds between 0 and 16.7 milliseconds.
- Display latency. The time between the browser painting and the pixels changing, typically 5 to 20 milliseconds depending on the monitor.
- Your actual visual processing and motor response - the part that is genuinely you.
- Input latency. Key travel, USB polling and event dispatch, typically 5 to 20 milliseconds.
In total, roughly 20 to 55 milliseconds of the reported figure is hardware rather than human. That is why comparing your number against someone else's on different hardware is not very meaningful, and why this site does not offer any way to do so.
Ad space reserved. See README.md to connect an ad unit.
Why it is still useful
Because the hardware component is approximately constant for you. If your setup adds 35 milliseconds, it adds 35 milliseconds to every measurement, which means changes in your figure over time are genuinely changes in you.
That makes the number useful for tracking improvement and useless for comparing against strangers - which is exactly the shape of measurement this site can honestly offer, since it has no accounts and cannot see anyone else's play anyway.
It also means the average across many attempts is more informative than any single one, because frame quantisation alone introduces up to 17 milliseconds of noise per attempt.
How windows are shaped rather than measured
Timing quality across the site uses a triangular window: quality is one minus the absolute error divided by the tolerance, clamped between zero and one.
The tolerance comes from the difficulty preset - about 340 milliseconds on easy, down to 90 on expert. Those numbers are shared across every game, which is why 'medium' feels consistent throughout the library.
Because the error is absolute, early and late are treated identically. Because the falloff is linear, a near miss is worth nearly as much as a perfect hit rather than nothing - which is what makes the games feel fair rather than binary.
Why the number is not adjusted
The figure reported is raw. It would be easy to make it flattering, and there are common ways games do so: subtracting an assumed input latency, discarding the slowest attempts, or curving the display so most players see a good number.
None of that happens here, and the reason is that an adjusted figure is not a measurement. Subtracting an estimated latency means reporting a guess about your hardware alongside a fact about your hands. Discarding outliers makes the number better and makes it stop describing what happened.
The cost of that honesty is the hardware component described above. It is a measure of the whole chain, which is useful for comparing your own sessions on the same setup and not useful for anything else - and saying so is better than quietly making the number look more personal than it is.
Comparing across sessions rather than within one
Because frame quantisation alone adds up to 17 milliseconds of noise per attempt, a single reading tells you very little and a handful tells you a great deal.
The unit that means something is a session average taken warm - after the first few runs, when your timing has settled - under conditions you can reproduce. Compared against another session average on the same machine, that is a genuine measurement of change in you.
Comparing two attempts within a session mostly measures noise, and comparing your best attempt across sessions measures luck. The average moves before the best does, and it moves for reasons you caused.
The frame-rate question
The game loop advances by however much real time has passed since the last frame, so a display running at 144Hz simulates in smaller steps than one at 60Hz. The simulation is the same; the granularity differs.
A higher refresh rate does genuinely reduce frame quantisation - at 144Hz the prompt appears within 7 milliseconds rather than 17. That is a real but modest advantage, and it is smaller than the variation between individual attempts.
The loop clamps elapsed time to 50 milliseconds, so a stalled frame cannot advance the simulation by an arbitrary amount. That protects fairness at low frame rates at the cost of the simulation briefly running slower than real time, which is the correct trade.
Key takeaways
- The reported figure is the raw interval between the prompt being created and your input arriving.
- Roughly 20 to 55 milliseconds of it is frame quantisation, display latency and input latency.
- That hardware component is constant for you, so changes over time are genuinely you.
- Timing quality uses a triangular window with tolerance set by the difficulty preset.
- Early and late score identically because the error is absolute.
- The loop clamps elapsed time at 50 milliseconds so a stalled frame cannot teleport the simulation.
- Nothing is smoothed, curved or corrected for hardware, because an adjusted figure stops being a measurement.
Frequently asked questions
Is the reaction time shown in Blade Reflex accurate?
It is the exact interval between the prompt being created and your input arriving, taken from the browser's high-resolution clock. Nothing is adjusted.
Does my monitor affect my reaction score?
Yes, by roughly 20 to 55 milliseconds of combined frame, display and input latency. That component is constant for you, so tracking your own change over time is still valid.
Does a higher refresh rate help?
Modestly. At 144Hz a prompt appears within about 7 milliseconds rather than 17. That is smaller than the variation between individual attempts.
Why do early and late hits score the same?
Quality is measured as absolute error from the window centre, so the direction of the error does not matter - only its size.
Can I compare my reaction time with other people?
Not meaningfully, and this site offers no way to. Too much of the figure is hardware, and there are no accounts or server storage here anyway.
Is the reported number adjusted to look better?
No. Nothing is smoothed, curved, or corrected for assumed hardware latency, and no attempts are discarded. An adjusted figure would be a guess about your equipment presented alongside a fact about your hands.
What is the right way to compare my own results?
Session averages taken warm on the same machine. A single attempt is mostly frame-quantisation noise, and a best-ever figure is mostly luck - the average is the part that moves for reasons you caused.