Mouse Buttons & Wheel
LEFT 0
MIDDLE 0
RIGHT 0
BACK 0
FORWARD 0
WHEEL ↑/↓ 0/0
THUMB ←/→ 0/0
POLLING RATE
0Hz
DOUBLE CLICK
Detected pairs: 0 Last interval: --
CLICK SPEED
CURSOR PATH
Drag here to trace cursor smoothness

Mouse Tester — Buttons, Scroll, Double-Click and Drift

Use this mouse tester to check the button events, scrolling and cursor movement your browser receives. Press each button, roll the wheel in both directions and try a deliberate double-click. Start with the action that has been bothering you; repeating it is more useful than chasing a perfect score. These readings help reproduce a symptom, but cannot by themselves separate a worn switch from a software problem.

How to test your mouse

Work through the mouse tester in this order. Each step isolates a different failure.

  1. Press every button once. Left, right, wheel click, back and forward on the thumb side, plus the tilt wheel if you have one. Each press highlights its zone and adds one to that counter; a zone that never lights is the finding.
  2. Hold each button for two seconds. The highlight must stay on the whole time; one that blinks off under your finger is a switch losing contact.
  3. Spin the wheel up, then down. Every detent should flash the arrow badge in the direction you turned it.
  4. Double-click the pad ten times and read the detected pairs and last interval.
  5. Drag across the cursor path box in one slow straight sweep, then look at the line.

Two measurements live on their own pages because both need a ruler and a calm hand: counts per inch, which the mouse dpi test derives from real distance against on-screen pixels, and the game-to-game maths, where the sensitivity converter keeps your cm/360° identical across titles. Once you trust a DPI figure, the edpi calculator turns it and your in-game slider into one comparable number.

Buttons, scroll and side buttons

A browser identifies mouse buttons by number, not by name: 0 is left, 1 is the wheel click, 2 is right, 3 is back and 4 is forward. Those counters are the most reliable part of the page, because they come straight from the event, before any driver profile or game binding gets involved. If a button counts here but does nothing in your game, the switch is fine and the problem is a binding, a profile that did not load, or two pieces of software fighting for the button.

Back and forward are the ones most likely to be intercepted before you see them: browsers navigate history with them, macOS delivers them inconsistently, and vendor software can remap them so button 3 or 4 never arrives. Inside the test area this page blocks that navigation so the presses can be counted.

The wheel is two parts in one component, so it fails in two ways. An encoder reads the rotation; an ordinary switch underneath handles the middle click. Either can die while the other works, so "scrolling works, pressing does nothing" points at the switch. For skipped detents and reversed ticks, the scroll wheel test logs every event with its delta and direction, so an intermittent encoder shows up as a pattern rather than a feeling.

Double-click and chatter

Chatter is one physical press that the computer receives as two. The contacts bounce as they close, firmware debounce should swallow that bounce, and when the contacts wear the bounce outlasts the window. The result is a file opening when you meant to select it, or a shot firing twice.

This page separates the two cases by timing. Two clicks on the same button less than 60 ms apart are logged as chatter, because nobody double-clicks that fast on purpose — deliberate ones land between 100 and 300 ms, and the pad counts anything under 400 ms as an intentional pair. A chatter warning after single clicks is close to conclusive. Sane intervals instead mean the mouse is fine and your system's double-click speed is set too slow.

Worn switches usually show up in drag before they show up in clicks, because holding a contact closed is harder than closing it once. If files drop halfway across the desktop, the mouse drag test counts every silent release while the button is still down. The repair is the switch.

Cursor drift

Drift is the pointer moving when your hand is not, or sliding on after you stop. Rule out the candidates in this order.

  • A second input device. On a laptop, a trackpoint or a palm on the touchpad; on a desktop, a controller whose stick has drifted off-centre. Unplug everything but the mouse.
  • The sensor window. A hair, dust or a scuffed lens gives the sensor a false reference, and old optical and laser units wear out. Laser is the more drift-prone of the two.
  • The surface. Glass, gloss, reflective mats and fine repeating patterns all defeat tracking. A cloth pad settles this in seconds.
  • Wireless health. A dying battery, or a receiver tucked behind a metal case, produces jumps that look exactly like drift.

Then use the page two ways. Take your hand off the mouse: the cursor path box should record nothing. Now drag one slow straight line across it. A healthy sensor draws a smooth stroke; a worn one draws a saw edge. If the trace is clean and your aim still feels wrong, the device is not the problem — the mouse accuracy test separates hardware from habit.

What a browser can measure

A browser-based mouse tester reads four things from your mouse, and all four are honest: which button number went down and came up, the timestamp of each event, the wheel delta and its sign, and the pointer position in CSS pixels. Button faults, chatter, dead side buttons, skipped detents and a cursor that moves untouched are all visible in that data. What a browser cannot see is just as clear: no web API exposes your sensor's DPI, the USB report interval, firmware debounce, lift-off distance or battery level.

  • Pixels are not sensor counts. Coordinates arrive at the end of the OS pointer pipeline, so acceleration, display scaling and browser zoom have already rescaled your movement. That is why a DPI measurement needs acceleration off and zoom at 100%.
  • Timestamps are deliberately blunt. Browsers round event times against timing attacks: roughly 100 microseconds in Chrome, about 1 ms in Firefox and Safari. The Hz readout inherits that limit — it counts how fast move events reach the document, not your mouse's USB report rate.
  • Movement events are coalesced. The browser batches pointer moves to one per frame, so raw counts understate what the device sent.
  • Wheel deltas are not standardised. The same notch reports a different number on Windows, macOS and Linux. Compare ticks within one session.

Treat every result as a floor, not a specification: it proves a button, a detent or a switch works at least this well, right now, on this computer.

Frequently asked questions

Why does my mouse randomly double click when I single click?

The switch is almost certainly worn — its contacts bounce as they close and the firmware's debounce window no longer absorbs it, so one press arrives as two. Test it here: two clicks on the same button under 60 ms apart are flagged as chatter, and no human clicks that fast deliberately. If the intervals are 100 ms or more instead, the mouse is fine and your operating system's double-click speed is set too slow. A worn switch is a few dollars to replace.

Why is my mouse cursor drifting on its own?

Something other than your hand is feeding the pointer movement, and there are only four candidates. A second input device — a trackpoint, a palm on the touchpad, a controller with a drifted stick — is the most common. Next is the sensor window: dust, a hair or a scuffed lens gives it a false reference, and optical and laser units do wear out with age. Then the surface, since glass and gloss defeat tracking. Last, a dying wireless battery. Leave the mouse still and watch the cursor path box: a healthy setup records nothing.

Can I find out the DPI of my mouse without the gaming software?

Yes — measure it instead of reading it. Move the mouse a known physical distance along a ruler and compare that to the pixels the cursor travelled; that ratio is your DPI. Windows itself will not tell you, because the registry holds only the pointer speed multiplier, not the sensor's counts per inch. Turn off pointer acceleration, keep the browser at 100% zoom, and average three runs, since a single sweep carries a few percent of error. Vendor software reads the setting directly, but this works when it is closed or unavailable.

Why does my mouse wheel jump in the opposite direction when I scroll?

Dust on the wheel's optical encoder, nine times out of ten. The encoder reads a slotted disc to work out direction, and a particle sitting in the gap makes it misread one step as a reversal. Compressed air blown into the slots either side of the wheel fixes most cases outright. If reversals survive a clean, the encoder itself is failing and needs replacing. Spin the wheel steadily in one direction on the scroll test and watch the event log: a genuine fault logs ticks in the wrong direction, not just missing ones.

Why do my mouse side buttons stop responding in games but work everywhere else?

The switches are fine and something in software is eating the input. Press each side button on this page first: if the back and forward counters increment, the hardware works and the fault is above it. Common causes are a vendor profile that did not load for that game, a macro layer holding the button, in-game bindings that only read some button numbers, and two pieces of mouse software running at once. Reinstalling the mouse driver helps some setups; removing the duplicate software helps more.

My middle click doesn't work but scrolling does — is the mouse broken?

Yes, and specifically the switch under the wheel. Rotation and the middle click are two different mechanisms sharing one part: an encoder reads the spin, while a plain on/off switch sits beneath it for the press. One dies while the other keeps working, so a wheel that scrolls perfectly but never registers button 1 points at that switch. Confirm it here — press the wheel and watch the middle counter. No count means no driver fix will help; the switch needs replacing.