Controller TestsBrowser test

Stick Drift Test

Test controller stick drift with hands-off center sampling, browser-axis noise, neutral-envelope deadzone guidance, and circularity geometry. Compare local rest-sample history.

  • Browser-observed
  • Gamepad API; no permission prompt
  • Optional history in this browser
  • No account or upload
Browser-observed measurement

Privacy-first. Tests run locally in your browser. We do not upload keystrokes, pointer paths, or media.

Requires a browser with the Gamepad API. Connect by USB/Bluetooth and press a physical controller button. Standard mapping provides known left/right stick axes; raw/non-standard mappings require manual axis-pair selection.

Important

  • Results summarize browser Gamepad API axis values. Center offset, neutral noise, deadzone guidance, and rotation geometry are session evidence—not manufacturer calibration, hardware-failure proof, or a universal game deadzone.
Test instrumentController Tests
No controller selected. Press a button on your pad first.

Phase: Ready

Selected controller:

Browser axes 0 / 1: 0 / 0

Fullscreen not supported

Observed center drift (current target)

Raw axes 0 / 1 median center
Radial center drift
Mean residual noise
P95 residual noise
P99 neutral radius
P99 residual noise
Rounded neutral envelope

data reference for game-specific deadzone troubleshooting

Max radius from origin
Rest observations / duration

Browser observation snapshots measure a median rest center and the residual movement around it. The rounded neutral envelope is the browser-observed P99 rest radius rounded upward to the next 1%; it is a starting reference for game deadzone troubleshooting, not a universal game setting or a hardware verdict.

Rotation / circularity geometry

Min/Max X
Min/Max Y
Max radius
Direction sectors covered
Direction coverage
Outer radius min / median / max
Outer radius range
Outer radius CV
Rotation observations / duration

Geometry uses 24 angular sectors and keeps each sector's maximum radius after ignoring center-near observations below 0.20. Lower outer-radius range or CV means more similar browser-observed outer radii; it does not certify calibration, health, or a factory gate.

Local history (aggregate rest summaries only)

Rest history stores completed aggregate summaries for repeatability. It never stores controller IDs, raw axis arrays, timestamps, or rotation traces. Current samples and traces remain session-only.

No valid rest samples yet. Complete a hands-off sample with at least three browser observations to save one aggregate summary.

Gamepad axis analysis runs in this browser. Local history keeps only aggregate rest summaries; analytics does not receive controller IDs, axis values, center offsets, deadzone values, traces, or raw sample arrays.

How to use

  1. Connect the controller, focus the page, press a physical controller button, and select the correct pad if several are available.
  2. For Standard mapping choose Left stick or Right stick. For raw/non-standard mapping choose the two browser axes that move with the physical stick you want to test.
  3. Choose a 3, 5, or 10 second rest sample. Fully release the stick and do not touch it until the hands-off sample finishes.
  4. Review median X/Y center offset, radial center offset, residual noise, P99 neutral radius, and the rounded neutral envelope.
  5. Optionally run the 8-second rotation sample and slowly trace the full outer edge. Review sector coverage and outer-radius geometry rather than a pass/fail circularity score.
  6. Repeat rest samples under the same controller, connection mode, browser, mapping, and physical setup. Use Local history for comparison.

What the result means

  • Median X/Y center offset is the median browser-axis rest position; radial center offset is hypot(median X, median Y).
  • Residual noise measures movement around that measured median center, separate from center bias.
  • P99 neutral radius is a high percentile of browser-observed rest distance from the origin. The rounded neutral envelope rounds it up to the next 1% as a starting reference for game-specific deadzone troubleshooting, not a universal setting.
  • Direction coverage is the number of 24 rotation sectors reached outside the center-ignore radius. Outer-radius statistics are per-sector maximum geometry.
  • None of these values are manufacturer calibration values, sensor telemetry, or a hardware health verdict.

Limitations

  • The Gamepad API exposes browser/OS/driver-processed axis values, not direct potentiometer/Hall sensor voltage or raw USB/HID telemetry.
  • Axis values and mapping can differ with controller firmware, adapters, remapping software, operating system, browser, and USB/Bluetooth mode.
  • Standard left/right stick semantics are used only when mapping="standard". Raw mappings require manual axis selection.
  • Hands-off center measurements depend on the stick actually being released and the controller being physically stable.
  • Game deadzones vary by game and can be radial, axial, inner/outer, or combined with response curves. There is no universal percentage.
  • A stable rest sample does not prove the stick will never drift intermittently.
  • A non-zero neutral offset does not by itself prove hardware wear; software calibration/remapping and browser representation can contribute.
  • Rotation geometry depends on physical gate shape, firmware curves, outer deadzone, coverage, and technique. A square/squircle response is not automatically a defect.

Troubleshooting

The controller appears but the wrong stick moves
Check Mapping. Standard mapping uses the known left/right axes; raw mappings require you to select the correct X/Y browser axis indexes. Use Gamepad Tester to identify them.
My rest sample has a large offset
Make sure the stick is fully released and the controller is stable, then repeat the same hands-off sample. Compare repeated runs before changing a game deadzone or blaming hardware.
The neutral envelope changes between runs
Use the same controller connection mode, browser, remapping software, and rest protocol. Small differences can come from browser/driver processing and stick noise.
Direction coverage is low
Repeat the rotation sample and slowly trace the full physical outer edge for a complete circle. Low coverage can simply mean the sweep was incomplete.
Circularity geometry looks uneven
Repeat the same slow outer sweep. Gate shape, firmware response, outer deadzone, incomplete coverage, and technique can affect the browser geometry; it is not automatically hardware failure.
Sampling was interrupted
A selected-controller disconnect, focus loss, hidden tab, or target change invalidates the active sample. Return to the page and start a fresh sample.

Related tools

FAQ

What is stick drift?

It is unwanted non-zero controller axis movement when the physical stick is released. This page measures browser-observed neutral offset and noise rather than declaring the hardware cause.

What does the neutral envelope mean?

It is the browser-observed P99 rest radius rounded upward to the next 1% axis-radius step. It is a data reference, not a universal game setting or your controller's firmware deadzone.

Is the neutral envelope my controller's hardware deadzone?

No. It is a summary of this browser-observed rest session. It does not read the controller's firmware, factory calibration, or game-specific deadzone model.

How should I use this result for a game deadzone?

If repeated hands-off samples show neutral movement beyond your current game's deadzone, try a game-specific deadzone slightly above the repeatedly observed neutral envelope, then verify the result in that game. DeviceMetrik does not prescribe one universal percentage.

What does the circularity test measure?

It uses a 24-sector outer sweep, keeps each sector's maximum radius, and reports coverage, range, and CV. It is transparent geometry evidence, not a universal pass/fail score.

Why does a raw/non-standard controller need axis selection?

The browser did not apply Standard mapping, so DeviceMetrik will not guess left/right stick indexes. Use Gamepad Tester to inspect the raw axes first.

What is the difference between Gamepad Tester and Stick Drift Test?

Gamepad Tester covers general controller detection, buttons, triggers, raw axes, and mapping. Stick Drift Test focuses on hands-off center/noise evidence, deadzone context, and rotation geometry.