Skip to content
Burrows Tools

Gamepad Tester

Press a button on your controller and it appears here: every button with its live pressure value, every stick with a live position readout, and a drift test that measures what your sticks report while you are not touching them. Drift is why most people arrive — a stick that wanders on its own eventually walks your character into a wall — so it is measured properly rather than left for you to squint at. Let go of the sticks, run the three-second test, and the page reports the worst reading it saw, where the stick now thinks its centre is, and the deadzone that would swallow the wander. Analog triggers show their whole travel, so a trigger that no longer reaches the top is visible as a number. Where your browser and controller support it, a rumble test drives both motors. Everything is read in your browser: no controller id, button press or stick position leaves your machine.

No gamepad detected — press a button on your controller.

This is the Gamepad API working as designed rather than a fault: a browser refuses to admit a controller exists until it sends input, so that a page cannot fingerprint your hardware in the background. Plug the pad in or pair it, then press any button or pull a trigger and it will appear here immediately.

  • Wired pads are the safest test: they need no pairing and no battery.
  • Over Bluetooth, check the controller is paired to this computer rather than to a console that is still awake and holding it.
  • A PlayStation or Xbox pad in the wrong mode can enumerate as a different device. Xbox pads must be woken with the Xbox button; DualSense pads pair with Create + PS held together.
  • Steam and vendor utilities can capture a controller exclusively. Close them if the pad works elsewhere but not here.
Wired, Bluetooth and browser differences

Wired (USB). The most predictable: the pad enumerates immediately, triggers report their full analog range, and rumble works wherever the browser supports it. Test here first when something looks wrong.

Bluetooth. The same pad can report a different id, a different button order and sometimes a non-standard mapping over Bluetooth than it does over USB, because the operating system driver differs. Rumble is the first thing to disappear — on macOS in particular, most pads expose no vibration actuator over Bluetooth at all.

Browsers. Chromium browsers implement the most of the specification, including dual-rumble. Firefox supports gamepads but its haptics support is limited, and it formats controller ids differently. Safari supports the API and requires a user gesture before it reports pads at all.

Nothing leaves your machine. The controller is read in your browser and the readings are rendered on this page. No id, no button press and no axis value is sent anywhere.

How to use the gamepad tester

  1. Connect the controller by USB or Bluetooth, then press any button — browsers hide gamepads until one sends input.
  2. Check every button and trigger. The bar shows analog pressure rather than just on and off, so a worn trigger shows up as a value that never reaches 1.00.
  3. Let go of both sticks completely and run the drift test. It samples for three seconds and reports the worst reading it saw.
  4. Compare the recommended deadzone with the one your game uses: if the game's is smaller, that stick will move on its own in that game.
  5. Run the rumble test to check both motors, where the browser and controller support vibration.

Frequently asked questions

How do I test my controller for stick drift?
Put the controller down, take your hands off the sticks, and start the drift test. A healthy stick reports a distance from centre under about 0.05 while at rest. Between 0.05 and 0.10 it will still be inside most games' deadzones; past 0.10 it escapes tight competitive deadzones, and past 0.20 it will move your character in almost any game. The page reports the worst reading rather than the average, because the worst reading is what a game's deadzone has to survive.
Why is my controller not detected?
Press a button. Browsers deliberately refuse to admit a gamepad exists until it sends input, so that a page cannot fingerprint your hardware in the background — it is the single most common reason a controller looks invisible. If pressing buttons does nothing, try a USB cable rather than Bluetooth, confirm the pad is paired to this computer rather than to a console that is still awake, and close Steam or any vendor utility that may have claimed the device exclusively.
What is a deadzone and what should mine be?
A deadzone is the distance a stick must travel before a game listens to it, and it exists precisely because sticks do not rest at exactly zero. The recommendation here is a hundredth above your stick's worst resting reading, which is the smallest deadzone that would still ignore the drift. Games that let you set it usually offer 0.05 to 0.30; a stick needing more than that is worn out rather than badly configured.
Does it work over Bluetooth as well as wired?
Both work, but they are not the same device to the browser. Over Bluetooth the same controller can report a different id, a different button order and sometimes a non-standard mapping, because the operating system driver differs. Rumble is the first thing to go missing: on macOS in particular, most pads expose no vibration actuator over Bluetooth at all. When something looks wrong, retest with a USB cable before blaming the controller.
Which browsers support the rumble test?
Chromium browsers — Chrome, Edge, Opera, Arc — implement the dual-rumble effect and are the reliable place to test vibration. Firefox supports gamepads but its haptics support is limited, and Safari exposes no vibration actuator. Buttons, triggers and sticks read correctly in all of them.