Mouse input latency is one of the most discussed topics in competitive gaming and one of the least well-understood. Here's every layer that adds latency between your physical mouse movement and what the game sees.
The path from hardware to game
- Mouse sensor detects movement
- Mouse firmware processes it and sends USB report
- Windows USB driver receives the report (interrupt)
- mouclass.sys adds the event to a queue
- win32k.sys reads from the queue
- Game reads raw input via DirectInput or Win32 Raw Input API
Each step has a potential delay.
USB polling rate
Your mouse sends reports at a fixed rate — 125hz (8ms), 250hz (4ms), 500hz (2ms), or 1000hz (1ms). At 1000hz, the maximum additional latency from polling is 1ms.
Most gaming mice default to 1000hz. Check your mouse software.
mouclass queue depth
Windows maintains a queue for mouse input events. The default queue depth is 100 events. Before that, MouseDataQueueSize used to matter more — at high polling rates with a backed-up queue, events could be delayed.
Modern systems process the queue fast enough that this is rarely the bottleneck, but setting it lower (16 or 32) doesn't hurt.
HKLM\SYSTEM\CurrentControlSet\Services\mouclass\Parameters
MouseDataQueueSize = 16
Mouse acceleration (Pointer Precision)
Windows applies an acceleration curve to mouse input by default ("Enhance Pointer Precision"). This is not linear — faster movements are amplified more than slow movements. For gaming, this makes muscle memory inconsistent.
Turn it off in Mouse settings → Pointer Options → uncheck "Enhance pointer precision."
Or via registry:
HKCU\Control Panel\Mouse
MouseSpeed = 0
MouseThreshold1 = 0
MouseThreshold2 = 0
Also remove the acceleration curves entirely:
reg delete "HKCU\Control Panel\Mouse" /v SmoothMouseXCurve /f
reg delete "HKCU\Control Panel\Mouse" /v SmoothMouseYCurve /f
Cursor shadow
A small one, but cursor shadow adds a DWM render pass per frame. Disabling it reduces DWM overhead slightly:
HKCU\Control Panel\Desktop
CursorShadow = 0
Snap to default button
Windows can "snap" your cursor to the default button in dialogs. This can cause unwanted cursor movement. Disable:
HKCU\Control Panel\Mouse
SnapToDefaultButton = 0
All of the above is in IzanagiOP's Trajectory Pack alongside per-game CPU/IO/GPU priorities and network NIC settings. Discord: https://terweb.lt/
Top comments (0)