GamepadHealth / LIVE INPUT
Gamepad tester
Connection status
Press a button to detect your controller
Browsers only reveal a controller after it receives input — that’s a privacy protection, not a sign of a problem. If it’s already plugged in, press any button or move a stick now.
Move a stick or press any button
Detailed health check
Follow guided steps for a separate, explainable health report.
This turns on as soon as your browser detects controller input above.
Guided observation
Follow one clear step at a time
This flow records bounded browser observations. The local report is calculated only after the phases finish.
Step 1 of 7
Leave the controller untouched
Place it on a stable surface and release every stick, trigger, and button for a short uninterrupted window.
Movement restarts this window so an accidental touch cannot become a device finding.
Step 2 of 7
Move the left stick around its full circle
Trace the outer edge in every direction, then release the stick so it returns to center.
Move only the requested stick. A wrong movement is ignored rather than marked as failure.
Step 3 of 7
Move the right stick around its full circle
Trace the outer edge in every direction, then release the stick so it returns to center.
Coverage here is an interaction requirement, not an accuracy or hardware verdict.
Step 4 of 7
Press each standard-mapped button once
Work through the face, shoulder, menu, stick, directional, and home controls exposed by the browser.
If a control is unavailable or unclear, continue with this phase marked inconclusive.
Step 5 of 7
Press and release both triggers slowly
Move the left and right triggers from rest to their available end and back to rest.
Digital-only or raw mappings remain unsupported for analog interpretation and receive no penalty.
Step 6 of 7
Produce gentle changing input
Slowly move a stick or press a button while the visible-tab observation window completes.
This observes browser updates. It does not claim USB polling rate or end-to-end latency.
Step 7 of 7
Optionally confirm one short vibration
Start the vibration yourself, then report whether you physically felt it.
A successful API command does not prove that a motor worked; your confirmation remains separate.
Observation flow complete
All guided phases have a recorded state
You completed the interaction flow. Unsupported and inconclusive phases remain separate.
- Rest calibration
- Left stick
- Right stick
- Buttons
- Triggers
- Input stability
- Haptics
The local v1 report uses provisional thresholds and is not a hardware certification. Unsupported and inconclusive phases stay unscored.
- Axes
- Buttons
- Timestamp
- —
- Haptics API
- AXIS 0
- AXIS 1
- AXIS 2
- AXIS 3
- AXIS 4
- AXIS 5
- AXIS 6
- AXIS 7
- AXIS 8
- AXIS 9
- AXIS 10
- AXIS 11
- AXIS 12
- AXIS 13
- AXIS 14
- AXIS 15
- AXIS 16
- AXIS 17
- AXIS 18
- AXIS 19
- AXIS 20
- AXIS 21
- AXIS 22
- AXIS 23
- AXIS 24
- AXIS 25
- AXIS 26
- AXIS 27
- AXIS 28
- AXIS 29
- AXIS 30
- AXIS 31
Raw mapping: use the numbered values. The standard controller diagram does not apply.
The browser delayed this preview. This is an environment notice, not a controller failure.
Connection status
Press a button to detect your controller
Browsers only reveal a controller after it receives input — that’s a privacy protection, not a sign of a problem. If it’s already plugged in, press any button or move a stick now.
Connection status
Controller detected
Live normalized input, guided observations, and the local report are available below.
Connection status
Multiple controllers detected
Choose which connected controller to preview. This selection remains only on this page.
Connection status
Controller disconnected
Reconnect or interact with the controller to continue. No hardware failure is inferred.
Connection status
Sampling paused
Return to this visible tab to continue local input sampling.
Connection status
Preparing controller detection
The connection interface is loading. No input is recorded while you wait.
Connection status
Connection interface unavailable
The interface could not prepare controller detection. This is not a controller health failure.
Connection status
Controller detection isn’t available here
Your current browser or connection doesn’t expose the controller data this test needs. That’s a browser limitation, not a sign that the controller has a problem.
GamepadHealth
Test result
Right stick
Not testedButtons
Not testedAnalog triggers
Not testedInput stability
Not testedThis is a browser test with provisional thresholds, not a definitive hardware diagnosis.
Measurements and technical details
Provisional score thresholds — physical multi-device calibration is still required before public release.
Overall Health Score
A score appears only after supported checks are completed.
Findings and next actions
- Left stick
- Right stick
- Buttons
- Analog triggers
- Input stability
Evidence summary
- Left center radial p99
- —
- Right center radial p99
- —
- Left directional range
- —
- Right directional range
- —
- Average trigger travel
- —
- Button coverage
- —
- Observed input interval median / p95
- —
Starting deadzone suggestion
Derived from the rest-window p99 plus a safety margin. Use it only as a starting in-game setting; games apply deadzones differently.
- Left stick
- —
- Right stick
- —
Method and limitations
The score uses versioned integer calculations from bounded browser observations. It is not a hardware certification.
- Browser timing is not USB polling rate or end-to-end latency.
- A missed interaction can make a phase inconclusive; it does not prove a broken control.
- No model benchmark, percentile, battery health, or physical wear claim is produced.
Free browser-based controller test
Gamepad Tester: Buttons, Sticks & Triggers Online
Test gamepad buttons, sticks and triggers in your browser. Select up to four connected controllers, follow the checks and share a result with a link.
No install or account needed — raw controller input never leaves your browser.
Simple and explainable
From connection to a useful report
Each stage keeps one clear task on screen and explains what the browser can and cannot observe.
-
1
Connect your controller
Use a supported browser and interact with the controller when prompted.
-
2
Follow guided checks
Complete focused stick, button, trigger, and stability steps without hidden background tests.
-
3
Review honest results
See tested, unsupported, and inconclusive areas separately instead of receiving false zero scores.
Built around clear limits
A calm diagnostic experience with no hidden claims
Browser support is explicit
Unsupported and interaction-required states remain separate from controller health.
Methods stay visible
Every future metric must explain its browser-observed method and confidence.
Local-first by default
Raw controller inputs stay in this page. A result is saved on the server only when you choose Share. Optional analytics follow your privacy preferences.
What this page covers
The complete flow records bounded browser input evidence, separates unsupported or inconclusive phases and produces a local report.
How to use it
- Connect by USB or pair through the operating system; press a button to wake browser access.
- Select the controller tab and start the health check.
- Leave the sticks untouched during rest, then rotate each stick and release it.
- Press every requested button, squeeze and release the triggers, then follow the input-stability step.
- If vibration is available, confirm what you felt. Read the result and share it only if needed.
How to interpret the result
A normal result describes only the controls and conditions tested here. Game settings, deadzones, remapping and connection changes can produce different behavior. Repeat the same check before comparing results.
Important limitations
A safe next step
If vibration is available, confirm what you felt. Read the result and share it only if needed.
Does this browser test diagnose hardware damage?
No. It reports browser-observed input and cannot certify internal hardware, USB polling rate, end-to-end latency, battery health or physical wear.
Four controllers, separate tests
Connect up to four gamepads and press a button on each. Choose its numbered tab before starting. Each controller keeps its own test progress while the page stays open; a result is saved on the server only after Share.
Gamepad connected but not detected?
Confirm the operating system sees the controller, return to this tab and press a face button. Try a data-capable USB cable or another port, then temporarily close remapping software. Test one change at a time.
Does a normal result mean every game will work?
A normal result describes only the controls and conditions tested here. Game settings, deadzones, remapping and connection changes can produce different behavior. Repeat the same check before comparing results.