Mouse stuttering in games can transform an otherwise smooth Linux gaming experience into a frustrating ordeal. Whether it appears as erratic cursor movement, sudden jumps, or inconsistent frame pacing, the underlying causes are often systemic rather than game‑specific. The good news is that most cases can be resolved with a methodical approach, and Linux users have more direct control over the stack than on other platforms.
This guide walks through the most reliable fixes for mouse stuttering in games on Linux, from common configuration tweaks to deeper system adjustments. Every step is designed to isolate the root cause and restore fluid input responsiveness, regardless of your distribution or desktop environment.
Understanding Mouse Stuttering in Games on Linux
Mouse stuttering is usually a symptom of input latency spikes or uneven frame delivery. It often gets confused with general game stuttering, but it specifically refers to the mouse cursor or camera movement feeling jittery even when the on‑screen action appears smooth. This can stem from the compositor, input driver settings, CPU scheduling, or even the kernel. Because Linux offers a variety of graphics stacks and input frameworks, identifying the precise bottleneck requires checking multiple layers.
Common Causes of Mouse Stuttering
Before applying fixes, it helps to understand why the problem occurs. The most frequent culprits include:
- Compositor interference: Desktop compositors like Mutter, KWin, or Picom can add input lag and VSync‑related stutter when games run in a window or even fullscreen.
- Graphics driver misconfiguration: Out‑of‑the‑box settings for NVIDIA, AMD, or Intel GPUs may not be optimized for low‑latency rendering.
- CPU governor or power management: Aggressive power‑saving modes can cause frequency scaling delays that disrupt input processing.
- Mouse polling rate and driver settings: Extremely high polling rates or incorrect input driver parameters may overwhelm the system.
- Kernel or X11/Wayland issues: Older kernels or bugs in the display server can introduce input latency.
- Game engine peculiarities: Some games have inherent mouse acceleration, raw input bugs, or engine‑specific frame pacing quirks.
General Troubleshooting Workflow
A systematic approach saves time. Start with the quickest, least invasive checks, then move to deeper configuration changes if the stutter persists.
- Verify that the issue occurs in multiple games and not just one.
- Test with a basic window manager (like Openbox) to rule out the compositor.
- Monitor system resource usage during the stutter (CPU, GPU, I/O) using tools like
htopornvtop. - Check kernel and driver versions; update if outdated.
- Experiment with different mouse polling rates and USB ports.
Disable or Tweak the Compositor
Compositors are the number one source of mouse stutter on Linux. They add an extra frame of latency and can enforce unwanted VSync. To test if your compositor is to blame, temporarily disable it:
- GNOME (Mutter): Press Alt+F2, type
lgand runMeta.disable_unredirect_for_screen(global.screen)in the Looking Glass prompt. Alternatively, usegsettings set org.gnome.mutter disable-unredirect-fullscreen trueto keep it off in fullscreen games. - KDE Plasma (KWin): Go to System Settings > Display and Monitor > Compositor, uncheck “Enable compositor on startup” and reboot, or press Shift+Alt+F12 to toggle.
- Xfce (Xfwm): In Settings > Window Manager Tweaks > Compositor, disable display compositing.
- Standalone Picom: Kill the process with
pkill picomor disable autostart.
If stuttering disappears, you can either keep the compositor off for gaming sessions or investigate its VSync and unredirection settings. Some compositors allow you to set “unredirect fullscreen windows” which often resolves the issue without a full disable.
Optimize Graphics Driver Settings
Drivers play a huge role in input latency. The steps differ per GPU vendor.
NVIDIA
Use the proprietary driver. Open nvidia-settings and under “X Server Display Configuration” ensure the resolution is correct and refresh rate is set to the highest available. In the “OpenGL Settings” section, disable “Sync to VBlank” and uncheck “Allow Flipping” if present. For VSync, many games benefit from __GL_SYNC_TO_VBLANK=0 environment variable, but this can cause tearing; use it as a test. Also set __GL_SHADER_DISK_CACHE=1 to avoid shader compilation stutter.
AMD
Use the open‑source Mesa drivers. Ensure you have the latest Mesa and kernel. Set RADV_PERFTEST=aco environment variable to force the ACO compiler, which reduces shader stutter. For VSync, vblank_mode=0 disables it (temporary test). Consider enabling “TearFree” in your Xorg configuration if tearing bothers you, but be aware it can add minor latency. With Wayland, VSync is usually managed by the compositor anyway.
Intel
Similar to AMD, use the latest Mesa and kernel. For Vulkan, set INTEL_DEBUG=nofbc if you suspect framebuffer compression issues. Most Intel users don’t need heavy tweaks, but ensure the i915 kernel module has the fastboot option enabled to avoid mode‑setting delays.
Tweak CPU Governor and Power Management
Linux power management can aggressively scale down the CPU, causing micro‑pauses during mouse input processing. Change the governor to “performance” during gaming:
sudo cpupower frequency-set -g performance
Alternatively, use a tool like gamemoderun (part of Feral’s GameMode) which automatically applies such settings. Install gamemode and launch games with gamemoderun ./yourgame. For laptops, also ensure you’re using the dedicated GPU and not the integrated one, and that the system isn’t throttling due to heat.
Adjust Mouse Polling Rate and Input Driver
Modern gaming mice often poll at 1000 Hz or higher. While this improves precision, it can flood the input stack and cause stutter on some systems. Try lowering the polling rate to 500 Hz using your mouse’s software or a tool like ratbagctl for supported Logitech mice. If you have a USB hub, plug the mouse directly into a motherboard port, preferably USB 2.0, which tends to have better compatibility.
The libinput driver is the default on most distros. Its acceleration profile can sometimes interfere. Test with a flat acceleration profile:
gsettings set org.gnome.desktop.peripherals.mouse accel-profile flat
For non‑GNOME environments, create an Xorg configuration snippet in /etc/X11/xorg.conf.d/:
Section "InputClass"
Identifier "My Mouse"
MatchIsPointer "yes"
Option "AccelerationProfile" "-1"
Option "AccelerationScheme" "none"
EndSection
After changes, restart X or relogin.
Kernel and Display Server Considerations
Older kernels (pre‑5.15) might have known input issues with certain hardware. Update to the latest LTS or mainline kernel. Similarly, if you’re using X11, try Wayland if your graphics stack supports it, as it often reduces compositor‑related stutter. Conversely, if Wayland introduces problems, switch back to X11. You can select the session at the login screen.
For X11 users, enabling “TearFree” (Intel/AMD) or “ForceCompositionPipeline” (NVIDIA) can help frame pacing but may add slight latency. Experiment to see what feels best.
Game‑Specific Tweaks
Many games offer raw mouse input options, VSync settings, and frame rate limits. Always enable raw input if available. To cap frame rate, use the game’s own limiter or MangoHud with fps_limit=60. In‑engine VSync often causes stutter; instead, use driver‑level VSync or no VSync. For Proton/Wine games, launch options like PROTON_NO_ESYNC=1 or WINEESYNC=0 can sometimes cure input lag caused by esync.
Use Latency Reduction Tools
Tools like irqbalance can improve interrupt handling, and ananicy or cfs-zen-tweaks can enhance CPU scheduler fairness. GameMode as mentioned earlier is a simple all‑in‑one solution. Additionally, disabling background services (e.g., file indexers, backup daemons) while gaming can prevent CPU spikes.
Frequently Asked Questions
Why does my mouse stutter only in specific games?
It likely indicates the game engine’s mouse handling is sensitive to system conditions. Try the game‑specific tweaks mentioned, such as raw input, frame rate capping, and adjusting Proton/Wine settings.
Can a high mouse polling rate cause stuttering?
Yes. Extremely high polling rates (e.g., 4000+ Hz) can overwhelm the USB controller and input stack, leading to inconsistent cursor updates. Reduce to 500 or 1000 Hz to see if it helps.
Does Wayland fix mouse stuttering compared to X11?
In many cases, yes, because Wayland compositors handle input and rendering more tightly. However, some games or drivers may still have issues on Wayland. It’s worth trying both.
Should I disable VSync to fix mouse stutter?
Disabling VSync can reduce latency and eliminate the periodic stutter caused by missed frames, but it may introduce screen tearing. Try it as a diagnostic step; if the stutter disappears, you can then explore adaptive sync (FreeSync/GSync) or alternative frame limiters.
How do I check if the compositor is causing the problem?
Disable the compositor completely as described above, then run a game in fullscreen. If the mouse becomes smooth, the compositor is the culprit.


