Quick answer: Controller deadzone drift (stick drift) is when the analog stick reports movement while centered, causing the character or camera to drift on its own, usually because worn controllers report small non-zero values at rest and the game's deadzone is too small to ignore them. Fix it with a properly-sized deadzone (a radial deadzone is best) that ignores small at-rest input, and ideally make the deadzone adjustable so players with drifting controllers can compensate.
Stick drift is a widespread controller problem, analog sticks wear out and start reporting input even when untouched, making the character or camera wander on its own. While the hardware is the root cause, the game's deadzone handling determines whether that drift ruins the experience or is harmlessly ignored. Proper deadzone handling is the software fix for a hardware reality.
What Causes Stick Drift
Analog sticks should report zero when centered, but in practice, especially as controllers wear, they report small non-zero values at rest (the stick's resting position drifts from true center). If the game treats these small values as real input, the character or camera moves even though the player isn't touching the stick, that's stick drift's effect in-game. The deadzone is the region around center where input is ignored; if it's too small (or absent), the at-rest noise from a worn stick exceeds it and registers as movement.
So while drift originates in worn hardware, whether it manifests in your game depends on your deadzone: a deadzone too small to cover the controller's at-rest noise lets the drift through. Many players have controllers with some drift, so robust deadzone handling matters broadly.
How to Diagnose It
The symptom is clear: the character/camera moves when the stick is centered and untouched. Test with a controller that has some drift (or simulate small at-rest input). Check your deadzone, is it large enough to ignore typical at-rest stick noise, and is it implemented well (a radial deadzone that considers the stick's distance from center, rather than a per-axis deadzone that can behave oddly)? If small at-rest values are passing through as movement, the deadzone is too small or poorly implemented.
Reports describe it as the character moving on its own or drifting, and it correlates with worn controllers (so it affects players with older controllers more). Bugnet captures reports with context, so drift complaints surface, but it's primarily diagnosed by testing deadzone behavior against at-rest stick input. The fix is in your deadzone handling regardless of the hardware cause.
How to Fix It
Apply proper deadzone handling. Use a deadzone large enough to ignore typical at-rest stick noise, so small values near center are treated as zero (no movement), eliminating drift from normal controller wear, while still allowing responsive input beyond the deadzone. Use a radial deadzone (based on the stick's distance from center) rather than a simple per-axis deadzone, which gives better, more natural behavior. Scale input beyond the deadzone smoothly (so there's no jump at the deadzone edge), preserving fine control. And ideally make the deadzone adjustable, let players increase it to compensate for a more-worn controller, so players with significant drift can still play comfortably.
Balance is important: a deadzone too small lets drift through, but too large hurts fine control and responsiveness, so size it to cover typical at-rest noise while keeping good control, and let players tune it for their controller. After implementing, verify a centered (even slightly-drifting) stick produces no movement, while intentional input is responsive. Good deadzone handling, appropriately sized, radial, smooth, and adjustable, makes your game robust to the stick drift that many players' controllers have.
Stick drift is a worn controller reporting input at rest, and a deadzone too small to ignore it. Use a properly-sized radial deadzone, and let players adjust it for their controller.