Mouse · 7 min read

Mouse Polling Rate: What a Browser Can Measure

Read observed pointer event rate, median intervals and spikes without mistaking browser delivery for a USB hardware certificate.

Reviewed September 27, 2026 · Keymap Labs editorial

A mouse may be configured for 125, 500, 1000, 4000 or 8000 Hz, but a webpage does not connect directly to the USB polling transaction. It receives pointer events after the device, firmware, operating system and browser have processed them. Browsers may combine movement into fewer events, schedule delivery with rendering or expose more detail only through specific APIs and environments.

That means an online polling test measures browser-observed event delivery. This is still useful for comparisons, but it is not a certificate of the device’s firmware rate.

See what this page actually receives

Before the limits are explained, it helps to watch them. Move the mouse inside the box in slow circles for a few seconds.

In a current Chrome or Edge that number should land near your mouse’s setting, because the box unpacks every report the browser merged into a frame and times each one on its own. Where it lands lower, the rest of this guide explains why that is usually the path rather than the mouse.

Run a cleaner sample

Open the Mouse Polling Rate Test, close heavy background tasks and keep the tab visible. Start the five-second sample, then move continuously in smooth circles inside the area. Stopping movement creates real gaps and lowers the observed rate.

Run at least three samples. Keep the same movement area and speed as closely as possible. Compare the observed rate, median event interval, 95th-percentile interval and event count. A single highest reading can look impressive while hiding long gaps; the distribution describes stability better.

At an ideal 1000 Hz, the interval between reports would be about one millisecond, but browser delivery is not ideal or direct. Display refresh, CPU load and event coalescing can all reshape what the page sees.

Use median and percentiles

The average can be distorted by a few long pauses, especially if movement slows near the edge of the test area. Median represents the typical interval more robustly. The 95th percentile helps show whether a meaningful portion of intervals are much longer than usual.

Look for consistency across runs. A stable but lower browser-observed rate may reflect an environment cap. A broad distribution that changes with CPU load or power mode points toward scheduling and system conditions. Large isolated spikes may simply mark a pause in hand movement.

Compare conditions without overclaiming

If the result is unexpectedly low, repeat in another current browser. Connect the mouse directly instead of through an unpowered hub. On a laptop, compare battery and plugged-in power modes. For wireless devices, move the receiver closer and reduce interference. Keep the configured mouse rate unchanged while testing these variables.

Then change the configured rate and repeat. If a 500 Hz and 1000 Hz profile produce clearly different browser distributions under the same conditions, the test is showing a meaningful relative change—even if neither reported number equals the firmware setting exactly.

High-rate devices are the hardest case. Reports that arrive between frames are merged before the page’s handler runs; the test unpacks them, and in Chrome and Edge it listens to raw pointer updates, one event per report, each carrying the time it arrived. What remains is the clock: a page times events to a tenth of a millisecond, so at 8000 Hz, 0.125 ms apart, the count is exact but single intervals are rounded. Read the rate, not the median, at those settings.

Higher is not automatically better

Higher configured rates can reduce the maximum interval between hardware reports, but they also increase CPU and power demand. Practical benefit depends on the complete chain: device, USB controller, CPU, game engine, frame rate and display. An unstable high-rate configuration can be less useful than a stable lower rate.

Use the browser test to identify differences and obvious instability. Use specialized hardware or low-level tools if you need to certify USB report timing. Keymap Labs deliberately labels the result “observed rate” to preserve that boundary.

Report a reproducible issue

Record the mouse model, connection, configured rate, browser, operating system, power mode, three observed medians and whether the movement was continuous. If changing one port or browser changes all three runs, include that comparison.

A useful report describes the method. “My 1000 Hz mouse gets 742 Hz online” is incomplete; the gap may be the browser path. “Three continuous samples in browser A show a narrow 500 Hz distribution while browser B and a device utility show a different result” gives support or engineering a place to begin.