Mouse Polling Rate Test

Move your mouse in quick circles over the test area to estimate its polling rate. The page counts the reports your browser receives each second, which can be fewer than the mouse sends, and shows the rate it looks like, such as 1000 Hz.

Estimated median rateHz

Not measured yet

Current
The latest 100 ms of movement
Average
All reports divided by the moving time
Median
The middle of the 100 ms rates
Reports counted
Moving time
A run ends after 5 s
Pointer type
A touchpad usually shows as Mouse too
Source
Report intervals
IntervalRateShare
about 0.125 ms8000 Hz
about 0.25 ms4000 Hz
about 0.5 ms2000 Hz
about 1 ms1000 Hz
about 2 ms500 Hz
about 4 ms250 Hz
about 8 ms125 Hz
11.3 to 50 ms20 to 88 Hz

An estimate of the reports your browser receives, not the mouse's USB polling rate, and not latency. Grouping by the system or browser and CPU load can make it read low, especially at 4000 and 8000 Hz. Timer precision only blurs Report intervals. The rates are counted over 100 ms stretches of movement, so rounding event times to 1 ms changes them by about 1% at most.

Runs entirely in your browser. Test results, audio and video never leave your device.

How to check your mouse polling rate

  1. Use a mouse. A touchpad is counted too, but its reading is not a mouse polling rate, and touch and pen input are not counted. Close busy apps and tabs first, because a busy computer can lower the count.
  2. Press Start measuring, then move the mouse in quick, steady circles over the black test area. Slow movement sends fewer reports, so keep it moving.
  3. Keep going until the bar fills with 5 s of movement. Pauses and time outside the test area do not count, and switching tabs stops the run.
  4. Read the result: Estimated median rate in Hz, and the line under it, such as Looks like 1000 Hz, or Between 500 and 1000 Hz when the reading is not within 20% of a common rate. Current, Average and Median show the rate three ways.
  5. Check Report intervals: most reports should land in one row, such as about 1 ms for a 1000 Hz mouse. Reports spread over several rows arrived grouped or delayed, or the browser rounded their times.
  6. After changing the polling rate in your mouse maker's app or web configurator, press Measure again to check that the change reached the browser. To test buttons, double-clicks and the scroll wheel, use the Mouse Test.

What is mouse polling rate?

Mouse polling rate is how often a mouse reports its movement and button presses to the computer, measured in hertz (Hz). A 1000 Hz mouse can send a report every 1 ms, and a 125 Hz mouse every 8 ms. Many mice let you choose the rate in the maker's app. A mouse sends reports only when it moves, scrolls or a button changes.

Why a mouse reads below its polling rate

The reading counts the reports that reach the browser, so anything that drops, groups or delays them can make it read low. A 1000 Hz mouse that reads 500 Hz may still be set correctly. Check these, then press Measure again.

  • Slow movement. A mouse sends a report only when it has movement to report, so slow or small movements leave polls empty. Move in quick, steady circles.
  • Grouping by the system or the browser. Reports can be merged before the page sees them, especially at 4000 and 8000 Hz, where the reading may fall well below the setting. A reading near your screen's refresh rate, such as 60 or 144 Hz, suggests the browser is passing on about one report per frame; try another browser.
  • CPU load. A busy computer can lower the count. Other apps, many open tabs and power-saving modes can delay reports, so close them and plug in a laptop.
  • Timer precision. Browsers round event times, to 0.1 ms in Chrome and to 1 ms by default in Firefox and Safari. So at 1000 Hz, Firefox and Safari cannot time the gaps one by one, and at 4000 or 8000 Hz no browser's rounding is fine enough, which blurs Report intervals. The rates are counted over 100 ms stretches, so rounding changes them very little.
  • Wireless receivers. Put the receiver, or dongle, close to the mouse with nothing in between, for example on the desk with a USB extension cable.
  • USB hubs and ports. Plug the mouse or its receiver into a port on the computer itself rather than a hub, dock or front-panel port.
  • Settings and power saving. The mouse may be set to a lower rate than you expect, and some wireless mice lower their rate in a power-saving mode. Check the mouse maker's app.

Common polling rates and report intervals

The time between reports is 1000 ms divided by the polling rate. Report intervals on this page has a row for each of these. Most reports should land in the row for your mouse's setting, unless the browser rounds event times too coarsely for that rate.

Polling rateTime between reports
125 Hz8 ms
250 Hz4 ms
500 Hz2 ms
1000 Hz1 ms
2000 Hz0.5 ms
4000 Hz0.25 ms
8000 Hz0.125 ms

What this test can detect

  • How many mouse reports per second your browser receives, as Current, Average and Median rates in Hz.
  • Which common polling rate, from 125 to 8000 Hz, the reading looks like, or the two rates it falls between.
  • Uneven report timing: Report intervals spread over several rows instead of one, from grouping, delays or the browser rounding event times.
  • Whether a polling rate change in the mouse software reached the browser, when you press Measure again.
  • A receiver, hub or power setting that holds reports back: the reading rises when you move the receiver or change ports.

How it works

The page counts the mouse reports over the test area: pointerrawupdate events where the browser has them, otherwise the reports grouped into each pointer event, listed by getCoalescedEvents(). Gaps over 50 ms are pauses, and a run ends after 5 s of movement.

Current is the rate in the latest 100 ms of movement, Average is all reports over the moving time, and Median is the middle of the 100 ms rates. A median within 20% of a common rate from 125 to 8000 Hz reads Looks like that rate; any other reads Between, Below or Above, with the nearest common rates.

Limitations

  • The reading is an estimate of the reports your browser receives, which can be fewer than the mouse sends over USB or wireless. This page does not read the mouse's settings; your mouse maker's app or web configurator shows them. Grouping by the system or browser and CPU load can make it read low, timer precision blurs Report intervals, and 4000 and 8000 Hz mice may read well below their setting.
  • It is not a latency test: a reading of 1000 Hz says how often reports arrive, not how long each one took to get there.
  • Without pointerrawupdate or getCoalescedEvents(), a browser may pass on movement only about once per screen refresh, so the page says it cannot estimate the rate instead of showing one. Current Chrome, Edge and Firefox have pointerrawupdate, and current Safari has getCoalescedEvents(). The Refresh Rate Test measures the screen rate itself.
  • Where the wireless receiver (dongle) sits, USB hubs and power saving in the mouse or the system can lower the rate. Test with the receiver close to the mouse, in a port on the computer itself.
  • Pointer type shows Mouse, Pen or Touch. A touchpad also shows as Mouse, so use an actual mouse: its count is not a mouse polling rate. Only input over the test area is counted, and touch and pen input are ignored. With several mice connected, the page cannot tell which one sent a report.

Frequently asked questions

How do I change my mouse polling rate?

In the mouse maker's app or web configurator, or with a button or switch on some mice; the mouse settings in Windows and macOS do not usually offer it. Choose the rate, save it to the mouse if the app asks, then press Measure again to check that the change reached the browser.

Is a higher polling rate better?

Up to a point. A higher rate shortens the time between reports, from 8 ms at 125 Hz to 1 ms at 1000 Hz, which can make the pointer move more smoothly. At 4000 and 8000 Hz the computer handles many more reports, which can raise CPU load, and some games and systems may not keep up.

Does this test measure input lag or click latency?

No. The page times the gaps between reports, not how long a movement or click takes to reach the screen. Input lag depends on the mouse, the system, the game and the display together, and measuring it needs a high-speed camera or other external equipment.

Does the mouse polling rate test work on a Mac or in Safari?

Yes, in current Safari, Chrome, Edge and Firefox on a Mac. Safari has no pointerrawupdate, so the page counts the reports grouped into each event with getCoalescedEvents(). Older Safari versions have neither, so the page says it cannot estimate the rate instead of showing a misleading number.