The test
Run the controller test
Choose the profile that most closely matches your gamepad, then use the live workspace to check every control in a consistent order.
Use this controller test to verify that a connected gamepad is visible to your browser and that its buttons, sticks, triggers, directional controls and logical mapping respond as expected. Choose a controller profile, connect by USB or through an existing wireless pairing, press a button to activate the device, and compare each physical action with the live display. The test is useful for a quick input check, mapping diagnosis and pre-game setup verification, but it does not repair hardware or rewrite controller mappings.
The test
Choose the profile that most closely matches your gamepad, then use the live workspace to check every control in a consistent order.
Active test profile
Start here to see logical button indices, stick axes and the live event history exposed by the browser.
The interactive test is supplied in an iframe by ControllerTest.io. Controller access and available features depend on your browser, operating system, driver and connection method.
Embedded provider: ControllerTest.io
Start with a repeatable check
A useful test is systematic. Move through the controls in the same order every time so a missed input is easy to identify and repeat.
Use a known-good USB cable, a supported wireless adapter, or a Bluetooth pairing that already works at operating-system level. A charging-only USB cable can power a controller without carrying data, so switch cables if the device charges but never appears.
Start with Controller Mapping Test for raw logical indices. Select Xbox, PS5, Joy-Con or Switch Pro when a familiar physical diagram makes comparison easier. The selected picture is a reference view; browser and driver mapping still determine the data.
Keep this tab visible, then press a face button or move a stick. Browsers may wait for an intentional controller gesture before exposing a connected device to the page. If nothing appears, click inside the embedded test once and press a controller button again.
Press and release each face button, bumper, trigger, stick click, D-pad direction and menu control. Confirm that one deliberate press produces the expected highlight and that the highlight clears immediately after release.
Let each stick rest at center, then move slowly along the horizontal and vertical axes before making a full circle. Look for a stable center, smooth movement, similar travel in opposite directions and a return close to zero.
Reconnect the controller, reload the embedded tool and compare wired and wireless operation when possible. Also test in a game or the manufacturer’s official utility before treating one browser result as proof of a hardware fault.
Look for repeatable patterns rather than judging one flicker or one unusual label. A controller test is most useful when you can reproduce the same behavior after reconnecting and compare it with another application.
Work from the connection outward. Change one variable at a time and retest so you know which change affected the result.
Keep the page visible and press a controller button after it loads. Browsers may not expose an already connected controller until the user makes an intentional input. Click once inside the embedded area, then press A, Cross or another face button. If the device still does not appear, verify that the operating system sees it before troubleshooting the browser.
For USB, replace the cable with one known to transfer data and try another port without an unpowered hub. For wireless use, confirm that the controller is paired to this computer rather than automatically reconnecting to a console, phone or another adapter.
First compare physical position instead of printed lettering. Nintendo and Xbox labels use different arrangements. Next inspect whether the Gamepad mapping is standard or raw. Steam Input, DS4-style translation tools, controller firmware modes and virtual gamepad drivers can intentionally transform a PlayStation, Nintendo or generic device into an Xbox-compatible logical layout.
If the browser mapping is consistent but a game behaves differently, inspect the game’s own bindings and any launcher-level remapping. The browser tool only reports the input it receives; it cannot see how a separate game translates that input.
Small changing values around zero can be normal sensor noise. Let go of the stick, avoid resting a finger on it and watch for at least several seconds. A persistent offset that is large enough to move a cursor or character is more meaningful than tiny numerical movement. Repeat after reconnecting, then compare with the game’s deadzone settings.
A browser visualizer can reveal the symptom but cannot tell whether the cause is wear, contamination, calibration, firmware or a driver transform. Use official calibration tools where available before disassembling a controller.
Raw and legacy controller modes can expose controls differently from the Standard Gamepad layout. A trigger may appear as an analog axis in one mode and as a pressure-sensitive button in another. Some older or non-standard devices represent the D-pad through an axis or hat switch instead of four independent buttons.
This difference is not automatically a defect. Record how the control behaves, confirm that the full range is reachable and select a more compatible controller mode if your game expects a standard layout.
The interactive frame comes from an external provider, so content blockers, restrictive network filters, DNS problems or a temporary provider outage can prevent it from loading. Use the reload button once, allow the page’s embedded content if your browser blocks it, and try another network or browser if the frame remains unavailable.
The surrounding guide remains available even when the external tool is offline, but live controller input requires the embedded application to load successfully.
More about this test
The sections below explain what the browser can detect, how standard mapping works and what to check on common controller families.
The embedded workspace reads controller information that the browser makes available through the Gamepad API. A visible response confirms that an input reached the browser through the current operating-system driver and connection path. This is valuable for checking whether buttons register, whether analog values change, and whether the browser has arranged the device into a known mapping.
The result is not a direct electrical measurement inside the controller. Firmware, Bluetooth or USB transport, operating-system drivers, remapping software, browser behavior and the embedded visualizer all sit between the physical control and the pixels you see. Use the page as a diagnostic observation point: it helps narrow down where a problem may exist, but it cannot identify every cause by itself.
Check whether each press is detected, released correctly and associated with the expected logical control. Repeated or stuck highlights can justify a second test in another connection mode.
Observe horizontal and vertical values for both sticks. A centered stick should normally settle near zero, while full travel should approach the ends of the normalized range.
Some drivers expose triggers as pressure-sensitive buttons and others may expose them differently. The important comparison is smooth travel, reliable release and similar behavior on both sides.
Compare the physical button you press with the index and label reported by the browser. A surprising label can reflect Nintendo ordering, a non-standard device, a driver translation or a remapping layer.
Game controllers do not all report controls in the same physical order. The browser receives data through the operating system and may recognize the device well enough to remap it to the Standard Gamepad layout. When that happens, the Gamepad object reports a standard mapping and places common controls at canonical button and axis indices. If the device is unknown, it can still be exposed with an empty mapping string and a manufacturer-specific order.
The standard layout describes physical positions rather than brand lettering. Button 0 is the bottom button in the right-hand face cluster, button 1 is the right button, button 2 is the left button and button 3 is the top button. This positional rule explains why Nintendo lettering can look reversed when software presents Xbox-style ABXY names. The controller may be working correctly even when the printed letters and a generic diagram do not match.
Analog axes are normalized by the browser. For a common dual-stick layout, axes 0 and 1 represent left-stick horizontal and vertical movement, while axes 2 and 3 represent the right stick. Negative and positive values identify opposite directions. Small non-zero center values are common, so judge drift by persistence, magnitude and its effect in real software rather than expecting mathematical zero at every moment.
| API index | Standard physical control | What to verify |
|---|---|---|
| Buttons 0–3 | Bottom, right, left and top face buttons | Each physical face button lights one position and releases cleanly. |
| Buttons 4–5 | Upper left and right shoulder buttons | LB/RB or L1/R1 respond separately without missed presses. |
| Buttons 6–7 | Lower front controls or analog triggers | Pressure rises and returns smoothly when the browser exposes analog values. |
| Buttons 8–9 | Left and right center controls | View/Select and Menu/Start remain distinguishable. |
| Buttons 10–11 | Left-stick and right-stick press | Pressing a stick registers without requiring unintended stick movement. |
| Buttons 12–15 | D-pad up, down, left and right | Every direction is distinct; diagonals may legitimately activate two directions. |
| Button 16 | Center or Home-style control | Availability varies because system-reserved buttons are not always exposed. |
| Axes 0–3 | Left X/Y and right X/Y stick motion | Center stability, full range, direction and smooth return are consistent. |
Device-specific guidance
The dropdown changes the embedded view, not the driver or firmware. Select the profile that makes the physical layout easiest to compare, then use the mapping view whenever you need to see what the browser actually reports.
xbox controller test
An Xbox controller test is usually the clearest reference for the Standard Gamepad layout on a PC because the physical ABXY arrangement matches the canonical right-cluster positions: A at the bottom, B at the right, X at the left and Y at the top. Test the face buttons first, then LB, RB, LT, RT, both stick clicks, the D-pad, View and Menu. The Xbox button may be reserved by the operating system or a game overlay and therefore may not always reach the browser.
Analog triggers deserve a slow test rather than a simple tap. Squeeze each trigger gradually and compare how its value rises and returns. If one side begins late, never reaches a similar maximum or stays active after release, repeat the test with a USB connection and a second application. That comparison helps separate physical wear from wireless, driver or browser behavior.
ps5 controller test
A PS5 controller test should focus on Cross, Circle, Square and Triangle, the two analog sticks, D-pad, L1/R1, L2/R2 and the center controls that the browser exposes. A generic browser mapping often converts the four face positions to the same logical indices used by the standard layout. That means a diagram may show positional ABXY labels even though the physical controller uses PlayStation symbols.
The Gamepad API does not guarantee access to every DualSense feature. Touchpad detail, motion sensors, adaptive-trigger resistance, speaker output, microphone controls and advanced haptics can require additional browser support, WebHID permission, platform-specific drivers or native software. A successful button and stick test therefore proves basic browser input, not full DualSense feature compatibility.
joy-con controller test
Use the Joy-Con controller test when a left and right Joy-Con are paired in a mode that the operating system and browser can recognize. Joy-Con layouts differ from a conventional single-piece gamepad, and browsers may expose the controllers separately or through a combined virtual device depending on the platform, pairing method and translation software. If only one half appears, first verify the pairing state outside the browser.
Nintendo places A on the right and B at the bottom, while the standard positional mapping puts logical button 0 at the bottom and button 1 at the right. This is why a generic Xbox-oriented display can appear to swap Nintendo letters even when input is functioning normally. Use the Joy-Con visual profile for physical clarity, and use the mapping profile to record the actual logical indices delivered to web software.
switch pro controller test
A Switch Pro controller test combines a familiar two-stick form with Nintendo face-button lettering. Start with the Nintendo-specific profile so A, B, X and Y are easy to compare visually. Then switch to Controller Mapping Test if a PC game uses Xbox-style prompts. The two views help distinguish a genuine missed input from a harmless difference between printed labels and standard physical indices.
Check both sticks at rest, sweep the D-pad through single directions and diagonals, and test L, R, ZL, ZR, Plus, Minus, Home and Capture where available. Some center or system controls may be intercepted by the operating system, driver or platform software. Their absence in a browser does not automatically mean the physical button is defective.
gamepad controller test
A generic controller may identify as a standard gamepad, an unrecognized HID device, a DirectInput-style pad or a virtual Xbox controller created by translation software. Begin with the universal profile to confirm broad input, then open the mapping profile and write down the indices for every control. Do not assume that the name printed on a button determines its browser index.
Mode switches on third-party controllers can substantially change the result. A pad that offers XInput, DInput, Switch or Android modes may expose a different ID, button count, axis order and trigger behavior in each mode. Disconnect before changing modes, reconnect, reload the test and keep a separate mapping record for each configuration.
This page embeds a third-party controller application. The iframe receives controller access according to browser permissions policy and the capabilities granted to it. The provider states that controller input is processed in the browser, but the embedded document is still served and operated by that provider. Review your browser’s site controls if you do not want an embedded third-party application to access a connected gamepad.
A browser controller test can show input states but does not provide laboratory-grade latency measurement. Screen refresh, polling behavior, connection transport, operating-system scheduling, browser rendering and the visual response all add uncertainty. Do not interpret the time between a physical press and an on-screen highlight as an exact end-to-end latency value.
The tool also cannot repair drift, recalibrate firmware, change mappings or certify that every feature works on a console. It cannot guarantee access to platform-reserved buttons, proprietary haptics, speakers, microphones, touch surfaces, adaptive triggers or motion sensors. Use official manufacturer utilities and a real game or console as the final confirmation.
Common questions
These answers explain the most common differences between physical controls, browser mapping and game behavior.