Measurement6 min read
RTT

ReactionTimeTest Editorial Team

Research-backed timing methodology, apparatus benchmarks & psychomotor test analysis.

Why Anticipation Is the Only Cheat That Matters

A reaction time test is only worth running if guessing cannot beat reacting.Everything about a trustworthy version of this measurement comes down to preventing a correct answer by predicting the question.

There are other ways to flatter a score — an unusually fast machine, a favourable moment — but anticipation is the one that destroys the meaning of the number entirely. Here is how this site handles it, and the one case it cannot fully close.

The delay is redrawn every attempt

Before each stimulus, the test waits a uniformly distributed integer between 1000 and 3000 ms inclusive. It is not a fixed period with a little jitter; it is a fresh draw across the whole range, every single attempt.

That matters more than it might sound. With a fixed or narrow delay, a practised tester learns the interval within a few attempts — and then the measurement silently becomes a test of anticipation timing. Across a two-second uniform range there is no rhythm to find. Counting, tapping along, or guessing a pattern produces results scattered across the whole range, most of which are too early.

There is also a deliberate implementation detail: the draw takes no calibration input at all. So enabling latency compensation or screen-scale correction provably cannot distort the delay distribution. The guarantee does not depend on a configuration being right.

Pressing early is caught

Any input while the test is still in its waiting state is handled as too early and isnever written to your history. It is not averaged in, not recorded as a zero, not quietly discarded — it is surfaced to you as a failed attempt so you know it happened.

This closes the obvious exploit. Someone trying to beat the test by tapping on a rhythm cannot build a history of lucky taps, because those taps are not successes. In the five-trial mode the trial simply repeats rather than ending the run.

The corner case, stated honestly

There is one gap, and pretending otherwise would undermine the rest of this page. The detector catches presses that arrive before stimulus onset. It does not catch a press that wasintended as a pre-press but landed a few milliseconds after the signal.

A sufficiently practised person can learn to pre-press so precisely that the press coincides with the onset, and it registers as a legitimate very fast result. This is not a bug to be fixed inside the page — the information needed to distinguish it does not exist there. The signal is a colour change; the code knows when it committed that change, not when the pixels changed.

So the honest guidance is behavioural rather than technical: treat a suspiciously fast result as a signal to re-test, not a result to celebrate. A consistent sub-150 ms visual average on a browser test is more likely anticipation than physiology. Our FAQ used to describe very fast results as exceptional; it now says to verify them.

The ready gate closes it properly

Rather than trying to detect anticipation after the fact, the ready gate removes the opportunity. With it enabled, the stimulus does not fire on a timer at all — it waits for you to press a ready button. You therefore cannot be early, because nothing has started yet.

The cost is that the measurement now includes a deliberate decision, which slightly changes what is being tested and adds an extra press to the sequence. For occasional use it is the most rigorous option available in a browser. For comparing your own scores across sessions it is unnecessary, because a consistent anticipatory strategy produces a consistently wrong number, which still tracks.

What the response window adds

After the stimulus, the test waits 2000 ms for a response before recording the attempt as missed. Two things follow:

  • 1.There is a minimum honest response time. Nothing faster than the window opening is possible without pre-pressing.
  • 2.Missing is recorded rather than silently dropped, so an incomplete run is visible instead of quietly improving your average.

A separate 250 ms guard prevents a single attempt from being scored twice by a lingering double-event.

Why the ruler cannot be reverse-engineered

On a real ruler-drop test you catch a falling stick and the catch distance is converted into a time. That gives an attacker a second route to a fabricated result: measure the ruler against a screen ruler and derive the time from the geometry.

Here the arrow points the other way. The on-screen fall is animated by the same high-resolution clock that records you, with a deliberately quadratic ease rather than real gravity. Your score is the elapsed time between onset and your input; the centimetre figure displayed beside it isthen computed from that time using d = ½gt². Pixel position carries no independent information, so there is nothing in the geometry to solve backwards from.

Try it with the rigour options on

Enable the ready gate and latency compensation in the calibration panel, then run five rounds. It is the most defensible configuration this site offers.

All constants quoted are this site’s own, fromsrc/engine/types.ts(1000–3000 ms delay, 2000 ms response window, 250 ms re-arm guard) and implemented insrc/engine/lifecycle.tsand src/engine/modes/ruler.ts. See the methodology page.

FAQ

Anticipation and test validity FAQ

Can you cheat a reaction time test?

Not by anticipating, because the wait is redrawn between 1000 and 3000 ms on every attempt and any press before the signal is caught and discarded. What can still produce an implausibly low result is a well-timed pre-press that lands just after the stimulus onset — that is a genuine edge case, not a gap in the test.

Why is the wait randomised rather than fixed?

A fixed delay is learnable. Within a few attempts you would anticipate it, and the measurement would silently become a test of timing rather than reaction. Randomising every attempt removes the pattern to learn.

What does the too-early detection actually do?

Any input while the test is still waiting is recorded as too early and never committed to your history. In five-trial mode the trial repeats instead of ending the run.

What is the ready gate for?

It inverts the usual flow: instead of a timer, the stimulus waits until you press a ready button. That makes anticipatory pressing impossible by construction, and it is the most rigorous option available here.

Why do some sub-150 ms results still look impossible?

Because a pre-press timed very precisely can land just after onset and register as a legitimate fast result. The too-early detector catches presses before onset, not ones a few milliseconds after. This is why the site recommends re-testing any implausibly low score rather than celebrating it.

Read next

6 min read

Why Practice Improves Your Score, Then Stops

Serial testing data shows a real 13 ms gain that almost entirely arrives in the first two sessions. What that means for discarding your first attempt.

Measure on your own hardware

Reaction Time Test

Difficulty: Easy

How fast do you react to a visual signal?

Start Test

Reaction Speed Test

Difficulty: Medium

Click only the target shape among decoys.

Start Test

Click Speed Test

Difficulty: Easy

Click as fast as you can in 5 seconds.

Start Test

CPS Test

Difficulty: Easy

Measure your clicks per second.

Start Test

Typing Speed Test

Difficulty: Medium

Check your WPM and accuracy.

Start Test

Aim Trainer

Difficulty: Medium

Hit moving targets for 30 seconds.

Start Test