Skip to main content

Gamepad Tester

Controller Input Display and History

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.

Input Display

Setup

Either
Stick
D-pad
Left
Right
Right
Left
Mirrors forward and back so notation matches your side of the screen.
How far the stick must travel before it counts as a direction. Shown as 0.50.
Controller: none detected
Status: idle
Frames elapsed: 0

Right now

5neutral
No motion detected yet. Try a quarter circle forward, which is down, then down forward, then forward.
entries0
motions0
shortest hold--
average gap--
DirButtonsHeldGap
5waiting for input

Session Summary

total entries--
motions recognised--
one frame inputs--
session length--
Notes about your inputs appear here once you have recorded a few.

Export the log

Step by Step, Start to Finish

Step one, connect and wake the controller

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.

Step two, choose where directions come from

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.

Step three, set your facing

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.

Step four, set the direction threshold

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.

Step five, press record and do something

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.

Step six, read the rows

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.

Step seven, watch the motion banner

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.

Step eight, export if you need to

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.

Numpad Notation, Properly Explained

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.

7up back
8up
9up forward
4back
5neutral
6forward
1down back
2down
3down forward

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 asMeaningWhat your hand does
236Quarter circle forwardDown, roll to down forward, finish on forward
214Quarter circle backDown, roll to down back, finish on back
623Dragon punchForward, down, down forward
421Reverse dragon punchBack, down, down back
41236Half circle forwardBack, roll along the bottom, finish on forward
63214Half circle backForward, roll along the bottom, finish on back
236236Double quarter circleTwo quarter circles forward without stopping
360Full rotationAll 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.

Reading a Row

Four pieces of information per row, and each answers a different question.

Direction

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.

Buttons

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.

Held

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.

Gap

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.

Frames, and Why Everything Is Counted in Them

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.

What the Motion Banner Is Telling You

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.

A diagonal was skipped

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.

The motion passed through neutral

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.

The motion was too slow

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.

Telling Your Execution Apart From Your Hardware

This is the part an input display is uniquely good for, because it shows you inputs you never made.

A reverse direction right after you release

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.

A direction appearing while your hands are off

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.

Directions flickering while you hold one steady

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.

One button producing two entries

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.

Everything correct but nothing happening in game

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.

Other Things This Is Useful For

Learning a new character

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.

Checking a used controller before you buy

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.

Writing a bug report

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.

Speedrun and combo timing

The gap column gives you frame counts between inputs, which is the same measurement you would otherwise be counting by ear.

Streaming overlays

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.

Method and Honest Limits

Frames here are converted, not counted

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.

A 60Hz display limits resolution

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.

Direction detection is a threshold, not magic

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.

Button numbering can vary

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.

Nothing leaves your device

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.

Questions People Actually Ask

Why is my quarter circle forward showing as 214?
Your facing is set the wrong way. Notation is written from the character's point of view, so on the right side of the screen forward points left. Flip the facing toggle and the numbers correct themselves.
What counts as a good motion speed?
Under twelve frames from first direction to last is comfortable for most games. Past twenty and some titles will have stopped listening. The shape being correct matters more than raw speed, though, so fix skipped diagonals before you chase a faster hand.
My directions keep flickering between two numbers.
You are sitting on the boundary between two sectors. Raise the direction threshold slightly. If it still flickers with the stick held firmly, that is noise rather than position, and a jitter measurement will tell you how much.
Why do rows appear when I only pressed a button?
Because a row is a state change, not just a direction change. Pressing or releasing a button changes the state, so it earns a row with whatever direction was active at the time. That pairing is exactly what you need for checking whether a button landed on the right direction.
Can I use this while playing a game?
Not usefully. Browsers stop sampling gamepads when the tab loses focus, so it cannot record in the background. Use it in training situations and for diagnosis, or use the gamepad viewer if you want something visible on screen while you play.
Does it work with a fight stick or a leverless controller?
Yes, as long as your browser sees it as a gamepad. Set the direction source to D-pad for most sticks, since that is usually where their directions arrive. Leverless controllers can produce direction combinations a rocker cannot, and those will show up in the log as they happen.
Why does the log show one frame inputs I did not make?
Usually one of three things. A stick passing through a sector on its way somewhere else, which is normal. A stick overshooting past centre after a release, which is snapback. Or a contact bouncing, which is a double input. The section on telling execution apart from hardware covers how to work out which.
Is the history limited?
It keeps the most recent few hundred entries so the page stays responsive. Export before you clear if you want to keep a long session.
Next time a move does not come out, do not guess. Record it three times and read the diagonals. The answer is almost always sitting in the held column.