Click Latency Test: Measure Button Response Time

Measure mouse click latency in your browser. Log the time from physical button press to browser event for each click. No download required.

ZERO UPLOAD · ALL LOCAL
  1. Connect your mouse to a direct motherboard USB port — avoid hubs for accurate readings.
  2. Click "Start Session" and move your mouse continuously inside the tracking zone.
  3. Leaving the tracking zone pauses the measurement; re-entering resumes it automatically.
  4. Read the live metrics: Current Hz, Avg Hz, Max Hz, and Longest Gap.
  5. Click "Stop" to end the session and view the final results card.
  6. Red vertical lines indicate polling dropouts (below 125 Hz) — frequent red lines suggest USB contention or power management issues.

What to look for

  • below 3 ms with low variance

Move your mouse continuously inside the tracking zone to measure your mouse's polling rate. The tool calculates Hz from the time between each PointerEvent, then displays a live rolling chart of stability over time.

Works with any USB or wireless mouse. For best results, use a direct USB port — no hubs. A 1000 Hz mouse should read 900–1050 Hz; a 4000 Hz mouse should read 3600–4200 Hz.

Move your mouse continuously inside this area
Leaving this area will pause the measurement

Current Hz
Avg Hz
Max Hz
Longest Gap

Session Results

Avg Hz
Max Hz
Longest Gap
Samples

Red lines = polling dropout (<125 Hz). Move mouse continuously for an accurate reading.

Click Latency Test: Measure Button Response Time

Click latency is the time between pressing a mouse button and the browser receiving the button-down event, and it determines how consistently your actions translate to in-game responses. Consistent click timing is only half the equation. High click latency means your click registers later than you pressed; inconsistent click latency means the delay varies unpredictably between actions, making timing-dependent skills harder to execute reliably.1

This tool logs individual click latency values for each button press. Click within the tracking zone and see the time from physical press to browser event for each click, alongside the running average and per-button breakdown.

What determines click latency

Click latency has three hardware and software sources. First, the switch type: optical switches register when a light beam is interrupted, avoiding the contact bounce that mechanical switches must filter. Mechanical switches close metal contacts, and that contact can bounce before settling, so firmware or software debounce is needed to avoid false extra clicks.23 Second, the USB polling cycle: a wired 1000 Hz mouse has a 1 ms polling period before the next report slot, so the click is reported in the next available polling interval after the switch fires.4 Third, the OS and browser input stack add scheduling overhead before the event reaches this page. All three combine to produce the value you see in this log.

To isolate each contributor, change one variable at a time. Moving from a hub to a direct motherboard port reduces USB scheduling contention, which can show up as a lower average latency and tighter per-click variance in the log. Reducing the debounce setting in companion software can reduce click latency, but it also raises the risk of double-click events on aged mechanical contacts because debounce exists to filter bounce. The individual log values let you verify whether a setting change reduced both the average and the high-end outliers, not just one of them.

Which variable to change first

Start with the variable that is easiest to reverse: port placement. A direct rear USB-A port removes hub contention without changing switch settings. If the log improves there, keep that path fixed and test debounce separately. This order prevents a debounce change from masking a USB issue. Working through port placement, power management, debounce, and firmware in that sequence ensures each change builds on a stable foundation rather than stacking untested variables on top of each other; if you change debounce first and the log improves, you still cannot tell whether the original problem was debounce or the USB hub you have not tested yet.

Optical vs mechanical click latency

Optical switches are designed to reduce one of the largest mechanical sources of click latency: contact bounce. Because they detect the button state with a light beam instead of metal contacts, optical designs can avoid the debounce delay required by many mechanical switches.3 Mechanical switches are not inherently unusable, but their bounce behavior varies by switch model, age, and firmware debounce setting. Aged mechanical switches can produce more bounce as contacts oxidise with wear, which can create occasional high-latency outliers in the log even when the switch otherwise functions correctly.4 The log view in this tool makes this pattern visible by showing individual click values rather than only averages.

Aging effects on mechanical switch variance

Aged mechanical switches often show increasing outlier frequency before the average latency rises noticeably. As contacts oxidise, bounce patterns become less predictable, and individual click events can occasionally land outside the debounce window. This appears in the log as isolated high-latency results surrounded by otherwise normal values. A small number of outliers per session can be normal for older switches, but tracking the outlier count week over week reveals whether the switch is gradually degrading or still stable. Consistent outliers on most clicks suggest that increasing the debounce window, updating firmware, or replacing the switch should be evaluated.

Troubleshooting high or inconsistent click latency

Start with USB port placement: move to a direct rear motherboard port if you are using a hub or front-panel header. Then check OS power management: disable USB selective suspend in Windows Device Manager, because Windows can suspend an idle USB device until the driver requests the working state again.5 Next, check your mouse's companion software for debounce settings; a very long debounce window can add click latency. Finally, update firmware, which sometimes includes debounce tuning. Consistent latency above your normal baseline after all setup steps points to a software or OS conflict rather than the mouse hardware. Inconsistent values with frequent high outliers on a mechanical mouse suggest switch wear.

Separating configuration problems from hardware faults uses the log view most effectively. A mouse reading high latency on every click with low variance is likely set to a long debounce window; reduce it in companion software and retest. A mouse with a low average but frequent spikes points to USB scheduling interference, OS scheduling delays, or a background process briefly blocking the input stack. Average-only readings conceal the spike pattern that individual log values expose.

Building a repeatable click test

Click 20 times at a steady pace, then repeat the same 20 clicks after one setup change. Keep the button, hand position, USB path, and background apps constant so the comparison isolates the variable you changed. This makes the log more useful than a single average taken from a noisy session. Recording the average, the spread, and the number of double events for each 20-click sample gives you three concrete metrics to compare before and after any change, so you can see whether a debounce adjustment reduced latency, increased double events, or produced no meaningful effect.

Comparing the 20-click blocks across sessions shows whether a fix held or drifted back over time. A debounce reduction that lowers the average this week but lets double events creep up next week is not a clean win, so track both metrics each time. When the average, the spread, and the double-event count from this click latency log breakdown all move the right way after one change, you have a result you can trust and reproduce on demand.

When to use this

Use this test when evaluating a new mouse purchase, after a firmware update, when suspecting switch degradation, or when comparing optical and mechanical switch mice side by side.

Examples

Testing a new optical-switch mouse out of the box

Click 20 times in the tracking zone and note the average and distribution. Optical switches in good condition should cluster below 3 ms with low variance. Consistently high values on a new mouse suggest debounce settings need adjustment.

Diagnosing double-click problems on an older mechanical mouse

Click slowly and deliberately 20 times. If the log shows two events per single physical press, the mechanical switch is developing contact bounce. Increasing debounce threshold is a temporary fix; switch replacement is the permanent solution.

Sources
  1. 1.

    Mozilla Developer Network, "Element: mousedown event," developer.mozilla.org, September 2025. https://developer.mozilla.org/en-US/docs/Web/API/Element/mousedown_event

  2. 2.

    Razer, "Razer Optical Mouse Switches Gen-4," razer.com, accessed June 2026. https://www.razer.com/technology/razer-optical-mouse-switch

  3. 3.

    Analog Devices, "Switch Bounce and Other Dirty Little Secrets," analog.com, September 2000. https://www.analog.com/en/resources/technical-articles/switch-bounce-and-other-dirty-little-secrets.html

  4. 4.

    Microsoft Learn, "_USB_ENDPOINT_DESCRIPTOR (usbspec.h)," learn.microsoft.com, January 2021. https://learn.microsoft.com/en-us/windows-hardware/drivers/ddi/usbspec/ns-usbspec-_usb_endpoint_descriptor

  5. 5.

    Microsoft Learn, "USB Selective Suspend," learn.microsoft.com, accessed June 2026. https://learn.microsoft.com/en-us/windows-hardware/drivers/usbcon/usb-selective-suspend

FAQ