Button Tester

Press every button on your controller to confirm it registers cleanly. This tool counts each press, flags buttons that stay stuck, and tracks which ones you still need to test.

Quick start

  1. 1
    Connect your controller. Plug it in over USB, or pair it over Bluetooth in your device settings first.
  2. 2
    Press every button at least once. Face buttons, bumpers, triggers, D-pad, sticks clicks, Select, Start — work through all of them.
  3. 3
    Watch each card update. A button turns from "Not tested yet" to "OK" the moment it registers a clean press.

Test your buttons

Live status

Checking for a controller…

No controller detected

Connect a controller by USB or Bluetooth, then press any button — most browsers won't notice it until you do.

How to read the results

Status badges

Each card starts as Not tested yet. The first clean press flips it to OK and starts counting. A card flips to Stuck if the browser keeps reporting that button as held down for several seconds straight, which almost never happens from an intentional press.

Press count

Every full press-and-release cycle adds one to the count. A count that climbs by itself with nobody touching the controller points to a button firing on its own.

Live indicator

The small dot on each card lights up orange the instant that exact button is held down, separate from its longer-term status, so you can match a physical press to the right card before judging it.

Reset

"Reset test" clears the counts and statuses for the controller you're currently viewing, so you can run a clean pass after cleaning a button or before testing a different unit.

Connecting by device

Windows & Mac

Plug in over USB, or pair over Bluetooth in your system settings first. Chrome, Edge, and Firefox all support the controller out of the box once it's paired.

Android (phone & tablet)

Pair the controller in your device's Bluetooth settings, then open this page in Chrome. Other Android browsers vary in their support.

iPhone & iPad

Pair an MFi or Bluetooth controller in Settings, then open this page in Safari. iOS has supported the same Gamepad API since version 14.5.

Linux

Plug in over USB or pair over Bluetooth, then use Chrome or Firefox. Some distros need a one-time udev rule for certain Bluetooth controllers to be recognised by the OS at all — if the controller isn't visible at the system level, it won't be visible here either.

Troubleshooting

A button shows Stuck but I'm not touching it

This usually means contamination or a worn spring underneath that button. Power off and unplug the controller, then clear dust and debris from around the button with a short burst of compressed air. If it's still stuck afterward, the contact pad or dome underneath likely needs cleaning or replacing.

A button never reaches OK no matter how hard I press

Check the live indicator dot while pressing — if it never lights up at all, the browser isn't seeing any signal from that button, which points to a broken trace, a torn membrane, or a disconnected switch rather than anything this page can fix from the outside.

Pressing one button seems to trigger another

That's usually called ghosting, and it's most often a contact quality issue. A light clean of the contacts can help; if it persists, the switch or membrane under the affected buttons may need replacing.