CS2 Margin Graph

Everything about latency. This section is mainly user/consumer discussion. (Peer-reviewed scientific discussion should go in Laboratory section). Tips, mouse lag, display lag, game engine lag, network lag, whole input lag chain, VSYNC OFF vs VSYNC ON, and more! Input Lag Articles on Blur Busters.
Post Reply
vnb
Posts: 113
Joined: 04 Nov 2025, 14:44

Re: CS2 Margin Graph

Post by vnb » 16 Nov 2025, 14:22

SammYrai wrote: ↑
16 Nov 2025, 13:27
vnb wrote: ↑
16 Nov 2025, 05:53
this can only happen if your ISP is using PPPoE.... if you are on IPoE (DHCP) lease time is too long to get a new IP address if you disconnect the ethernet WAN port then reconnect it....
I just want to add that most (big) cable providers where you get a IPoE DHCP leased address will discard your lease reservation after a few hours of downtime, so if you want to change your IP you have good chances if you just unplug your modem over night.
yes, i know.

i was saying that because the "trick" Slender proposed only works for PPoE... As for each PPP session you will have a new IP so disconnecting / reconnecting instantly wan port only works for PPPoE because new session = new IP. While in IPoE DHCP you always have a lease time so you have to wait X amount of time before the server assign your router a new IP.

From the bunch of ISP i have used in the past that use IPoE DHCP the lease time was 6h at minimum so yeah... if someone absolutely want to change IP as you said; just unplug the router/modem before going to sleep.

Maybe some ISP have shorter lease time but from my knowledge i have never seen a lease time under 6 min. Most of the time it is a couple hours...

urikawa
Posts: 19
Joined: 13 Mar 2024, 14:21

Re: CS2 Margin Graph

Post by urikawa » 21 Nov 2025, 04:12

Hello i have done two things to get the same result ingame.
Installed qosmate on openwrt and set my ftth 1gb up and down internet connection to 230mb / 135 mb :'( and no more jitter and A+ bufferbloat and good result net perfect in cs2)
I have put this settings the night when everyone play and when i have the problem :p the day i have A+ bufferbloat with 800mb down and 400 up
The other problem was frame pacing for cs2 i used RTSS fps limiter to use the "Nvidia Reflex" option (added with 7.3.5 update) disabled in nvcp low latency mode.
I capped in RTSS the frame at 400fps i have 360Hz 1440x1080 resolution with alienware qdled.
My setup is capable of doing 800 fps at that resolution and 320 fps for the 1% low, but the hitreg was bad with uncapped fps.
The feeling when playing is the best with this setup for my config with rtss.
You need to add to launch command in steam to allow rtss cap -allow_third_party_software cs2 launcher.
i also have setup this for battlefield 6 the hitreg is also better in feeling.

vnb
Posts: 113
Joined: 04 Nov 2025, 14:44

Re: CS2 Margin Graph

Post by vnb » 21 Nov 2025, 16:34

urikawa wrote: ↑
21 Nov 2025, 04:12
Hello i have done two things to get the same result ingame.
Installed qosmate on openwrt and set my ftth 1gb up and down internet connection to 230mb / 135 mb :'( and no more jitter and A+ bufferbloat and good result net perfect in cs2)
I have put this settings the night when everyone play and when i have the problem :p the day i have A+ bufferbloat with 800mb down and 400 up
The other problem was frame pacing for cs2 i used RTSS fps limiter to use the "Nvidia Reflex" option (added with 7.3.5 update) disabled in nvcp low latency mode.
I capped in RTSS the frame at 400fps i have 360Hz 1440x1080 resolution with alienware qdled.
My setup is capable of doing 800 fps at that resolution and 320 fps for the 1% low, but the hitreg was bad with uncapped fps.
The feeling when playing is the best with this setup for my config with rtss.
You need to add to launch command in steam to allow rtss cap -allow_third_party_software cs2 launcher.
i also have setup this for battlefield 6 the hitreg is also better in feeling.
what's your gpu / mobo / cpu? you are saying that you have bad "frame pacing in cs2"... BTW the game is completely broken not only for you but everybody else... Nobody have good frame pacing in cs2 even with rtx4090 and 9800x3d...

Also pretty interesting that you say uncapped fps give you worse hitreg because for me it is the exact opposite ? But i prefer to play with capped FPS because i have higher 1% low with capped FPS.

2 of my friends say capped FPS feels better hitreg and 2 other feels like uncapped FPS feels better for hitreg (all lvl10 faceit) so very inconsistent; lol. Same thing on twitter pretty much 50/50 on capped vs uncapped.

the game definitely still needs a lot of works even 2 years after it was released it still feels like beta, lol. In CSGO the dev took like 5-6 years before the game felt "close to perfect". so i guess we still have at least 3 years of waiting before having a more polished game, unfortunately...

urikawa
Posts: 19
Joined: 13 Mar 2024, 14:21

Re: CS2 Margin Graph

Post by urikawa » 22 Nov 2025, 09:42

My config is pretty optimize for cs2 i play since half life mod of cs and i was a lan player too
Before i would have agree for different setup i have tested so much now and the better is this own you could give a try :) bios is tuned also
I can give all my optimization and bios settings if you need

Router is VEP1400-X DELL 8 Core with openwrt 24.10.4 and qosmate
CPU: AMD Ryzen 7 9800X3D with Alphacool Eisbaer Pro Aurora 420 AIO
MOTHERBOARD: ROG CROSSHAIR X870E APEX
PSU: ATX 3.1 - NZXT C1000 GOLD
GPU: MSI RTX 5080 TRIO OC GAMING 16G
RAM: Lexar 6200Mhz CAS26
Infinity Fabric 2100
Storage: MSI SPATIUM M580 PCIe 5.0 NVMe 2TB
Network: Emulex 10GB
Display: Dell Alienware AW2725DF - 360Hz 2K QDLED
OS: Windows 11 IoT Enterprise LTSC (Debloated with NTLite)
Keyboard : Wooting 80HE @ 8 kHz
Mouse: OP1 8khz v2
Headset: Logitech G PRO X 2 LIGHTSPEED
Mousepad: Artisan Ninja FX Zero
Sensitivity: Windows 2 - Ingame 0.5 @ 1600 DPI
Launch options: -allow_third_party_software
FPS Heaven CS2 Benchmark 1% low 320 fps 1440x1080 4:3 Strech
https://www.waveform.com/tools/bufferbl ... 5337800b2c
dps.PNG
dps.PNG (115.22 KiB) Viewed 9643 times

darkbebe
Posts: 34
Joined: 10 Apr 2025, 07:11

Re: CS2 Margin Graph

Post by darkbebe » 29 Dec 2025, 05:59

Hi ,
do you know if there is a command to see the rcv margin download graph please? we have the command that shows the upload but not download :?
i have good upload rcv margin and bad download rcv margin. when my game is good the download below rcv margin is low

i've found out that one of my island's mobile provider connection has good download rcv margin like 8%. but their upload rcv is bad sadly & has lot of jitter and red line. the hit register feels amazing half of the time , a feeling that i rarely get with fiber isps & mobile providers !

i've read a guy somewhere who was able to change his upload rcv by restarting the game few times & then have a nice smooth game.
if i can see download rcv graph maybe i could do the same for my fiber connection

Have a good day

vnb
Posts: 113
Joined: 04 Nov 2025, 14:44

Re: CS2 Margin Graph

Post by vnb » 10 Jan 2026, 23:54

darkbebe wrote: ↑
29 Dec 2025, 05:59
Hi ,
do you know if there is a command to see the rcv margin download graph please? we have the command that shows the upload but not download :?
i have good upload rcv margin and bad download rcv margin. when my game is good the download below rcv margin is low

i've found out that one of my island's mobile provider connection has good download rcv margin like 8%. but their upload rcv is bad sadly & has lot of jitter and red line. the hit register feels amazing half of the time , a feeling that i rarely get with fiber isps & mobile providers !

i've read a guy somewhere who was able to change his upload rcv by restarting the game few times & then have a nice smooth game.
if i can see download rcv graph maybe i could do the same for my fiber connection

Have a good day
I said it before and i will say it again. the number "x% below desired recv margin" is not the issue, it has already been confirmed by a Valve engineer that it doesn’t affect the gameplay at least for the downstream. Here is why :

By default the CS2 engine expects a downstream recv margin of 5ms and an upstream recv margin of 5ms

Look at the build info, bottom left corner.
AA-zz-BB-xx-xx

AA = upstream recv margin / BB = downstream recv margin / the number in between them 'zz' is your ping.

I believe there is an issue currently with the game engine; specially with the upstream value (AA) because anything under 07 would basically make the engine to "slow you down" -- meaning your movement / bullets.

In other words even though the CS2 engine expect a 5ms up and a 5ms down recv value; it is not capable YET of processing anything under 07ms (AA) -- from client to server.

How do i know? lately, I have extensively tested that on a local LAN with fiber and 1ms ping + multiple PCs.

When you get slowed down (having 06 or 05) you start to have yellow lines in the margin graph like i posted in my first comment

AA number being 07 up to 15 : Green margin graph, no yellow lines
AA number being 06 : yellow lines starts showing up in the margin graph
AA number being 05 : yellow lines are like 40% of the margin graph

(the lower the AA numbers, the faster your PC and internet connection are sending update tick positions to the server)

yellow lines means roughly that the client (your pc) is running "faster" than the server so in order to be in-sync the server has to slow you down -- the impact you feel? Your shots take longer to hit, enemy movements are erratic, your strafes are delayed.

With the animgraph 2 update that is around the corner this will be fixed (HOPEFULLY); i have read that animgraph 1 (right now) is sending too much data to servers, meaning that the servers have a harder time calculating all the players positions at each subtick so this is why the servers cannot process under 07ms upstream margin for the time being.

While with animgraph 2 there will be massive reductions in data being sent from clients to server; so the servers will have more headroom for processing, so they will probably be able to go down to the original value set of 05ms upstream margin meaning the yellow lines in margin graph would hopefully disappear ( and all it's bad symptoms too).

Time will tell us, one thing for sure is that the game engine is not in it's best state currently. Main issues is that the network side is using too much data; and servers can’t process 128 ticks equivalent because you need a fuck ton of processing power and it is not profitable enough to pay for more powerful servers; don't forget Face IT and VALVE are businesses and they are putting their profits before anything else...

vnb
Posts: 113
Joined: 04 Nov 2025, 14:44

Re: CS2 Margin Graph

Post by vnb » 30 Jan 2026, 19:47

:arrow: THIS IS A FOLLOW-UP to my previous reply

I’m pretty sure that some Valve devs are lurking on this forum and reading what we write, because they changed something network-related (client → server) in the last “major update”.

I didn’t want to express myself too quickly like those “fake hype CS2 voodoo” accounts on Twitter you know, those people who think they’re some kind of CS journalists or debunkers, creating false hype around CS2 and every single update as if Counter-Strike is going to completely change and magically get fixed after each patch :lol: Anyway…

Putting aside the nice things Valve actually did improve—like server optimization for better headroom, lower audio latency, etc.

What they really did network-wise, is this: they increased the minimum threshold for the packet queue length.

Basically, a higher buffer for server processing.

It seems the servers now have to wait a bit longer before processing your incoming packets (until the minimum queue fills up).

What does this change? Lower overhead—but this isn’t exactly a “fix”, more like a botched repair, if you will.

Basically we are back to the state of the game where you need to swing as much as possible because the swing advantage now is higher than before.

I still believe that only AnimGraph 2 will be capable of truly changing how the game works at its core. Until then, we’re essentially still beta testers for the devs, as crazy as that may sound…

Markushevich
Posts: 3
Joined: 28 Feb 2024, 06:58

Re: CS2 Margin Graph

Post by Markushevich » 16 Aug 2026, 11:39

vnb wrote: ↑
04 Nov 2025, 16:35
Hello,

Intro
:arrow: The goal of this post if to gather as much information as possible about the CS2 graph. I'm facing most of the issue that you guys have, i am in the same situation as you; but let's try to keep this post as constructive / informative as possible and please no rent on how bad the game is, etc.

If you have no data to share; please avoid commenting.

My situation
:arrow: In my situation since i got fiber I noticed that in the CS2 Margin Graph i have frequent yellow lines, those were not present when i had coax cable. The more yellow lines the less responsive my input feels (delayed strafe on keyboard) and delayed mouse input, in general everything will be delayed. Both my jitter are at 0ms straight lines but the gameplay feels very choppy and delayed, even though i have 500+ FPS on a 360Hz Zowie monitor.

Data

:arrow: In order to test and have the full pictures inside CS2 go to :

Your settings --> Game --> scroll at the bottom --> put ALWAYS on the 5 settings in Telemetry or apply those 4 commands in CS2 console

cl_hud_telemetry_frametime_show 2

cl_hud_telemetry_ping_show 2

cl_hud_telemetry_net_misdelivery_show 2

cl_hud_telemetry_serverrecvmargin_graph_show 2

Here are my results : 1.png


:arrow: If you are on fiber or you think you have CS2 issues related to network please apply the commands and check the Margin Graph (should be the lowest graph on top right corner of your monitor) and share the results here.

make sure that you test on multiple server and locations. My results are the same no matter the server and location.

----------------------------------------------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------------------------------------------------

FOR ANYONE READING IN THE FUTURE; HERE IS THE CONCLUSION
vnb wrote: ↑
15 Nov 2025, 00:21
OKAY :idea:

Very important update! :

I found the culprit to my issue : upstream UDP jitter

Here is the proof :
upstream jitter capture.PNG


So even though my XGS-PON Fiber connection is 2Gbp/s UP and Down capable, this is only a 100mbp/s symmetrical test.
As you can see the result above the RX latency (downstream) stays under 1 ms but the TX latency (upstream) is never below 10ms and the value varies a lot which is not good. So waveform bufferbloat and most other "tools" to measure latency are not giving us the full pictures and can somehow overshadow the "raw results" of your ISP... Case closed. Now time to "fight" with my ISP wish me luck :cry:

Conclusion :idea: : i found the culprit to the low in height yellow lines in the CS margin graph after months of research and testing, Valve network engineer and other ppl on twitter and reddit that consider themselves "expert" on the matter were not able to give me a conclusive answer.

well good news if you have the same issue as me (too much yellow lines low in height in cs margin graph) even tho you have no packet loss or bad network values in game, well the issue is :arrow: upstream UDP jitter as shown in my screenshot above.
Any follow up after your conclusion? I have the same symptoms on face value as you. In CS I have a constant up jitter of 8-12ms with spikes every few seconds over 30. In margin graph it is never smooth. Lots of yellow bars mixed in. My internet is Spectrum 1 gig/40mb. I use a CyberPower CP1500PFCLCD-R 1500 sinewave UPS on my pc + modem + router. Using nanopi router and fqcodel for no bufferbloat and it doesn't fix this issue in game. CS registration is abysmal? switching internet isn't an option. In my case, I feel this same thing has been present since dawn of time and doesn't seem like it's restricted to cs but any game. upstream UDP jitter... ok... any solution/ideas?

Image

soul4kills
Posts: 108
Joined: 01 Aug 2025, 01:30

Re: CS2 Margin Graph

Post by soul4kills » 18 Aug 2026, 22:19

Not sure what this thread is about. But wanted to provide my screen shots if it helps. I do not experience any desync or any network related problems. I used to but not no more after I figured it all out.

I have a 5900x with rtx2060. Connection is 160hz on a AX210 intel wifi card with a modded driver that enables the intel killer features. ATT fiber connection with 380/380 mbps connection. Disabled all "Offload" features of the wifi card to reduce network tasks on the CPU. Using ATT modem/router bridged to a Asus RTAX-86s router with custom "Asus Merlin" firmware. Turned off "ALL" of router features to reduce packet overhead and management frames. I do use a custom "FlexQOS" to give my computer priority traffic. Even with the usual high bandwidth traffic from family the QOS does well to prioritize my traffic, I see no blips or packet loss when gaming unless it's coming from my computer directly as their traffic would never saturate the 380/380 connection.

I am constantly connected through VPN setup on the router by nordVPN. When the VPN's IP i'm connected to is under high load, my ping goes up and it does affect my gameplay but it's expected and doesn't ruin my experience too much. Usually is reflected in the ping where lowest is 18ms to highest at 40ms. So it's obvious when I will experience the delay. Even at the highest ping the delay is minimal and doesn't affect hit reg. It only affects peekers advantage. My shots still register as expected and haven't experienced the "I'm pretty sure that shot hit" since I fixed all my latency problems.

Code: Select all

[Client] cl_ticktiming. . . . . TOTAL:  68.8ms (may not be sum of below due to rounding and averaging)
[Client]   Sending User Commands . . :  33.7ms
[Client]     FirstInput -> NetSend . :   8.5ms (pessimistic measurement, typically = 1 tick - half frame time)
[Client]     Network latency . . . . :  12.5ms (assumed, RTT=25ms)
[Client]     Server recv margin. . . :  12.7ms (cl_tickpacket_desired_queuelength = 0)
[Client]   Server sim. . . . . . . . :   2.7ms
[Client]   Receiving server updates. :  30.7ms
[Client]     Network latency . . . . :  12.5ms (assumed, RTT=25ms)
[Client]     Client recv margin. . . :   7.1ms (+ 5.7ms frame quant hidden by interp = 12.7ms) (cl_clock_buffer_ticks = 0) 
[Client]     Client interpolation. . :   0.0ms (cl_interp_ratio = 0)
[Client]     Client sim + other . . .:   8.4ms
[Client]     Render. . . . . . . . . :   2.8ms

[Client] cl_ticktiming. . . . . TOTAL:  64.5ms (may not be sum of below due to rounding and averaging)
[Client]   Sending User Commands . . :  32.7ms
[Client]     FirstInput -> NetSend . :  11.7ms (pessimistic measurement, typically = 1 tick - half frame time)
[Client]     Network latency . . . . :  13.0ms (assumed, RTT=26ms)
[Client]     Server recv margin. . . :   8.1ms (cl_tickpacket_desired_queuelength = 0)
[Client]   Server sim. . . . . . . . :   1.7ms
[Client]   Receiving server updates. :  28.1ms
[Client]     Network latency . . . . :  13.0ms (assumed, RTT=26ms)
[Client]     Client recv margin. . . :   5.5ms (+ 4.4ms frame quant hidden by interp = 9.9ms) (cl_clock_buffer_ticks = 0) 
[Client]     Client interpolation. . :   0.0ms (cl_interp_ratio = 0)
[Client]     Client sim + other . . .:   6.9ms
[Client]     Render. . . . . . . . . :   2.7ms
Attachments
Screenshot 2026-08-18 193307.png
Screenshot 2026-08-18 193307.png (497.56 KiB) Viewed 1036 times
Screenshot 2026-08-18 193413.png
Screenshot 2026-08-18 193413.png (436.64 KiB) Viewed 1036 times
Screenshot 2026-08-18 194736.png
Screenshot 2026-08-18 194736.png (565.19 KiB) Viewed 1036 times

vnb
Posts: 113
Joined: 04 Nov 2025, 14:44

Re: CS2 Margin Graph

Post by vnb » 19 Aug 2026, 03:37

Hey OP here so;

Arguably THE MOST IMPORTANT network command in the game :

cl_hud_telemetry_serverrecvmargin_graph_show 2

then you need to analyse your build info (bottom left corner)
buildNR.jpg
buildNR.jpg (5.21 KiB) Viewed 988 times


You wanna look to the numbers after the S

AA-XX-BB

AA is upstream recv margin (Should stay at all cost below 15)
XX is your ping (14 in this case)
BB is the server recv margin (Should stay between 04 and 07, if it's higher than 07 lag compensation kicks in. 05 being the perfect value)

The whole challenge that CS devs are facing now is to optimise the network communications between CLIENT -> SERVER as much as possible. (so the AA numbers)

Not the other way around as SERVER -> Client (BB) has already been fixed since a couple months after the Beta. In fact if you analyse build infos, when CS2 was in BETA state the SERVER -> Client path was ALWAYS being interpolated (build info was showing server recv margin of 10 for all the players) and we already know that anything above 07 kicks-in lag compensation.

Ideally in a perfect environment the build info would look like this : 05-YOUR PING-05 but for now it is not yet possible to hit those numbers for an extended amount of time.

In other words even though the CS2 engine expect a 05ms up and a 05ms down recv value; it is not capable YET of processing it. Mainly due to a not polished enough, heavy networking code. Which is very taxing for the server CPU. This is also why they can't implement 128 tick-like servers cuz it will break the servers due to it demanding an unimaginable amount of CPU calculations with the current state of the game.

massive reductions in data being sent from Clients -> Server are in the works by devs; the servers will have more headroom for processing, so they will probably be able to go down to the original value set of 05ms upstream margin.

Will it happen soon? I don’t think so.

Post Reply