RunTheTests
/

Mouse Polling Rate Test

Find your mouse's real polling rate — not your monitor's refresh rate wearing its name.

Move the pointer here — keep it moving smoothly, in circles, for a few seconds

0 intervals

How this test works

A mouse reports its position at a fixed rate — 125 Hz on most office mice, 1000 Hz and above on gaming ones — but a browser does not deliver those updates as they arrive. It merges them and hands the page at most one pointermove per animation frame, so counting pointermove events measures the display: on a 60 Hz screen a 125 Hz mouse and a 1000 Hz mouse both read as about 60 Hz. That is what most polling-rate pages actually report. getCoalescedEvents() returns the updates that were merged away, each with its own timestamp, and the median interval between those is the real rate. Where the browser does not provide them, this page says so rather than reporting the refresh rate under a different name — which is why your display's refresh rate is shown beside the result for comparison.

What the results mean

Polling rate
How many times per second the mouse reports its position. 125 Hz is the USB default; gaming mice run 500 Hz to 8000 Hz.
Nearest standard rate
Mice are sold at specific rates. A reading within 15% of one is reported as that rate rather than as a raw number.
Coalesced events
The merged-away updates. Without access to these the measurement is impossible, not merely less accurate.
Display refresh
Shown deliberately. A naive polling test returns approximately this number for every mouse ever made.

Common problems and fixes

It says it cannot report the rate
The browser did not expose coalesced pointer events. Chromium-based browsers have supported them for years; try one of those.
The rate is lower than my mouse is set to
This measures what arrived at the page, which the OS or browser can throttle. It is a lower bound on what the mouse is sending, not a contradiction of the mouse's own software.
The reading will not settle
Move continuously and smoothly, in circles, rather than in short bursts. Pauses create long intervals that are gaps rather than polling periods.

Frequently asked questions

Why do other polling rate tests give me 60 Hz?

Because they are measuring your monitor. Browsers coalesce pointer events to one per animation frame, so without getCoalescedEvents() every mouse reads as approximately the display refresh rate. If a test tells you your gaming mouse polls at 60 Hz, that is the bug.

Is a higher polling rate better?

Marginally, and with diminishing returns. Going from 125 Hz to 500 Hz reduces worst-case input delay by about 6 ms; going from 1000 Hz to 8000 Hz saves under 1 ms and costs measurable CPU. Sensor quality matters far more than rate above 500 Hz.

Does polling rate affect accuracy?

No. Rate is how often position is reported; accuracy is the sensor. A 1000 Hz mouse with a poor sensor tracks worse than a 500 Hz mouse with a good one.

More in Device