Gamepad Tester

Is that button sticky? Is your stick drifting? This free gamepad tester shows every button, trigger, and analog stick on your controller live — press something and watch it light up. It includes a stick-drift monitor, a vibration test, and a timestamped input log, all in one page instead of split across several. Built on the browser\'s Gamepad API, 100% client-side — nothing is uploaded.

No gamepad detected

  1. Connect your controller via USB or Bluetooth.
  2. Press any button on the controller (browsers require this first).
  3. Click anywhere on this page, then press a button again.

Desktop Chrome, Edge, or Firefox recommended.

100% client-side — controller data never leaves your browser.

What the Gamepad API is

The Gamepad API is a built-in browser interface that lets web pages read connected game controllers — buttons, analog triggers, thumbsticks, and on some pads, vibration motors. No drivers to install, no plugins: if the operating system recognizes the controller, the browser can expose it. This page polls that interface about 60 times per second and visualizes everything it reports.

The standard layout most controllers follow maps 17 buttons (indices 0–16): face buttons, bumpers, triggers, back/select, start, stick clicks, and the D-pad — plus 4 axes for the two thumbsticks. Extra buttons beyond 17 (paddles, touchpads) appear with higher indices when the controller reports them.

How to connect your controller

  1. USB: plug the cable in — most Xbox, PlayStation, and third-party controllers are recognized instantly.
  2. Bluetooth: put the controller in pairing mode and pair it in your OS Bluetooth settings first.
  3. Wake the API: press any button on the controller. Browsers deliberately hide gamepads until you interact with one.
  4. Test: press buttons and move sticks — they light up here in real time.

What drift is and how to spot it

Analog sticks center themselves with a spring and measure position with a sensor. Over time the sensor wears or collects dust, and the "center" starts reporting as slightly off — your character walks left in menus, your aim creeps in shooters. That\'s stick drift, and it\'s the most common controller hardware failure.

To check: set the controller down, don\'t touch the sticks, and watch the drift monitor. Healthy sticks sit within about ±0.05 of zero. Readings consistently beyond ±0.08–0.10 on an untouched stick mean the sensor isn\'t centering — mild cases can sometimes be helped by recalibrating in the OS or console settings; severe drift usually means cleaning or replacing the stick module.

Reading the results

  • Buttons: each tile shows its index and live value. Digital buttons flip between 0 and 1; analog triggers (usually L2/R2) sweep 0.00 → 1.00 as you squeeze.
  • Axes: each bar shows the stick position from −1.00 to +1.00 with the numeric value beside it. The two sticks are normally axes 0/1 (left) and 2/3 (right).
  • Stuck inputs: a button that stays lit when released, or a trigger that never reaches 0.00, points to a worn or dirty switch.
  • Dead zones: if small stick movements near center don\'t register at all, that\'s the controller\'s (or game\'s) dead zone filtering noise — normal, not drift.

Frequently asked questions

How do I connect my controller to this tester?
Plug it in with USB or pair it over Bluetooth, then press any button on the controller. Browsers only expose a gamepad to web pages after you've pressed a button on it — that's a privacy rule, not a bug. The controller should appear in the list within a second.
What is stick drift and how do I spot it?
Stick drift is when an analog stick reports movement even though you're not touching it — caused by worn or dirty potentiometers inside the stick module. On this tester, watch the axis bars and the drift monitor with your hands off the controller: any axis sitting away from 0.00 (beyond about ±0.08) or a growing "max deviation" reading means the stick isn't centering properly.
Which browsers support the Gamepad API?
Chrome, Edge, Firefox, Opera, and Samsung Internet support it well on desktop; Safari added support in recent versions. Mobile browser support is patchy — for reliable results, use a desktop browser. If nothing is detected, try a different browser before assuming the controller is broken.
Why do some buttons show a value instead of just on/off?
Those are analog inputs — typically the L2/R2 triggers. They report a value from 0.00 (released) to 1.00 (fully pressed), so you can see exactly how far a trigger is pulled. Digital buttons are simply pressed or not pressed.
My controller is connected but nothing lights up — why?
Three usual causes: (1) you haven't pressed a button yet — press any button to wake the API; (2) another tab or app has exclusive access to the controller; (3) the browser needs the page focused — click anywhere on the page first, then press a controller button.
Does the vibration test work on all controllers?
Only controllers whose browser driver exposes a vibration actuator — most commonly Xbox One/Series and some third-party pads in Chrome/Edge. PlayStation controllers and many others don't expose rumble to the web API, so the tester will tell you vibration isn't available rather than fail silently.
Is any of my controller data uploaded?
No. The Gamepad API runs entirely inside your browser — button states, axis values, and your controller's ID string never leave your device. There's no account, no analytics on your inputs, nothing to opt out of.