Most input testers show you what your controller is doing right now. That answers almost nothing when the question is why a move did not come out, because by the time you look up the input has gone. This one keeps a running record instead. Every direction and every button lands on a scrolling list with how long you held it and how many frames passed since the last thing you did, written in the same numpad notation fighting games use. It also watches for quarter circles, dragon punches, half circles and full rotations, and tells you when one nearly worked and what was missing from it.
Plug it in or pair it, then press any button on the pad. Browsers keep gamepads hidden until they see a real input, so nothing appears before you do that. If the name still says none detected, press Detect controller.
Either means the tool accepts the stick or the D-pad, whichever you move. Stick and D-pad restrict it to one. Use the restricted settings when you are specifically checking one of them, because mixing the two makes it hard to tell which produced a stray input.
Fighting game notation is written from the point of view of the character, so forward means toward your opponent rather than toward the right of the screen. If you are on the right side, set facing to left and the tool mirrors the numbers for you. Get this wrong and a perfectly good quarter circle forward will read as a quarter circle back.
This only matters for the analog stick. It is how far out the stick has to travel before the tool calls it a direction rather than neutral. Half travel is a sensible default and it is roughly what many games use. Lower it if your inputs are not registering, raise it if neutral positions keep flickering into directions.
Start recording, then input whatever you are trying to understand. A single button. A quarter circle. A combo you keep dropping. The list fills from the top, newest first.
Each row is one state change. The direction number, any buttons held at that moment, how many frames the state lasted, and how many frames passed since the previous entry. Rows tinted orange lasted a single frame, which usually means something was skipped or something fired that you did not intend.
When a recognised motion completes, the banner names it and tells you how many frames it took. If a motion nearly worked, it tells you that too, along with what was missing. That is the most useful feedback on the page.
Copy the log into training notes, or download it. A written record of exactly what your controller sent is far more convincing in a bug report or a support ticket than a description of what you think happened.
If you have ever read a fighting game guide and seen 236P, this is that. Directions are written as numbers laid out like the keypad on the right of a full size keyboard, seen from the point of view of your character.
Five is neutral, which is the stick or pad sitting in the middle. Six is toward your opponent and four is away from them. That is the part people trip over, because the numbers are relative to your character rather than to the screen. On the left side of the screen six points right. On the right side it points left. The facing toggle in this tool handles that switch for you.
Once you have the grid, motions become short strings.
| Written as | Meaning | What your hand does |
|---|---|---|
| 236 | Quarter circle forward | Down, roll to down forward, finish on forward |
| 214 | Quarter circle back | Down, roll to down back, finish on back |
| 623 | Dragon punch | Forward, down, down forward |
| 421 | Reverse dragon punch | Back, down, down back |
| 41236 | Half circle forward | Back, roll along the bottom, finish on forward |
| 63214 | Half circle back | Forward, roll along the bottom, finish on back |
| 236236 | Double quarter circle | Two quarter circles forward without stopping |
| 360 | Full rotation | All the way around in one motion |
The tool recognises all of those. If you prefer plain English while you are learning, switch the direction style to words and the same information appears as up, down forward and so on.
Four pieces of information per row, and each answers a different question.
Which of the nine positions the stick or pad was in for that entry. A row appears whenever this changes or whenever a button state changes, which is the same rule training mode displays use.
What was held at that moment. Note that this is the state, not the press, so a button held across three direction changes appears on all three rows. That is deliberate, because it is what lets you see whether a button was still down when a direction arrived.
How many frames that exact combination lasted before anything changed. This is where execution problems become visible. A diagonal that only lasted one frame during a quarter circle is a diagonal the game may well have missed.
How many frames passed between the previous entry starting and this one starting. For links and combos this is the number that matters, because a two frame link means you have a two frame window and knowing you are consistently three frames late is far more useful than knowing you dropped it.
Fighting games run on a fixed tick and describe everything in those ticks. A move is fifteen frames of startup. A link is three frames. A punish window is six. At sixty frames per second one frame is a shade under seventeen milliseconds, which is why the community counts in frames rather than in time.
The frame reference setting tells the tool which clock to convert to. Sixty is right for the overwhelming majority of fighting games. Thirty suits some older or handheld titles. A hundred and twenty exists for the small number of games that run there and for anybody who just wants finer resolution.
Two things worth internalising once you start reading frame numbers.
Short holds get dropped. Games sample your controller once per frame. A direction that existed for one frame might land on a sample or might fall between two, and that is the difference between a special move coming out and nothing happening. When a motion fails and the log shows a one frame diagonal, you have your answer.
Buffers hide sloppiness, up to a point. Most games accept a motion completed within a window of roughly eight to fifteen frames, and many buffer a button press for a few frames after it arrives. That forgiveness is why an untidy input often still works. It is also why the same untidy input fails under pressure, when your timing is a little worse than it is in training mode.
When you complete a recognised motion the banner names it, shows the notation and reports how many frames it took from first direction to last. Under about twelve frames is brisk, and anything past twenty is slow enough that some games will have stopped listening.
The more valuable messages are the near misses.
You went from down straight to forward without the tool ever seeing down forward. Lenient games accept this. Strict ones do not. If it happens on a D-pad, the pad is struggling to close two contacts at once and the D-pad test has a roll mode built specifically to catch that. If it happens on an analog stick, your thumb is cutting the corner, and the eight-direction accuracy test scores how cleanly you actually deliver each direction.
Your stick returned to the middle partway through. Almost every game treats that as starting over. On a D-pad this usually means your thumb lifted. On a stick it can mean your direction threshold is set too high, so genuine movement is being read as neutral. Try lowering it before assuming it was you.
All the right directions in the right order, just spread over too many frames. This is the most encouraging failure to get, because the shape is correct and only the speed needs work.
This is the part an input display is uniquely good for, because it shows you inputs you never made.
You hold forward, let go, and the log shows a brief four before it settles on five. You did not do that. That is the stick physically overshooting past centre on its way back, and it is the reason dash backs and turnarounds come out when nobody asked for them. The snapback test measures exactly how far past centre your stick travels and how long it stays there.
Set the controller down, leave it alone, and watch. If anything other than five ever appears, you have drift. The stick drift test puts a number on it and turns that number into a deadzone you can use.
You are holding down forward and the log keeps flipping between three and two, or three and six. That is noise rather than movement, and the stick jitter test measures how much your reading wanders while the stick sits still. A common cause is a direction threshold set right on the boundary, so try raising it slightly first.
Press once, get two rows a couple of frames apart. That is a double input, and in a fighting game it burns meter and drops combos. The button test checks every button for that behaviour across the whole pad.
If the log shows a clean motion and the move still does not come out, your controller is not the problem and the delay between input and screen is worth measuring. The latency test covers that, and the polling rate test shows how often your pad reports underneath everything else.
Set the notation to words while you learn the motions, then switch to numbers once you can read them. Guides are written in numbers, so getting comfortable with them opens up most of the useful material out there.
Start recording, hold each direction, roll around the pad, press every button once. Anything you did not do shows up in black and white, which is much harder for a seller to talk around than a vague feeling.
Developers respond better to a log than to a description. Export the CSV, attach it, and the exact sequence and timing of what your controller sent is no longer in dispute.
The gap column gives you frame counts between inputs, which is the same measurement you would otherwise be counting by ear.
Worth being clear that this page is a diagnostic tool rather than an overlay. It is built to be read afterward, not watched during play. If you want a clean on screen display of your inputs while you play or stream, our gamepad viewer is the page built for that job, and it is the better choice for capture software.
This is the most important caveat on the page. A browser reads your controller in step with your display refresh, not in step with a game's internal tick. The tool measures real elapsed time and converts it to frames at the reference rate you chose, which gives you accurate relative timing and reliable comparisons between your own attempts. It is not the same as a frame counter inside a game engine, and you should not treat a reading of three frames as proof that a game would have seen exactly three.
What it is genuinely good for is comparison. Your slow attempt against your fast one, a one frame diagonal against a six frame one, today against last week. Those are all valid.
On a sixty hertz screen you get about one reading every seventeen milliseconds, so a one frame event at sixty frames per second sits right at the edge of what can be seen at all. A faster display genuinely gives you a more detailed log. If your monitor runs at a higher rate, use it for this.
The tool decides your direction by measuring how far the stick has travelled and which of eight sectors it sits in. Games do the same thing with their own thresholds, which will not match yours exactly. If you want to know how accurately your stick lands in each of those sectors, the eight-direction accuracy test measures that directly, and the joystick deadzone test covers how to pick a threshold sensibly.
The labels assume a standard layout. Most controllers follow it, some do not, and third party pads are the usual exception. If a button appears under the wrong name, the controller mapping tool prints the raw index every input is actually arriving on.
The controller is read in the page, the log is built in the page, and the exports are files your own browser writes. No inputs are sent anywhere.
Sign in to your account