A D-pad is not four buttons. It is one plastic cross sitting on a pivot, pressing down on contacts that are physically linked to each other. That single design choice explains almost every D-pad complaint ever made. Diagonals are not sensed, they are two directions held at once. A worn pivot leaks inputs into neighbouring directions. A tired contact drops out halfway through a roll. None of that shows up when you press one direction at a time and watch a light come on, which is exactly what a general button check does. This page tests the pad the way you actually use it, including rolling through the diagonals and watching for inputs that should be mechanically impossible.
All eight states get tracked separately, including the four diagonals that a D-pad has to build from two directions at once.
Everything runs and nothing is prompted. Press whatever you like and watch the pad, the timeline and the log. This is the mode for confirming a suspicion quickly, and for showing somebody else what your controller is doing.
The tool names each of the eight states in turn and waits for you to hold it cleanly. It records how many attempts each one took and flags any extra direction that fired while you were trying. This is the mode that catches a diagonal you cannot reach and a direction that drags a neighbour along with it.
Put your thumb on one arm and roll it all the way around the pad without lifting. The tool watches the order the states arrive in and reports the longest unbroken run. This is the one mode a general button check cannot do at all, and it is the mode that matters most if you play anything with circular motion inputs.
Press and release one direction slowly, fifteen or twenty times. The tool watches for one physical press producing two separate registered inputs. That is the fault behind menu cursors that jump two spaces and characters that dash when you meant to walk.
Underneath almost every D-pad is a single moulded cross sitting on a central pivot, like a see-saw with four ends. Press one arm and that arm goes down. What people forget is that the other three arms are attached to it. Press between two arms and both go down together, which is how you get a diagonal.
That is the whole design, and it has three consequences worth understanding.
Diagonals are not a thing your controller senses. There is no up right contact. There is an up contact and a right contact, and a diagonal is both of them closed at the same time. When somebody says their diagonals do not work, what they actually mean is that two contacts are not closing together reliably.
The directions are mechanically coupled. On a face button, pressing A has no physical relationship to B. On a D-pad, pressing right tilts the whole plate, and if the pivot has worn or the plate sits unevenly, that tilt can brush the up contact too. That is a phantom input, and it is impossible on a set of four independent buttons.
Some combinations should be physically impossible. A see-saw cannot have both ends down at once. Left and right together, or up and down together, should never happen on a working rocker D-pad. If the tool records one, something is genuinely wrong, and the section below explains what.
A few designs use four fully separate switches under a shared cap, and some arcade style pads use a different mechanism again. Those can produce combinations a rocker cannot, which is why the impossible input counter is a strong signal rather than a certainty. If your pad is a separate switch design, treat that counter as information rather than a fault.
Left and right arriving at the same moment has a name in the fighting game world, and a surprising amount of history behind it.
On a rocker D-pad it should never happen, so if it does you are looking at one of three things. A pivot that has cracked or worn enough that the plate no longer rocks properly. A contact that is sticking closed after you release it, so the old direction is still registered when the new one arrives. Or a controller that is not a rocker at all, which is common on arcade sticks, leverless controllers and some third party pads.
The reason this matters beyond diagnostics is that games have to decide what to do when they receive it. Some take the last input. Some take neutral. Some take a fixed priority. Tournament rules around leverless controllers exist entirely because of this question, and the resolution logic is called an SOCD cleaner. On a normal pad you will never think about it. On a faulty one, a stuck contact plus a new input produces exactly this state, and the game does something unpredictable with it.
Practically, if the tool logs an impossible input on a standard rocker pad, check for a sticking direction first. A contact that stays closed for a moment after release is the most common cause, and it will usually show up in the timeline as a lane that stays filled longer than it should.
Press each direction one at a time and almost any D-pad passes. That is the test everybody runs, and it is the test that misses the fault people actually complain about.
Roll your thumb from right, through down right, to down, and a healthy pad gives you three clean states in order. Right on its own. Right and down together. Down on its own. What a worn pad often gives you instead is right, then nothing, then down. The diagonal never closed both contacts at once, so the sequence broke in the middle.
That gap is invisible when you press directions individually, because each direction works perfectly on its own. It only appears in motion, which is why the roll test exists and why a general button test will tell you your D-pad is fine when it is not.
For anybody playing fighting games this is the whole ball game. A quarter circle is three directional states in sequence. A half circle is five. A full rotation is eight. If any one of them drops out, the motion does not read and the move does not come out. Players spend months assuming their execution is bad when the pad is dropping a state every third attempt.
The longest clean roll number is the one to watch. Eight means you got the whole way around without a break. Anything less tells you where it fell apart, and the event log shows you exactly which state went missing.
| What the tool shows | What is happening | What to do |
|---|---|---|
| A direction never lights up | Dead contact. Either the conductive pad has worn through or the membrane underneath has failed. | Open and clean first. If the contact is worn shiny or black, the membrane needs replacing. |
| A direction stays lit after you let go | Sticking contact. Debris or a deformed dome holding the circuit closed. | Cleaning usually fixes this one, and it is worth doing before anything else. |
| Diagonals never register | Two contacts are not closing together. The plate is not rocking far enough into the corner, often from wear at the pivot. | Check whether both individual directions are healthy first. If they are, it is the pivot rather than the contacts. |
| Extra directions fire when you press one | Phantom input. The plate is tilting into a neighbouring contact. | Look for debris under the cross, then check the pivot post for wear or a crack. |
| Rolls break in the middle | The classic worn D-pad. Individually fine, unreliable in motion. | Cleaning helps some. A membrane swap fixes it properly. |
| Double inputs from one press | A contact making and breaking as you press, or a dome that has lost its snap. | Clean the contacts. If it persists, the rubber membrane has lost its shape and needs replacing. |
| Impossible combinations | On a rocker pad this means a stuck contact or a damaged pivot. On a separate switch or leverless design it is normal. | Check the timeline for a lane that stays filled too long, which points at the sticking direction. |
| Nothing registers at all | Usually a mapping problem rather than a fault. Some pads send the D-pad as a hat axis instead of as buttons. | Change the input source in the setup panel, and check the raw values with the controller mapping tool. |
This is the single most common reason somebody tells you a testing site is broken.
Under the standard browser gamepad mapping, the D-pad arrives as four separate buttons, numbered 12 through 15 for up, down, left and right. Plenty of controllers follow that. Plenty do not. Older pads, many generic USB controllers and a lot of arcade sticks report the D-pad as a hat switch instead, which arrives as a single axis carrying one of nine discrete values, one for each direction plus centered.
If a site only reads buttons 12 through 15, a hat based pad looks completely dead. Nothing is wrong with it. The page is looking in the wrong place. This tool reads both, tells you which one your controller is using, and lets you force either if the automatic choice picks wrong.
Worth knowing alongside that: some controllers switch mapping depending on a mode toggle. Third party pads often have a button combination involving Home that flips between XInput and DirectInput, and the D-pad frequently moves from buttons to a hat axis when you do. If your pad reports one way in one game and another way somewhere else, that toggle is usually why. The gamepad viewer is a quick way to watch what changes when you flip it.
Worth being straight about the limits here, because a lot of pages are not.
Real electrical contact bounce happens over microseconds to a couple of milliseconds as the metal makes and breaks contact on the way down. Controller firmware filters that out before anything leaves the device, and even if it did not, this page samples in step with your display refresh, which on a 60Hz screen means one look every sixteen milliseconds or so. Genuine bounce is invisible from here and always will be.
What this test catches is different and more useful. It catches one physical press producing two separate registered inputs far enough apart that a game would act on both. That is the fault users actually experience, the one that makes a menu cursor jump two entries or a character dash when you asked for a step. It is caused by a dome that has lost its snap or a contact that makes, breaks and makes again slowly enough to get through the firmware filter.
So read the double input counter as counting real world symptoms rather than electrical events. If it fires, your controller is producing inputs you did not ask for, whatever the underlying cause turns out to be.
| Reading | Healthy | Getting tired | Worth fixing |
|---|---|---|---|
| Directions reached | all eight | all eight with retries | any state unreachable |
| Longest clean roll | eight states | six or seven | five or fewer |
| Roll breaks | zero | one or two | three or more |
| Double inputs | zero | one across a long session | two or more |
| Impossible combinations | zero on a rocker pad | not applicable | any, on a rocker pad |
| Phantom directions | zero | occasional on diagonals | regular on cardinals |
Two pieces of context. Diagonals are harder than cardinals for everybody, so needing a second attempt on a corner during the drill is about your thumb, not your hardware. And a D-pad that has been played hard for years will usually show its age in the roll test long before any single direction actually dies, which is why the roll number is a better early warning than a press check.
Most D-pad faults are contamination rather than wear. Skin oil, dust and crumbs work under the cross and settle on the contact pads. Opening the controller, wiping the board contacts and the black conductive pads on the rubber membrane with isopropyl alcohol, and letting everything dry properly resolves a large share of dead directions, sticking directions and roll dropouts. The disassembly steps and the safety notes in the controller repair guide apply here too, since it is the same teardown.
The conductive rubber wears out. It is a cheap part, it is available for most common controllers, and swapping it needs no soldering, which makes it one of the few genuinely approachable controller repairs. If cleaning helps for a week and then the fault returns, this is your answer.
Conductive paint and pencil graphite both get suggested online for restoring worn contact pads. They can work briefly. They also shed conductive particles inside the controller, which can cause problems far more annoying than the one you were fixing. Given a replacement membrane costs very little, this is not a trade worth making.
Nothing here is fixable with settings. There is no deadzone for a digital input and no calibration for a contact. Remapping can move a direction to a different physical button as a workaround, and the controller mapping tool will show you what your pad currently sends, but the contact itself either closes or it does not.
If your D-pad is failing and you are not ready to open the controller, the analog stick can cover eight way input in many games. How reliably it does that is worth measuring rather than assuming, and the eight-direction accuracy test scores exactly that, including whether your diagonals land far enough from the boundary to read correctly.
Both can deliver eight directions and they fail in completely different ways, which is worth knowing when you are deciding which one to trust.
A D-pad is digital. A direction is either registered or it is not, so there is no such thing as a slightly wrong angle. What you get instead is a state that either arrives or does not, and the failures are dropouts, phantom inputs and doubles.
An analog stick is continuous, and games slice it into eight wedges. A direction can be delivered at a slightly wrong angle and land near a boundary where a small wobble flips it. The failures are angular error, noise and overshoot rather than dropouts.
So the diagnosis path is different for each. If your D-pad is the problem, this page and the button test cover it. If your stick is the problem, the eight-direction accuracy test measures delivery, the stick jitter test measures stability, and the snapback test catches the wrong inputs that arrive when you let go.
This page reads the controller in step with your display refresh, so a 60Hz screen means one look every sixteen milliseconds or so. Press durations and gaps in the log are accurate to about that, which is plenty for spotting dropouts and doubles but not precise enough to call it timing measurement. If you want to know how often your pad reports underneath that, the polling rate test shows it.
A fast roll can genuinely pass through a diagonal in less than one sample, which produces a break that is the sampling rate rather than your hardware. Roll slowly for the measurement, then roll at normal speed to see whether it still holds up.
A dropped packet looks identical to a dropped contact from up here. Test wired if you can, and if the breaks only appear wirelessly, the connection stability test is the right next page. A pad low on charge also reports less reliably, which the battery health test will confirm.
They catch different things. A pad can pass the direction drill and fail the roll test badly, and that combination is the most common outcome on a controller with some years on it.
This page covers the digital cross. These cover everything around it, and two pages agreeing on a fault is far stronger than one page suggesting it.
How to fix controller drift covers the teardown, cleaning and part replacement steps. The same disassembly gets you to the D-pad membrane.
Away from the controller: keyboard test, mouse test, mic test, frame rate test and refresh rate test.
Sign in to your account