Search RU

How to Use net_graph

30 Jan. 2021

Counter-Strike: Global Offensive offers a whole bunch of very useful built-in features. Today, CS.MONEY is going to talk about one of the most convenient things the player can use, namely net_graph.

What Is It?

Net_graph is the game’s built-in system that monitors connections. It sounds complicated, but it’s actually no rocket science at all. To enable the display of this information, you must enter the “net_graph 1” console command. After that, a table of three lines and four columns will appear at the bottom of the screen. 

What Info Does It Show? 

Let’s start off with the basic things. The very first parameter, “fps,” is the number of frames per second. For a comfortable experience, this value should be 2 or more times higher than the monitor’s refresh rate. 

In the first line, you can also see the parameter called “ping” — which is the server’s response time in milliseconds. With a ping of up to 30, the connection to the server is considered excellent; up to 70 is good; up to 100 is acceptable. A ping greater than 100 won’t be comfortable for competitive gaming, and at 140 and above, playing becomes distinctly inconvenient. 

Right below the ping, you can see the “ver” value. This is quite simple. Ver shows the current version of the game. If the game is automatically updated in Steam, the version will always be up-to-date and there’s no much sense in this parameter. 

On the bottom left is the “tick.” The value of this parameter is equal to the current tickrate of the server. For matchmaking, it’s 64; for third-party servers, it’s normally 128. All competitions are played on servers with a tickrate of 128. This indicator will also come in handy when starting your own server. 

Finally, the last value in the third line shows what type of server the client is currently connected to. In the menu, the value will be “offline,” when training with bots, it’ll switch to “local,” and during matches over the network, to “online.”  

Remaining Parameters

The remaining five parameters — “sv,” “loss,” “choke,” and two “var”s — are a bit more complicated. Loss is the percentage of packets lost in exchanges between the client and the server, shown in percents.

The game and the server don’t communicate with each other in an endless stream of information, but rather in portions. These portions of information are called packets. Packet loss causes horrible lags, problems with registering hits, and a bunch of other negative effects in the game. Ideally, the loss value should never exceed zero. A loss of 2–3% is considered acceptable. Anything higher results in an inconvenient experience. 

“Choke” shows connectivity problems on the client’s side. If the information flow exceeds the client’s receiving limit, choke begins to increase. The good news is, a modern connection more than covers the needs of Counter-Strike: Global Offensive

To fix any choke-related problems, you only need to change the settings, namely the rate value. To do so, just open the console and enter “rate 786432.” The value of this variable can be different, but we recommend this one. It should fix the problem. 


The last three parameters are even more complicated, but they are also the most informative. The “var” in the first line is a client-side parameter that shows the average deviation in the rendering of the last 1000 frames. Sounds pretty complicated, right? 

There’s no need to have a thorough understanding of what and how is counted for this variable. The critical thing to remember is a simple rule: the lower the client’s var, the better. If you notice noticeable jumps in this variable, consider limiting frames per second with the fps_max command. At least, this is exactly what Valve recommends doing in this case. 

“Sv” and “var” in the third line are indicators of the current server. One look at them will be enough to determine the quality of the server. Sv shows the time it took to process the last data packet. The “+/-” value next to it is the average deviation for the last 50 data packets. 

The maximum sv value for servers with a tickrate of 64 is 15.6 milliseconds. A value exceeding this threshold means the server is failing. For servers with a tickrate of 128, the sv limit is half as low, 7.8 milliseconds.

The best game performance is achieved when this variable is 1.5 milliseconds lower than max, namely 14 milliseconds for a tickrate of 64 and 6.3 milliseconds for a tickrate of 128. 

Finally, the server’s var is the server’s “number of frames.” While the servers themselves don’t render any frames, they do calculate them. The var parameter shows the time spent on each frame. You can convert it into real frames per second using the formula var/1000. 

However, there’s no need to do such math. Remembering two values will be enough. For 64-tick servers, the value of var shouldn’t exceed 15 milliseconds, and for 128-tick servers, 7.5. It’s basically the same math that was involved in the sv parameter. 

The other two parameters, “up” and “cmd,” merely indicate how many packets the client sends and receives per second respectively. As to these, the most important rule is that they both have to match the tickrate of the server. 

That’s it. Now you are a genuine expert in net_graph and can determine the quality of a server and connection at one glance.

30 Jan. 2021

Leave a comment

Send a comment