Controller Stick Circularity Test

Roll each stick around its outer edge and see how far its path strays from a perfect circle, direction by direction.

Connect a controller, then press any button

Plug it in with a USB data cable or pair it over Bluetooth. Browsers only reveal a controller after a button press, so press A or ✕ if nothing appears. Nothing is sent anywhere.

No controller yet

The diagram lights up as soon as your controller sends input.

Stick circularity test

Rotate each stick slowly around its outer edge. Measures how far the edge strays from a perfect circle. Pass: up to 10% average error. Warning: up to 20%. Fail: above 20% or a direction that can't reach 75% of full travel.

Left
Right

Not run yet.

Edge reach by direction, % of full travel
DirectionLeft stickRight stick
→ right––
↗ up-right––
↑ up––
↖ up-left––
← left––
↙ down-left––
↓ down––
↘ down-right––

A round gate reads close to 100% in every direction. Values above 100% at the diagonals are common and harmless; one direction well below the others is where the stick is worn or blocked.

Live controller diagram: buttons light up when pressed, triggers fill as you squeeze themLTLBRTRBSelectStartHomeABXYLSRS
Left stick–
Right stick–
Left trigger
0%
Right trigger
0%
All buttons and axes · 0 buttons pressed

Press every button once: each one gets a tick when it registers. Values show analog pressure from 0.00 to 1.00.

Health tests

1. Stick drift

Measures where each stick settles when nobody touches it, and checks for buttons or triggers that read as pressed. Pass: under 5% of full travel. Warning: 5–10%. Fail: 10% or more.

Not run yet.

2. Vibration

Plays a rumble. The strong motor is the heavy, low rumble in the left grip; the weak motor is the finer buzz on the right.

Connect a controller to test vibration.

3. Input update rate

Estimates how often the browser receives new data from the controller while you move a stick.

Not measured yet.

More tests for PlayStation controllers

Connect a DualSense, DualSense Edge or DualShock 4 directly for what the standard gamepad connection hides: motion sensors, touchpad, battery and the true report interval, plus adaptive triggers and lights on a DualSense. Your browser asks which device to allow, and the permission lasts until you close the tab. This page only reads the controller and sends effect commands (trigger effects, light bar, player lights), never calibration or firmware, and it resets them when you leave.

Decoded from published formats (the Linux hid-playstation driver and SDL); not yet tested on a real controller. Over Bluetooth, deep mode switches the controller to its full report format until it reconnects, and asks first: if another app or game stops seeing it, turn the controller off and on.

Not connected.

Motion sensors

Tilt and turn the controller: the model follows it, and the graphs show the gyroscope (turn rate, degrees per second) and the accelerometer (g) on each axis. Put it down flat and run the rest check to measure gyro drift.

Gyro – · Accel –

Touchpad

Draw on the touchpad with one or two fingers. Each finger gets its own colour and the ID the controller gives it; a dead strip shows up as a gap in the lines. Press the pad to test its click.

No touch yet.

Adaptive triggers (DualSense only)

Pick an effect, then press L2 or R2. Resistance pushes back from the start point; click is a section of resistance that gives way, like a trigger pull; vibration buzzes the trigger from the start point. The bars show where each trigger is.

L2
–
R2
–

Light bar and player lights

Battery

The level the controller reports, in 10% steps, and whether it is charging. It updates live, so plug in a cable to check the charging port.

–

Report interval

How often the controller sends a report, from the controller's own clock and from the time each report reached this page. This is the report interval, not end-to-end input lag: it leaves out the time a press takes inside the controller, in the game and on the screen.

Controller health report

Selling or buying a used controller? Run the four tests, press every button, then share the report link in your listing or message.

Connect a controller to start the report.

How to run the circularity test

Click Start circularity test, push one stick against its outer edge and roll it slowly round two or three times, then do the same with the other. Keep steady pressure on the rim: the test only counts readings beyond half of full travel, and it fills in a progress bar per stick as it covers the circle in 5° steps. Let go of both sticks when the bars are full and the result appears.

You get the average error for each stick, the edge reach range, and on this page a table of edge reach in eight directions. The weakest direction is highlighted when it falls under 95%.

How to read it

Gamepadla defines circle error as how closely the stick’s movement follows a perfect circle: a high value means a more square-like path, which causes inconsistent speed when moving diagonally. Its measurements give an idea of what healthy controllers score: an Xbox Series controller 6.8% (left) and 7.9% (right) over cable, and a DualSense 6.0% and 6.3% over cable (9.1% and 7.9% when tested through a GuliKit wireless dongle). Gamepadla notes that budget gamepads often have circle errors above 12%.

This tester passes a stick at up to 10% average error and warns up to 20%. It fails a stick above 20%, or one that can’t reach 75% of full travel in some direction, because a character then can’t reach top speed that way.

The direction table tells two faults apart:

  • Overshoot at the diagonals (above 100% at ↗ ↖ ↙ ↘): a square output range under a round gate. Normal on many controllers.
  • One direction short (for example 82% ↓ while the others read 98%): wear, dirt or a damaged gate on that side. It often goes with drift, so run the stick drift test too.

Fixing poor circularity

If the average error is high but every direction reaches full travel, you can usually leave it. If one direction falls short, recalibrate where the platform allows (the Xbox Accessories app, Nintendo’s Calibrate Control Sticks, the Steam Deck’s calibration screen), then test again. If it is still short, set an outer deadzone so full output arrives before the weak edge: the deadzone visualiser works that out from this test.

Controller TesterSomeone shared their result

Suggested