How to measure
- Connect the controller and press any button so the page can see it.
- Disconnect Coda or any other remapping tool first. With one running, the browser reads its virtual controller — after its deadzone — and a drifting stick can look perfect.
- Put the controller on a table. Hands off: holding it moves the sticks.
- Choose a time and start. Ten seconds describe a resting stick; thirty catch one that creeps slowly.
How to read the result
Average position is where the stick settles; its distance from centre is the steady part of drift. Furthest reading is the worst single moment. Instability is how far the readings scatter around their own average: a stick can sit off centre and stay put, or sit near centre and twitch. The verdict says which of the two it is — a steady lean or a wander.
The verdict follows the furthest reading:
- Measurement noise — within two of the controller’s smallest steps of centre. An 8-bit axis, as PlayStation controllers report, moves in steps of 0.0078 and cannot even show 0.0000; its two values nearest centre are ±0.0039. That is resolution, not a fault.
- Small resting offset — up to 0.10. Analog sticks commonly settle a little off centre; this stays well inside Coda’s default deadzone of 0.15.
- Stick drift — beyond 0.10. The deadzone has to be chosen with this offset in mind, and above 0.15 even Coda’s default no longer hides it.
A reading past 0.5 means the stick was moved, and the result is withheld rather than guessed.
Smallest step is the finest difference between two readings the recording saw — about 0.0078 on an 8-bit axis, far finer on an Xbox controller, whose sticks report 16-bit values. It shows only once the stick has moved between neighbouring values; a perfectly still stick has nothing to compare.
The deadzone that hides this recording is the furthest reading plus 0.01, rounded up to the next hundredth — the smallest round deadzone that would have hidden every reading of this run. When the offset leans along one axis, the per-axis figures cover it with less dead area.
Your recommended Coda settings
After 3 runs, the page suggests a Deadzone for each stick — the one Coda setting a resting stick can speak to. Push both sticks around and let go before each run: a stick lands a little differently every time, and a deadzone has to cover wherever it lands. The page notices when a stick was not moved past 0.5 between runs and does not count that run as a new resting position.
The value is the furthest resting reading of all runs plus 0.01, rounded up to the hundredths Coda’s field takes. Readings from an 8-bit controller are first converted to the scale Coda compares them on: a browser reports the stick byte b as b ÷ 127.5 − 1, Coda as (b − 128) × 258 ÷ 32767, so centre is 0.0039 in one and exactly 0 in the other. A per-axis alternative appears when it frees at least 0.03 on one axis; above 0.25 the page says how much travel the deadzone costs.
Anti-Deadzone is not the same thing, and nothing here suggests one. The deadzone works on the input — readings inside it count as centre. The anti-deadzone works on the output — where the stick starts once it leaves the deadzone, to step past a game’s own deadzone. A stick lying still measures the first and says nothing about the second, or about Max Zone.
A stick that reads exactly centre for a whole run gets no suggestion: a controller read directly practically never does that, while a signal that has already been through a deadzone — Coda’s virtual controller, Steam Input — does.
What it cannot tell you
- Whether drift will grow. Sticks wear and drift changes with warmth and use; a recording describes these seconds, so measure again before trusting a small value for long.
- What causes it. The page sees numbers, not the sensor; dirt, wear and a loose part can all produce the same reading.
- What a game shows. Games and tools apply their own deadzones on top of what the controller reports, so a stick that drifts here can look still in a game, and the other way round.
How deadzones fix drift · Circularity Analyzer · Gamepad Tester · All Controller Lab tools