Controller Button TestPress every button.
See which ones respond.
Each button starts untested and lights up the moment it registers. The counter tells you when every detected button has responded.
Checking browser…
One moment.
Controller input is processed locally in your browser and is not uploaded.
max 0%
X +0.000
Y +0.000
X +0.000
Y +0.000
max 0%
Buttons tested
0/ —
Waiting for a controller.
Stick drift
Let go of both sticks and do not touch the controller for 3 seconds.
Left stick
0.000, 0.000Connect a controller to measure.
Right stick
0.000, 0.000Connect a controller to measure.
The dead zone slider only changes this display; raw values are always shown. Controller hardware, browser mapping and calibration can all affect readings, so treat results as a measurement, not a diagnosis. Ratings: under 2% excellent, 2–5% minor, 5–10% moderate, 10%+ significant.
Stick range
Roll each stick slowly around its outer edge.
Left stick
- Left0%
- Right0%
- Up0%
- Down0%
Right stick
- Left0%
- Right0%
- Up0%
- Down0%
A direction counts as reached at 90% travel. Many sticks read slightly past 100% on diagonals; a stick that stops well short in one direction may be worn or obstructed.
Controller check
Waiting for a controller
Results appear here as you test: buttons, both sticks, triggers and vibration.
This summary only reports what the browser observed. It can't detect every hardware fault, and readings depend on the browser, driver and connection.
Vibration
Connect a controller to check vibration support.
Raw input
No controller connected.
How buttons are detected
On every frame, the page asks the browser for the controller's current state. Each button comes back with two values: pressed (true or false) and value (0 to 1). A button counts as tested the first time it reads as pressed.
The counter shows how many browser-testable buttons have responded, for example 12 / 17. The total depends on the controller and browser. On standard-layout controllers the system button (Home, Guide or PS) is listed separately, because the browser often can't see it.
Analog vs. digital controls
Digital buttons — face buttons, bumpers, D-pad, stick clicks, Start/Select — are either on or off. Their value jumps straight from 0 to 1.
Analog controls report how far they're pressed. On most modern controllers these are the two triggers (LT/RT, L2/R2), which read anywhere from 0 to 100%. The meters under the diagram show the live value and mark the deepest press, so you can check that each trigger travels its full range smoothly.
Some controllers, like the Switch Pro Controller, have digital triggers that only report 0% or 100%. The health summary notes when a trigger hit 100% without showing in-between values.
Spotting button problems
- Dead button: never lights up no matter how you press it. Try a firm press on different parts of the button before concluding it's dead.
- Sticky button: stays lit after you let go, or releases late. Watch the button chip in the list — it should turn off the instant you release.
- Flickering / chattering: flashes on and off while held down steadily. This usually points to a worn contact.
- Ghost press: a button lights up without being touched. Check that nothing is resting on the controller.
- Wrong button: pressing one button lights another. Remapping software (Steam Input, DS4Windows, manufacturer apps) is the most common cause.
The browser samples at your screen's refresh rate (usually 60 times a second), so extremely short taps under about 16 ms can occasionally slip between readings. Normal presses are much longer than that.
Frequently asked questions
Why can’t I get all buttons to 100%?
The counter only includes browser-testable buttons. If one of those never registers, try a firmer press and close remapping tools like Steam. The system button (Home, Guide or PS) isn't counted, because the operating system often captures it.
Why does my controller show more buttons than it has?
The standard layout reserves slots for all common buttons. Some browsers include a touchpad click or extra buttons. If one never lights up, it may be a slot your controller doesn't physically have.
Can I test the back paddles on my controller?
Most paddles are remapped to other buttons by the controller itself, so they show up as whatever button they're assigned to. Devices that expose paddles as separate buttons appear in the list with their own index.
How do I reset the button test?
Use Reset on the Buttons tested card to clear just the buttons, or Run test again in the controller check to reset everything.