Reduce Gaming Latency (Ping) in Windows

Martin Brinkmann
Sep 10, 2012
Updated • Aug 6, 2019
Tutorials, Windows tips
|
32

When I connect to game servers I usually do not have a bad ping provided that automatic match making does not connect me to a server in Australia, Japan or the US (I'm from Germany). That happens at times, both in Team Fortress 2 and in Counter Strike Global Offensive, the two games that I play the most currently.

I do play a lot with friends and notice that their pings are usually a lot worse than mine. I used to attribute this solely to their Internet connection and did not really think that connection tweaks would change much in this regard.

Then I read about two Registry settings, TCPAckFrequency and TCPNoDelay, and how they can bring down the ping in games and other applications that work best with low latency. If you are a gamer and experiencing lag issues when connected to a close-by server, you may want to try tweaking those two settings to see if this makes your gaming experience more enjoyable.

Tip: use a free program like Network Latency View to record latency.

  • TCPAckFrequency "uses delayed acknowledgments to reduce the number of packets that are sent on the media".  Instead of sending an acknowledgment each time, acknowledgments are delayed.
  • TCPNoDelay determines whether nagling is enabled or disabled. Nagling "is a feature that combines several packets into a single, larger packet for more efficient transmissions".

This reduces the overall load on the network to optimize network traffic. The drawback is that latency may increase because of it. If you are using your PC mostly for gaming, or experiencing issues with lag in games, then you may want to see if turning off those features improves gaming latency on your end.

Fixing game lag

reduce game lag ping

You need to make two changes to your Windows Registry.

  • Use Windows-R to bring up the run box on the system.
  • Type in regedit here and tap on the enter key
  • Navigate to the following Registry key here using the tree-like structure on the left: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters\Interfaces
  • Here you need to go through the list of sub-keys to locate the network adapter entry that is used to connect to the Internet. If you are using DHCP, you need to look for DhcpIPAdddress here to find the correct adapter, otherwise you need to look for IPAddress here.
  • Most of the entries did not contain any useful data on a test system, so that finding the right one should be relatively easy.
  • If you do not know your local IP address do the following to find it out: Use Windows-R to bring up the runbox, type in cmd and hit enter. Here you then need to enter ipconfig to display the IP address.
  • Once you have located the correct key right-click it and select New > Dword (32-bit) Value.
  • Name it TcpAckFrequency and click ok.
  • Double-click the value afterwards and set its value to 1. (To restore the default setting, change the value to 2 or delete the key)
  • Now navigate to the following key: HKEY_LOCAL_MACHINE\Software\Microsoft\MSMQ\Parameters
  • Right-click on the key again and select New > Dword (32-bit) Value.
  • Name the new parameter TCPNoDelay
  • Double-click it afterwards and change its value to 1. (To restore the key at a later point in time change it to 0 or delete the key)

All that is left now is to reboot the PC, log off and on again, or kill and restart the explorer.exe process.

The effect depends a lot on the games you play, your Internet connection, and the servers you connect to. There have been reports by users who claimed that this reduced their ping times by 100ms and more in games they play.

Summary
Reduce Gaming Latency (Ping) in Windows
Article Name
Reduce Gaming Latency (Ping) in Windows
Description
Find out how to change two TCP networking parameters on Windows PCs to reduce latency when playing online games or using other network services.
Author
Publisher
Ghacks Technology News
Logo
Advertisement

Previous Post: «
Next Post: «

Comments

  1. yuri87 said on February 15, 2019 at 12:40 pm
    Reply

    go control panel >> add remove program >> left side press Turn Windows Features on or of >> check ture at Microsoft Message Queue ( MSMQ) server check for box inside it

  2. Saad said on December 26, 2018 at 11:07 am
    Reply

    I did all the steps instructed but ping didn’t changed, can you tell me why and how?

  3. Dylan Kusalewicz said on December 29, 2017 at 11:55 am
    Reply

    Hi when I restarted it it gave me a black screen can you help me?

  4. sahil said on June 14, 2017 at 8:53 pm
    Reply

    how to download it

  5. Sean said on September 7, 2016 at 11:13 pm
    Reply

    Uhm, There’s no folder under MSMQ for me. Help? Windows 10.

  6. sauchiet said on April 26, 2016 at 8:40 pm
    Reply

    hi if there is no parameters in my MSMQ can i just create a new one?

  7. Draxion said on September 27, 2015 at 9:02 am
    Reply

    Hey what happens when you increase the tcpack and TCPnodelay to a higher value then one. Because in Minecraft I know many people now are setting the value of one to numbers like 3,16 and one person even did 999 but he destroyed his CPU. So could you tell me what really happens when you increase those values?

  8. ijo said on March 25, 2015 at 8:40 am
    Reply

    thx it’s works

  9. hajagha said on October 20, 2014 at 1:10 pm
    Reply

    hello.
    i look alot but there is no parameter folder in my MSMQ folder.

    1. Martin Brinkmann said on April 26, 2016 at 8:50 pm
      Reply

      If you cannot find it, create the key.

  10. Matt said on February 9, 2013 at 3:14 am
    Reply

    I can’t find MSMQ where you said it was in the registry.
    What do I change for Vista, then? Assuming this was written for XP, and that the two are so fundamentally different, and that 7 resembles Vista…

    1. jotha said on November 23, 2013 at 2:58 pm
      Reply

      me too…
      i can’t to find MSMQ

      1. Martin Brinkmann said on November 23, 2013 at 3:35 pm
        Reply

        If you cannot find it, it may not be installed. Try this: http://support.microsoft.com/kb/256096

  11. Nickolas said on September 17, 2012 at 8:01 am
    Reply

    I use this software called GAMO at http://www.getamoveon.net to fix my latency in WoW

    Works like a charm

  12. Roy said on September 11, 2012 at 8:15 am
    Reply

    I used to edit the registry too but nowadays I just use Leatrix Latency Fix.

  13. Tomaccoboy said on September 11, 2012 at 1:49 am
    Reply
  14. Nilpohc said on September 10, 2012 at 10:30 pm
    Reply

    It did the job : ping dropped from 120ms to 30ms (rounded values).

    :-) Thanks Martin.

    1. Anonymous said on September 11, 2012 at 7:23 am
      Reply

      Nilpohc, this means faster internet speed? ( You said you are not a gamer).

      1. Nilpohc said on September 11, 2012 at 10:16 pm
        Reply

        Yep ! Absolutely. Don’t get me wrong : it doesn’t really improve bandwith but websites are reached faster so the overall browsing experience seems more fluid. So it works as expected.

        Still, there is one question that needs answer : what are the potential drawbacks ?

    2. Martin Brinkmann said on September 10, 2012 at 10:53 pm
      Reply

      You are welcome ;)

      1. FzStudios said on December 26, 2016 at 4:11 pm
        Reply

        im stuck at the HKEY_LOCAL_MACHINE\Software\Microsoft\MSMQ\Parameters

        i stopped at the MSMQ, but there is no arrow leading to peremeters. should i right click the folder or is there something else :/

  15. Yonatan said on September 10, 2012 at 6:12 pm
    Reply

    Most games use UDP to avoid this kind of delays.

  16. A&L said on September 10, 2012 at 5:33 pm
    Reply

    Can someone create a bat file to change these settings and to revert if they don’t get the desired results
    thanks

  17. akbarri said on September 10, 2012 at 4:39 pm
    Reply

    I dont find any reference frome MS for TCPNoDelay at HKLM\SYSTEM\CurrentControlSet\services\Tcpip\Parameters\Interfaces\{NIC-id}
    TCPNoDelay exist for HKLM\SOFTWARE\Microsoft\MSMQ\Parameters
    source: technet.microsoft.com/en-us/library/cc783904(v=ws.10).aspx

    1. Martin Brinkmann said on September 10, 2012 at 6:37 pm
      Reply

      You are right, I corrected the article. The second key is located elsewhere. Sorry for that.

      1. Nilpohc said on September 10, 2012 at 9:49 pm
        Reply

        Hum…I’m afraid the mentioned technet article applies only to windows server edition (written on top of page)…which explains why i can’t find the MSMQ registry key in my Windows 7 installation.

        Besides, i’ve just found some blog posts confirming the first version (adapter key as for “TcpAckFrequency”).

        That being said, i’m not a gamer but i’m willing to try the trick :-)

  18. Avi said on September 10, 2012 at 4:08 pm
    Reply

    I really want to play CS GO, but cudn’t do so because of lack of wired connection in my area and wireless ones sucks!!!!!!!!

Leave a Reply

Check the box to consent to your data being stored in line with the guidelines set out in our privacy policy

We love comments and welcome thoughtful and civilized discussion. Rudeness and personal attacks will not be tolerated. Please stay on-topic.
Please note that your comment may not appear immediately after you post it.