To find what makes CS2 stutter or run at a low frame rate, go in this order: measure one repeatable scene first (an FPS counter shows the average, a capture shows the slow frames), then check the frame cap the game saved (fps_max), the video menu, and the refresh rate set inside CS2. Much of the performance advice for CS2 is a list of launch options copied forward from CS:GO. The engine changed; the lists did not. Worse, CS2 ignores an option it does not know without saying so — the silence looks exactly like it working, which is why the same strings survive in people's Steam boxes for years.
Start with one measurement
The steps start with a capture: a repeatable scene, same map, same route, same length, before you change anything (reading the benchmark covers how). Without a baseline, every step below produces an opinion instead of an answer.
1. Is it the machine, or the match?
If frame times are healthy through the event and the world jumps anyway, your PC is not the problem: high ping and lag spikes is the page for that. Before you look for a network setting inside the game: CS2 runs at 64 Hz with sub-tick timestamps and no client-side option raises that, and cl_interp was made non-writable in 2024 because user-set values caused rubber-banding. The supported control is the buffering setting under Settings → Game.
2. Check the frame cap you already have
CS2 saves its own frame cap. A value typed into the console once is persisted into the game's saved settings and outlives the option that set it, which is how people end up bottlenecked by a number they set two years ago; the game's own default is fps_max 400. If your frame rate is suspiciously stable and suspiciously round, you are at a cap rather than a limit. Set it in the game, or from w0a's autoexec card, which writes the line every time — including the default — so an old value cannot quietly survive.
Which value is right depends on which side limits you: on a GPU at full occupancy the render queue deepens, and a cap slightly above your refresh rate keeps it short. GPU not at 100% settles that in two minutes.
3. Launch options: what still does something
The Launch Options page reads your box option by option and says what each does. Nothing there is called "safe" — Valve publishes no launch-option list for CS2, so anything quoting an official list is quoting itself.
Does nothing in CS2 (the folklore):
-novid— the intro still plays; skip it with Enter, Space or Escape.-tickrate— nothing on official servers: CS2 runs at 64 Hz with sub-tick timestamps and no client-side option raises that. In CS:GO it only affected servers you hosted.+cl_updaterateand+cl_cmdratenever existed in this engine.+rateis real, but its default of 786432 is already plenty — the ceiling is 1000000 and no measurement shows a gain from going there.-full,-windowed,-refresh,-freq,-noforcemaccel,+net_graph— display mode and refresh rate are saved by the game, the engine takes mouse input as raw input, and the net graph moved to Settings → Game → Telemetry.-w,-h,-sw— the same answer: resolution is saved by the game and set in Settings → Video. CS2 does not read them.-high— CS:GO-era. The CS2 binaries do not read it and Valve never documented it for CS2. w0a raises the game's priority per executable instead, and undoes that with everything else.-threads N— CS:GO-era. CS2 sizes its own thread pool by core type and does not read the option.-nojoy— CS2 has ignored joysticks by default since May 2024, so it does nothing.-joyis the option that exists now.-nod3d9ex,-heapsize,-nopreload,-noqueuedload,+mat_queue_mode— the CS:GO-era block, written for an engine this game replaced.
Costs you something:
-dxlevel: stale, and Valve's own instruction is to remove it — and because CS:GO and CS2 share one Steam entry, a value typed years ago can still be sitting in the box today.
Changes what you are allowed to join:
-insecurestarts the game with VAC off. Not a ban — the client refuses every secure server, so matchmaking stops working with nothing on screen to explain it.-toolsis the same blocked state plus an unauthenticated console socket.-allow_third_party_softwareturns Trusted Mode off so blocked overlay or capture software can attach. No ban and no matchmaking block, but Valve says your Trust Factor may be affected — quietly worse lobbies, with no appeal.-untrusteddoes the same thing, and it is real rather than folklore: this is the flag the CS2 client itself restarts with when you press its own untrusted-mode button. Blocked overlays can attach, and the same Trust Factor note applies.
Real: +exec autoexec, to run a config every start. -vulkan genuinely switches renderer, but it is not the default configuration on Windows — measure it yourself rather than treating it as a recommendation.
4. The video menu is where the frames are
Four things worth knowing:
- Check the refresh rate inside CS2. The game keeps it independently of the Windows setting and reports no error when it is wrong — you can play at 60 Hz on a 144 Hz monitor for months without noticing.
- Anti-aliasing is the most expensive setting, and its cost depends on whether you are CPU- or GPU-limited. Shadow quality is next, and texture detail is not free either.
- Bilinear filtering is a habit inherited from CS:GO: it trades a little average frame rate for worse 1% lows, which is where stutter lives.
- Upscaling only helps a GPU-limited machine, and stretched 4:3 is a visibility choice rather than a performance one.
w0a's Video Settings page prints the measured cost beside each and writes cs2_video.txt directly; if a change made things worse, CS2 video settings restores the copy taken before the first write.
If it started after an update, give it an evening first: an update invalidates the shader cache, the game recompiles as you play, and the stutter fades. Do not benchmark inside that window — you would be measuring the compiler, and shader compilation stutter covers why deleting the cache is the opposite of a fix.
5. Anti-cheat requirements, stated honestly
Tournament anti-cheats can ask a player for six platform security requirements: Secure Boot, TPM 2.0, UEFI firmware with a GPT system disk, virtualization-based security with DMA protection, memory integrity, and boot settings left at their defaults. Not every player is asked for all six: FACEIT asks everyone for TPM 2.0 and Secure Boot, and only some players for memory integrity. w0a reads all six from your machine and each row says where the switch is. The card changes none of them. The only one w0a can change is memory integrity, from its own box on the Optimizations page, and it refuses to while FACEIT is installed.
What this page will not do is tell you that some configuration keeps you safe from a ban. Nobody outside the anti-cheat vendor can promise that; what can honestly be done is the above.
One consequence is worth accepting rather than fighting: virtualization-based security costs processor time and can add jitter (how much on your machine has not been measured), and it still stays on — tournament anti-cheats can ask a player for it, and from October 2026 Windows quality updates start switching memory integrity on for eligible devices, gradually and not where it was turned off before (Microsoft). In the other direction, w0a's background engines refuse by name to touch anti-cheat and security processes: the privileged handle that would take is exactly the pattern those products watch for.
FPS drops or input lag with FACEIT running
FACEIT's own troubleshooting page, FPS drops / input lag issues, says these "may be caused by another application which interacts with the game". What it asks you to check, in its order:
- Two named cases. For AMD processors it links a separate FACEIT article with "a known fix for performance issues caused by certain AMD CPUs"; for Malwarebytes it suggests a change we don't repeat here, since it relaxes a protection feature — read it on FACEIT's page if you want it.
- Overlays. The anti-cheat starts CS2 with
-allow_third_party_software, so overlays the game would otherwise block can attach, and FACEIT says these overlays can cause performance issues. Its test: add the same option to CS2's launch options in Steam, play without the anti-cheat, or both. The Trust Factor note in section 3 applies to that option. - No FACEIT match. If the problem does not appear in those tests, start the anti-cheat and the game without queueing for a match and play on a non-FACEIT server, such as Deathmatch.
- A clean start. If it is still there, the page has you switch off non-Microsoft services in
msconfig, keeping Steam Client Service and FACEITService, and the startup items in Task Manager, restart, and play one FACEIT match with only the anti-cheat, Steam and CS2 open. That is a test, not a setting to keep: switch them back on afterwards.
If none of that settles it, FACEIT asks for a support ticket with the results of both tests. Secure Boot and TPM are not on the list; FACEIT states that "TPM and Secure Boot do not impact performance" (Secure Boot and TPM for anti-cheat).
6. Then the Windows side
Outside the game, the settings to check are display refresh rate, a real graphics driver, hardware-accelerated GPU scheduling, a power plan that is not capping the processor, a disk with room on it — Windows 11 gaming settings that actually matter covers each. And if what you have is a jolt rather than a low number, why games stutter on Windows 11 is the right page instead. A frame rate that was fine, falls mid-match and stays down is a drop rather than a stutter, and sudden FPS drops in games is the page for that.
Related
- How to optimize Windows 11 for gaming: the settings that actually matter
- DPC latency
- High ping and lag spikes
- GPU not at 100%
- CS2 settings
Did this page help?
What was missing, or what did not work? We read every one of these.
If this page did not solve it, write to us — say which article you read, and we will fix the article.