Gamepad Tester: Check Stick Drift, Triggers, Buttons & Rumble

Full controller diagnostic: buttons, stick drift, triggers, rumble, health certificate.

Gamepad Tester reads a connected controller through the browser's standard Gamepad API, polling it every animation frame rather than at the controller's actual hardware report rate, and runs that stream through dedicated stick, trigger, button, and rumble checks. It can tell you a stick's resting drift is measurable and a trigger's signal froze mid-pull; it cannot certify a controller as defect-free, only flag patterns that look wrong in what the browser reported.

Polling tied to your display, not the controller's own clock

The Gamepad API has no push events for stick or trigger movement, so this tool reads controller state once per animation frame, which runs at your display's refresh rate, and buttons, axes, and timestamps are read from whatever the browser's own gamepad list returns at that instant. That is a meaningfully different clock from the controller's actual internal report rate, so this test cannot stand in for a true hardware-level polling measurement the way a wired-mouse test attempts.

The button map always names the first seventeen button slots using the W3C standard gamepad layout — face buttons, bumpers, triggers, stick clicks, the D-pad, Back and Start, and Home — the order the W3C Gamepad specification defines. The page does not check which mapping the browser declared, and any buttons past those seventeen are not drawn; they only surface by number if one is flagged as stuck.

How to test a gamepad for stick drift, trigger faults and rumble

  1. Connect the controller over USB or Bluetooth, open this page, then press any button or nudge a stick — browsers only hand a gamepad to a page after that first input.
  2. Under Analog stick drift & circularity, click Start for the left stick, roll it slowly around its outer edge a few times, then let go so it rests at center before the eight-second window ends; repeat for the right stick.
  3. Under Trigger hesitation, click Start for LT/L2, squeeze the trigger slowly all the way in and let it out within four seconds, then do the same for RT/R2.
  4. Press every button once and watch the button map; a tile that stays lit for four seconds or longer is marked as possibly stuck.
  5. Run the rumble pattern with this tab in front, then download the CSV log or the diagnostic certificate PNG if you want a record of the results.

What the eight-second stick test is actually measuring

Moving a stick fully around its range for the test's eight-second window records up to sixteen thousand x and y samples. Circularity compares the outer band of those samples, anything past half the observed maximum radius, against their own average distance from center; a perfectly round stick's outer samples cluster tightly around one distance, while a worn or damaged one wanders further from that average.

Resting drift only gets reported from samples where the stick was genuinely near center, inside an eight percent radius, at some point during the test; if it never settled there, the result explicitly reads as not measured rather than guessing from an in-motion sample, which would misrepresent the drift reading either way.

Three different ways a trigger's signal can lie

Pulling a trigger for the four-second trigger test checks three separate anomaly patterns rather than one blanket flag: a non-monotonic pull where the value drops while the overall trend is climbing, a signal plateau where the value freezes for over one hundred fifty milliseconds mid-travel instead of continuing to change, and idle jitter where a resting value wanders with real variance instead of holding at a clean baseline.

The jitter check separates a slow, deliberate pull from actual electrical noise by checking whether consecutive samples mostly move one direction, a ramp, rather than wandering back and forth; a careful slow pull that drifts gradually is not flagged the way genuine sensor noise is.

Stuck buttons and rumble, in one pass

What browser polling cannot tell you

Which controllers get named buttons in the gamepad tester

Gamepad not detected by the browser

Controller readings stay in this browser tab

Stick positions, trigger values and button presses are analyzed inside the tab and are not sent to any server. The CSV log and the certificate image are built on your machine and go nowhere unless you choose to share the downloaded files.

Questions people ask about Gamepad Tester

Why does the stick drift result say not measured instead of giving me a number?
Drift can only be measured from samples where the stick was actually resting near center during the test window; if it stayed in motion the whole time, there is no genuine rest sample to compute drift from. Hold the stick briefly at center partway through the test if you want a drift reading.
Does the rumble test work on every gamepad?
No — it depends on the browser and controller both supporting haptic actuator playback, which is not implemented everywhere. A rumble test error can mean unsupported hardware or an unsupported browser, not necessarily a broken motor, so treat a failure here as inconclusive rather than a defect finding.
How is the stick's circularity error percentage calculated?
The test compares each outer-band sample's distance from center against the average of all outer-band samples, expressed as a percentage deviation. A tight cluster near one consistent radius scores low; samples scattered across a wide range of distances score noticeably higher.
Can this test tell me exactly which part of my controller is failing?
No — it identifies a behavior pattern, like a non-monotonic trigger pull or a high stick circularity error, commonly associated with a particular kind of wear or fault, but it has no way to inspect the physical hardware. Use a flagged pattern as a starting point for cleaning or further diagnosis, not a final verdict.
Why isn't my controller showing up?
Browsers keep a connected gamepad hidden from a page until you press a button or move a stick, so give it an input first. If it still doesn't appear, close Steam, DS4Windows or similar apps, reconnect the cable or re-pair Bluetooth, and try Chrome, Edge or Firefox.
Does this work with PS5 DualSense, Xbox and Switch Pro controllers?
It works with any controller your browser exposes through the Gamepad API. The labels are correct when the browser applies the standard mapping to that pad; with a non-standard pad they can point at the wrong button. Whether a given model gets the standard mapping is decided by your browser and operating system, not by this page.
How can I tell if my controller has stick drift?
Run the stick test and let the stick rest at center for a moment before the eight seconds end. A resting offset under 3% is negligible, 3–8% is usually hidden by game dead zones, 8–15% can cause slow unwanted movement, and 15% or more is classic drift.
Can stick drift be fixed?
Sometimes. Cleaning around the stick base with compressed air, recalibrating in your system or console settings, or raising the dead zone in a game can hide mild drift. Worn stick modules usually need replacing, so check the warranty first; this tool only measures the drift, it cannot correct it.
Does it work on Android or iPhone?
Only if the mobile browser exposes the Gamepad API for your paired controller; the page does not install anything extra. If the browser lacks that API, the page says the Gamepad API is not supported. Mobile browsers were not specifically tested, so treat phone results as a best effort.

Related tools on BrakeTools

Content reviewed 2026-09-27.