Optimize Network Connection in Windows for Speed and Stability

Guide Optimize Network Windows

You may be getting the Internet speed you are paying for, but that doesn’t mean your network connection is in an optimal state. Higher latency, lag spikes, and occasional throttled download speed are common problems you may still face. Thankfully, you can minimize most of these issues and get fast and stable Internet by tweaking Windows settings. This complete guide shows how to optimize the network connection on a Windows PC.

Note: depending on your network and device, these changes can also negatively impact your system. It’s better to create a restore point before making these changes to have a way to switch back in case it doesn’t go well.

Let’s start with the tweaks in the main UI of Windows, such as the Settings and Control Panel. Many of these aren’t optimized by default for the least latency and optimum performance.

Optimize Network Adaptor Settings

Press the Windows + R keys, and type ncpa.cpl in the Run dialog to open network connections.

Right-click on your active network, and select Properties.

Network Adaptor Properties

Click on Configure, and move to the Advanced tab in the next window. Adjust the network settings as listed below to configure them for the best network performance:

  • Energy Efficient Ethernet: Disabled
  • Flow Control: Disabled
  • Gigabit Master Slave Mode: Auto-negotiation
  • Interrupt Moderation Rate: Moderate (Experiment with High if CPU resources aren’t a concern.)
  • IPv4 Checksum Offload: Rx & Tx Enabled
  • Large Send Offload (both IPv4 and IPv6): Enabled
  • Legacy Switch Compatibility Mode: Disabled
  • Link Speed Battery Saver: Disabled
  • Maximum Number of RSS Queues: 2 Queues (Selecting more will pressure the CPU for minuscule gains.)
  • PTP Hardware Timestamps: Disabled
  • Receive Buffer: 512KB
  • Receive Side Scaling: Enabled
  • Software Timestamp: Disabled
  • Speed & Duplex: Auto negotiation
  • System Idle Power Saver: Disabled
  • TCP Checksum Offload: Enabled
  • Transmit Buffers: 512
  • UDP Checksum Offload: Enabled
  • Wait for Link: Auto negotiation
Network Adaptor Optimize Settings

Move to the Power Management tab, and disable the Allow the computer to turn off this device to save power option to ensure uninterrupted network activity.

Power Management Disable

Manage Power Settings

No matter your PC power plan, I am sure you don’t want it causing network interruptions. Follow the steps below to manually optimize it to avoid network problems:

Search for “power plan” in Windows Search, and select Edit power plan. Click on the Change advanced power settings button. Open Wireless Adaptor Settings, and set Power Saving Mode to Maximum Performance.

Wireless Adaptor Settings

Additionally, if you are using a USB device for network connectivity, open USB settings, and disable the USB selective suspend setting.

Set Metered Connection

If you set your connection to metered, Windows will avoid running background network processes on it, such as downloading Windows updates. I found it very useful for removing lag spikes while gaming.

Go to Windows Settings -> Network & Internet -> Properties, and toggle the Metered connection option on.

Windows Metered Connection

Command Prompt Commands to Optimize Network

There are many things you can do with Command Prompt, including using Network Shell (netsh) commands to optimize network settings for lower latency and a stable connection.

Search for “cmd” in Windows Search, then right-click on the Command Prompt, and select Run as administrator.

Copy and paste the following commands one after the other. Make sure you press the Enter key after each command, and let it finish.

netsh int tcp set global chimney=enabled
netsh int tcp set global dca=enabled
netsh int tcp set global netdma=enabled
netsh int tcp set global ecncapability=enabled
netsh int tcp set global autotuninglevel=normal
Command Prompt Commands Optimize Network

If you face any problems, undo the changes by replacing enabled with disabled in each command before running them.

Optimize Network Using Windows Registry

There are many ways to optimize the network speed using Windows Registry, but we’re focusing on the most effective hacks.

Warning: incorrect changes in the Registry can damage Windows and cause data loss. Make sure you back up the Registry before applying the changes.

Decrease Latency and Increase Download Speed of Large Files

These tweaks can potentially decrease latency and increase download speed by minimizing acknowledgment checks.

To open Windows Registry, type regedit and click on Registry Editor.

Move to the below location by copy/pasting it in the top search bar and pressing Enter for direct access.

Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces

There will be multiple GUIDs here. To find your network adaptor GUID, open Command Prompt, and type netsh lan show interfaces for a wired connection or netsh wlan show interfaces for a wireless connection. It will list a bunch of information along with the GUID.

Select the same GUID in the Interfaces Registry entry, right-click in the right column, and select New -> DWORD (32-bit) Value.

Name this key “TcpAckFrequency,” double-click on it, and set its value to 1.

Following the above process, create two more DWORD keys. Give the first key the name “TCPNoDelay,” and set its value to 1. Name the second key “TcpWindowSize,” and set its value to 65535.

Optimize Network Latency Registry

Improve Network Stability and Responsiveness

The following hacks will make your connection more stable by quickly finding bad connections and making more attempts to deliver packets once a connection is already established.

Move to the below location in the Registry:

Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

In the Parameters entry, create two DWORD keys with the names “TcpMaxDataRetransmissions” and “TcpMaxConnectRetransmissions.” Set the value of the first key to 5 and the value of the second key to 3.

Optimize Network Stability Registry

Third-Party Apps to Optimize the Network

There are dedicated apps to configure the Windows network settings for the best performance. They automatically apply fixes based on your current settings, and you can easily undo it if needed.

TCP Optimizer

TCP Optimizer is perfect for both beginners and newbies and lets you quickly apply the optimal network settings with just two clicks. If you want more control, enable a custom mode, which lets you apply registry hacks using its simple interface.

Tcp Optimizer

It’s free to use and has a built-in undo option to apply the Windows default network settings.

cFosSpeed

cFosSpeed is a traffic shaper app that can optimize traffic based on your needs. It has two modes: one lets you focus on lower latency for gaming and the other higher bandwidth for high-speed downloads. You can also individually manage network priority for each app to focus network resources on important apps.

Cfosspeed

It has a fully functional 30-day trial plan, after which you’ll have to buy the license for $18.59.

NetOptimizer

NetOptimizer is another app that’s similar to TCP Optimizer, with many network optimization settings. Most of the tweaks it makes aren’t available in the TCP Optimizer app, so I am listing it here. You can scan your PC to see which optimizations are already applied, then apply the rest.

Netoptimizer

You can only adjust two options in the free version. To apply all the optimizations, get a license for $29.95.

Bonus

Another setting can be adjusted in the Group Policy editor if you have a Windows Pro or Enterprise version. Type “group policy” in Windows Search, and open Edit group policy.

Go to Computer Configuration -> Administrative Templates -> Network -> QoS Packet Scheduler. Open the Limit reservable bandwidth setting, set it to Enabled, then adjust the Bandwidth limit (%) to 0.

Limit Reservable Bandwidth Gped

By default, Windows keeps 80 percent of network bandwidth reserved for system processes and Windows updates. When you set this to 0, the system will not prioritize updates when you are doing something in the foreground that consumes most of your bandwidth. It makes sure your personal apps/games get priority when system and foreground apps are fighting for resources.

All of the above tweaks are already applied on both of my PCs, and I never had any trouble with latency or lag spikes (at least on my end). You can use an Internet speed test site to see how these changes impact your download speed and ping.

Image credit: Unsplash. All screenshots by Karrar Haider.

Subscribe to our newsletter!

Our latest tutorials delivered straight to your inbox

Karrar Haider

Karrar is drenched in technology and always fiddles with new tech opportunities. He has a bad habit of calling technology “Killer”, and doesn't feel bad about spending too much time in front of the PC. If he is not writing about technology, you will find him spending quality time with his little family.