High ping, packet loss, and inconsistent latency in online games often come from Windows networking defaults that prioritize throughput over latency. These tweaks adjust TCP/IP stack settings, disable aggressive buffering, and tune your network adapter for real-time performance.
Check Your Baseline First
Before tweaking, measure current performance:
# Ping your game server (replace IP with your game server)
ping 8.8.8.8 -n 100 -l 32
# Or use PingPlotter (free) for continuous latency graphs with jitter display
Note your average ping and packet loss percentage.
TCP Auto-Tuning
Windows automatically adjusts the TCP receive window based on network conditions. This optimizes throughput for large downloads but can add latency in gaming scenarios.
# Check current setting
netsh interface tcp show global
# Disable auto-tuning (try this first)
netsh interface tcp set global autotuninglevel=disabled
# Or set to restricted (less aggressive)
netsh interface tcp set global autotuninglevel=restricted
# Restore default
netsh interface tcp set global autotuninglevel=normal
Test your ping after each change and revert if it gets worse.
Nagle’s Algorithm
Nagle’s algorithm buffers small TCP packets together before sending — good for throughput, bad for gaming (adds 20–200ms of buffering latency). Disable it for game-critical connections:
- Open Registry Editor (
regedit) - Navigate to:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces - Find the interface for your network adapter (look for one with your IP in DhcpIPAddress or IPAddress)
- Create two DWORD values:
TcpAckFrequency= 1TCPNoDelay= 1
# Find your interface GUID
Get-NetAdapter | Select Name, InterfaceGuid
# Then in registry at:
# HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\{YOUR-GUID}
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\{GUID}" -Name "TcpAckFrequency" -Value 1 -Type DWord
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\{GUID}" -Name "TCPNoDelay" -Value 1 -Type DWord
Network Adapter Advanced Settings
Open Device Manager → Network Adapters → right-click your NIC → Properties → Advanced tab:
| Setting | Recommended Value |
|---|---|
| Interrupt Moderation | Disabled |
| Interrupt Moderation Rate | Off/Low |
| Receive Side Scaling (RSS) | Enabled |
| RSS Queues | 4 (match your CPU core count) |
| Flow Control | Disabled |
| Green Ethernet / Energy-Efficient Ethernet | Disabled |
| Power Saving Mode | Disabled |
| Speed & Duplex | 1 Gbps Full Duplex (don’t leave on Auto if you have a gigabit connection) |
Interrupt Moderation is the most impactful setting — it batches hardware interrupts together for CPU efficiency but adds latency. Disabling it means each packet triggers an immediate interrupt.
Disable Network Adapter Power Management
# Disable power management for the network adapter
$adapter = Get-NetAdapter | Where-Object {$_.Status -eq 'Up' -and $_.Name -notlike '*Virtual*'}
$adapter | Set-NetAdapterPowerManagement -AllowComputerToTurnOffDevice Disabled
Also in Device Manager → NIC → Properties → Power Management tab → uncheck Allow the computer to turn off this device to save power.
QoS Packet Scheduler
Windows QoS can reserve bandwidth for specific applications. Enable and configure:
# Disable QoS bandwidth reservation (it reserves 20% by default via Group Policy)
# Run gpedit.msc → Computer Configuration → Administrative Templates
# → Network → QoS Packet Scheduler → Limit reservable bandwidth
# Set to Enabled with 0%
Or via registry:
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Psched" -Name "NonBestEffortLimit" -Value 0 -Type DWord
DNS Optimization
Slow DNS = slower initial connection to game servers. Switch to a low-latency DNS:
# Set DNS to Cloudflare (1.1.1.1) for your main adapter
Set-DnsClientServerAddress -InterfaceAlias "Ethernet" -ServerAddresses ("1.1.1.1", "1.0.0.1")
# Or Google DNS
Set-DnsClientServerAddress -InterfaceAlias "Ethernet" -ServerAddresses ("8.8.8.8", "8.8.4.4")
Test DNS response times with Resolve-DnsName google.com or use DNS Benchmark (Steve Gibson’s tool).
Flush DNS Cache
ipconfig /flushdns
Run this if you’re seeing weird connection issues or stale DNS responses.
Disable Windows Update Delivery Optimization
Windows 10/11 can use your connection to upload Windows updates to other PCs:
- Settings → Windows Update → Advanced Options → Delivery Optimization
- Toggle Allow downloads from other PCs → Off (or restrict to local network only)
What Actually Makes the Biggest Difference
- Ethernet over WiFi — always. Even cheap Cat5e eliminates wireless jitter.
- Router QoS — prioritize your gaming PC’s traffic in your router settings
- Interrupt Moderation disabled on your NIC
- Nagle’s algorithm disabled via registry
- DNS switched to 1.1.1.1 or 8.8.8.8
Software tweaks have diminishing returns. A wired connection to a modern router has more impact than any registry change.