Three test modes:
β’ Buttons β checks left/middle/right click and the scroll wheel. The mouse drawing visualizes click distribution: each region heat-maps blueβgreenβcyanβamberβred as you click more. DC false-positives counts how often two clicks fired closer than the threshold (top-right slider) β a working mouse should never produce them at the default 250 ms.
β’ Dragging β hold and drag to draw. If lines break while the button is held, your mouse switch is failing. Interruptions (gaps in mousemove > 50 ms during a held drag) are flagged with red circles on the canvas.
mousemove
β’ Precision β measures polling rate as the median inverse of consecutive mousemove intervals (more robust than a moving average). The sparkline at the bottom shows Hz over time with colored baselines at 125/500/1000/2000 Hz reference rates.
Privacy: All data stays exclusively in your browser. The page makes no network calls (CSP connect-src 'none'). Export creates a local JSON file. Settings (sound, theme, threshold) are stored in localStorage under the mtest: prefix.
connect-src 'none'
localStorage
mtest:
Reset clears all stats across all three modes. Export writes a JSON file including system info, per-test summaries, and the full event log.