What the result actually measures
A keyboard is asked for its state once per polling period, so its key events can only arrive at those instants. The test collects every key event for ten seconds and finds the longest period the gaps between them line up with: 8 ms for 125 Hz, 4 ms for 250 Hz, 2 ms for 500 Hz.
Measurement boundary: Past 500 Hz the browser’s coarsened clock and the operating system’s own timing blur the rhythm, so the result becomes “at least 1000 Hz”. It says “faster than 1000 Hz” only when gaps shorter than a millisecond prove it, and never names 4000 or 8000 Hz.
How to interpret the output
125 or 250 Hz
Common on office and budget keyboards. A press can wait up to 8 or 4 ms before the computer hears it — small, but it adds to every other delay in the chain.
At least 1000 Hz
The board reports every millisecond or faster. That is the useful line for gaming; whether it is 1000 or 8000 Hz is beyond what a browser can see.
Troubleshooting unexpected results
Not enough key events
Use more fingers and keep going for the whole ten seconds; slow typing leaves gaps too long to show a rhythm.
The result changes between runs
Background programs add timing noise. Close other busy tabs and run it again; a slow board gives the same answer every time.
Frequently asked questions
Can a browser measure 8000 Hz keyboards?
No. Browsers coarsen timestamps for privacy and the operating system adds its own timing, so above about 1000 Hz the rhythm blurs. The page says “at least” rather than inventing a number.
Does polling rate matter for a keyboard?
At 125 Hz a press can wait up to 8 ms before it is sent, at 1000 Hz up to 1 ms. For fast games that difference is real but small next to your display and the game itself.
Are my keystrokes stored?
No. Only the timing of key events is used, only during the ten-second sample, and nothing leaves the page.