CS2 launch options are startup commands added through Steam that load before the game even opens. The right ones can remove your FPS cap, force your correct refresh rate, and reduce input lag. The wrong ones — mostly copied from old CS:GO guides — do absolutely nothing in CS2 or can actively cause stuttering. This guide tells you exactly which commands work in 2026 and which ones to remove.
- TL;DR
- CS2 runs on Source 2 — most old CS:GO launch options are dead or broken
- Keep your launch string short — 4 to 6 commands is plenty for most setups
- The essential commands are:
-novid -high -nojoy -freq [Hz] +fps_max 0 -tickrate 128does NOT affect online matchmaking — remove it+cl_forcepreload 1reduces in-match stutter on most systems-highhelps on mid-range CPUs but can cause issues on some machines — test it- Always separate commands with a single space — no commas or brackets

What Are CS2 Launch Options?
Launch options are command-line parameters you add to CS2 through the Steam client. They are read once at startup and configure things at the engine level — before the main menu loads. Some settings, like forcing a refresh rate or setting process priority, can only be changed this way and are not available inside the game’s own settings menu.
They work differently from console commands. Console commands run after the game engine is already up. Launch options run before it. That makes them useful for a specific set of things — and useless for everything else.
One important thing to understand in 2026: CS2 runs on the Source 2 engine. Source 2 auto-manages a lot of things that CS:GO players used to control manually. That is why so many old launch options are now either ignored or actively harmful. Shorter launch strings almost always perform better.
How to Set CS2 Launch Options
Setting launch options takes less than a minute. Here is how to do it:

- Open the Steam client and go to your Library
- Find Counter-Strike 2 in the list and right-click it
- Select Properties from the dropdown
- Stay on the General tab and find the Launch Options field near the bottom
- Click inside the field and type or paste your commands, each separated by a space
- Close the Properties window — Steam saves automatically
Your launch options will activate every time CS2 starts. To reset them at any point, simply clear the entire field and close the window. No restart of Steam is required.
Each command starts with either a dash (-) or a plus sign (+). The dash marks engine startup flags. The plus sign runs a console variable when the game loads — exactly as if you typed it in the console yourself. Using the wrong prefix usually means the command silently does nothing.

Best CS2 Launch Options in 2026
These are the commands that are confirmed to work with CS2’s Source 2 engine. Each one has a clear purpose and a real effect on performance or usability.
-novid
Skips the intro splash screen when CS2 loads. It shaves a few seconds off your startup time and has no downsides whatsoever. It is the one command with no debate across any skill level or hardware setup. Keep it in your launch string.
-high
Sets CS2 to high CPU process priority. Windows normally shares CPU time between all running processes — background apps, antivirus, browser tabs, and so on. Adding -high tells Windows to give CS2 priority over those background services. This is most noticeable on mid-range CPUs like a Ryzen 5 or Core i5 running under normal background load — fewer micro-stutters and more consistent frame timing.
One warning: a small number of systems experience instability or crashes with this option. If you add it and notice stuttering that was not there before, remove it. Also, if you stream or record with OBS, -high may starve your encoder threads and cause dropped frames in your capture software.
-nojoy
Disables joystick and controller support at startup. CS2 may already disable this by default, but adding it explicitly removes unnecessary background controller polling and can reduce crash frequency on some setups. The performance gain is minimal but it is a safe cleanup option for any keyboard-and-mouse player.
-freq [your monitor Hz]
Forces CS2 to use your monitor’s actual refresh rate at launch. Replace the number with your monitor’s Hz — for example -freq 144, -freq 240, or -freq 360.
CS2 is supposed to read the refresh rate from your Windows display settings automatically. In practice, some setups — particularly with multiple monitors or non-standard display configurations — see CS2 default to 60Hz even on a 144Hz or 240Hz panel. If your game ever feels sluggish despite a powerful PC, this is the first thing to check. Adding -freq with the correct value guarantees the engine initializes at the right rate from the start.
If CS2 always loads at your correct refresh rate without this command, you do not strictly need it. But including it is harmless and acts as a safety net.
+fps_max 0
Removes the default FPS cap so CS2 can render as many frames as possible. CS2 applies a frame cap by default, so this command has a real and direct effect. V-Sync must also be disabled in your in-game video settings for this to work properly.
However, uncapping FPS completely is not always the right choice. On some systems, +fps_max 0 causes the GPU to spike to 100% utilization constantly, which generates heat and can create uneven frame delivery or micro-tearing. A more stable approach is to cap at roughly 1.5× your monitor’s refresh rate. For example, +fps_max 360 on a 240Hz monitor, or +fps_max 220 on a 144Hz monitor. This keeps your GPU from running at full load while still producing far more frames than your monitor can display.
If you use NVIDIA Reflex set to Enabled + Boost inside CS2, then +fps_max 0 is the better choice. Reflex handles frame pacing and latency management more effectively when the frame rate is uncapped.
-console
Opens the developer console automatically every time CS2 starts. It does not improve FPS directly, but it saves the step of re-enabling the console through the settings menu if you regularly use console commands to test settings, check your FPS with cl_showfps 1, or adjust your config mid-session.
If you never use the console, leave this out. It has no effect on performance either way.
+cl_forcepreload 1
Forces CS2 to preload all map assets — models, textures, and shaders — when the game launches rather than loading them during a match. This increases your initial load time by a few seconds, but significantly reduces stuttering during matches, especially when you encounter new map areas, grenades, or player models for the first time in a round. For most players this is worth including.
-softparticlesdefaultoff
Disables the blending of particle effects with the background environment. Normally, smoke and fire effects blend softly into the geometry behind them. This option makes particles render without that blending, which reduces GPU load slightly. The visual difference is small and the performance gain is modest, but it is a safe option to add if you want every possible frame during smoke-heavy rounds.
+engine_low_latency_sleep_after_client_tick true
This command adjusts when the low latency sleep happens within CS2’s frame lifecycle. Its primary purpose is frame pacing and input latency reduction rather than raw FPS. It works best when paired with a fixed FPS cap such as +fps_max 300. Using it with +fps_max 0 (fully uncapped) can sometimes create uneven frame delivery, so test both combinations on your own system before committing.
+r_dynamic 0
Disables some dynamic lighting in CS2. Dynamic lighting is what makes muzzle flashes, flashbangs, and other in-game effects cast light on nearby surfaces. Disabling it can give a small FPS boost, but comes with a real competitive downside — you may not see light from nearby gunfire or grenades, which can reduce situational awareness. Only add this if you are on a very low-end PC and need every possible frame.
-allow_third_party_software
Required if you use OBS, Discord overlay, MSI Afterburner, or other software that overlays on top of the game. Without it, some overlay and capture tools conflict with CS2 in ways that show up as mid-round frame drops, crashes, or black screens. If you do not use any overlay software, you do not need this.
Recommended CS2 Launch String for Most Players
Here is a clean, safe starting point that works well on most systems in 2026. Replace 144 with your monitor’s actual refresh rate:
-novid -high -nojoy -freq 144 +fps_max 0 +cl_forcepreload 1
For players on a 240Hz monitor:
-novid -high -nojoy -freq 240 +fps_max 0 +cl_forcepreload 1
For low-end PCs where stability matters more than max frames:
-novid -high -nojoy -freq 144 +fps_max 150 +r_dynamic 0 -softparticlesdefaultoff +cl_forcepreload 1
For streamers or players using OBS:
-novid -nojoy -freq 144 +fps_max 0 -allow_third_party_software +cl_forcepreload 1
(Remove -high if you stream — it can starve your encoder.)
CS2 Launch Options for Network Performance
These commands affect how your game communicates with CS2 servers. Better network settings mean more accurate hit registration and smoother enemy movement on your screen.
+rate 786432
Sets your data transfer rate to CS2 servers. The default value is lower than what most modern internet connections can handle. Setting this higher means more data is sent and received per second, which improves hit registration accuracy and reduces the chance of server-side desync. This is particularly noticeable in long-range duels and spray battles where timing is critical. Use +rate 786432 if your internet connection is stable. If you are on a slow or unstable connection, a lower value around 262144 may actually reduce packet loss artifacts.
Dead CS2 Launch Options — Remove These Now
This is the most important section for anyone who copied their launch options from an old guide. These commands are either completely broken in CS2, ignored by Source 2, or actively harmful. If any of these are in your current launch string, delete them.
-tickrate 128
This is the most common dead command found in CS2 launch strings. In CS:GO, it forced your local server to run at 128 tick. In CS2, the game uses a sub-tick system for online matchmaking — your client tick rate is handled automatically and cannot be changed by a launch option. Adding -tickrate 128 only affects local offline servers and practice matches. It does absolutely nothing in Premier, Competitive, or FACEIT. Remove it.
-threads [number]
In CS:GO, this let you manually set how many CPU threads the game used. CS2’s Source 2 engine manages thread allocation automatically using its own formula. Manually setting this is not just useless — on processors with hybrid core architecture (like Intel 12th gen and newer with P-cores and E-cores), a wrong value can actually cause crashes or reduce performance. Remove it and let the engine handle it.
-d3d9ex
This was a CS:GO optimization for DirectX that improved alt-tab speed and reduced some GPU overhead. CS2 uses DirectX 11 natively and manages this automatically. The command is either ignored or causes instability on some setups. Remove it.
-processheap
A legacy memory management tweak from older Counter-Strike versions. Does nothing in Source 2 and can cause crashes. Remove it.
-nod3d9ex
Another DirectX legacy option from CS:GO. Completely non-functional in CS2. Remove it.
-cl_interp 0 / cl_interp_ratio 1
Interpolation commands in CS:GO affected how smoothly opponent movements appeared on your screen. In CS2 with the sub-tick system, interpolation is handled differently at the engine level. These commands are either ignored or have unclear behavior in CS2 without solid documentation confirming they still apply. Do not include them until there is clear evidence they work as intended.
-fullscreen / -window
These display mode flags work in older Source engine games but are ignored in CS2’s Source 2. Set your display mode through the in-game video settings instead. The in-game option is more reliable.
Pro Player CS2 Launch Options
Professional players keep their launch strings minimal. Based on documented configs from competitive players in 2026, most pros run four to five commands at most. A typical pro config looks something like this:
-freq 360 -novid -console +fps_max 999
That is it. No long strings of legacy CS:GO commands. No obscure tweaks. The pattern is consistent — pros trust the Source 2 engine to handle what it handles automatically, and they only add commands that have a proven effect on their specific hardware.
The lesson is clear: more commands does not mean better performance. A clean, short launch string is almost always faster and more stable than a long one full of commands that may or may not do anything.
CS2 Launch Options vs. In-Game Settings
Here is something worth understanding: launch options are not the main lever for CS2 performance. They are useful but limited in what they can do. The biggest FPS gains come from your in-game video settings — resolution, shadow quality, particle detail, MSAA, and ambient occlusion.
Launch options handle a specific set of things that the in-game menu cannot: forcing refresh rate, setting process priority, uncapping FPS, and a few startup behaviors. Outside of those areas, the in-game settings menu is where your real performance gains live.
If you have not yet optimized your in-game video and graphics settings, our best CS2 settings for FPS guide covers everything from resolution and MSAA to shadow quality and NVIDIA Control Panel tweaks. Combine that with these launch options and you will have a fully optimized setup. You can also check our complete CS2 best settings guide for the full overview of every video and advanced graphics option. If you are new to the game, our CS2 beginner guide is a good place to start alongside your setup. For gameplay tips to go with your optimized settings, see our CS2 tips for beginners article.
Frequently Asked Questions
What are the best CS2 launch options in 2026?
The best CS2 launch options for most players are: -novid -high -nojoy -freq [your Hz] +fps_max 0 +cl_forcepreload 1. Replace the Hz value with your actual monitor refresh rate. Keep the string short — 4 to 6 commands is enough for the vast majority of setups.
Does -tickrate 128 work in CS2?
No. CS2 uses a sub-tick system for online play. The -tickrate command only affects local offline servers. It has no impact on official matchmaking, Premier, or FACEIT games. Remove it from your launch options.
Should I use +fps_max 0 in CS2?
It depends. If you use NVIDIA Reflex set to Enabled + Boost, uncapping with +fps_max 0 is the right choice. Without Reflex, consider capping at 1.5× your monitor’s refresh rate instead — for example +fps_max 360 on a 240Hz display — to avoid frame time variance and GPU heat spikes.
Does -high help FPS in CS2?
-high sets CS2 to high CPU priority so Windows gives it more processing time over background apps. It helps most on mid-range CPUs running under background load. A small number of systems experience stuttering with it enabled — test it on your own setup and remove it if things feel worse.
Can launch options get me banned in CS2?
No. Standard performance launch options like -high, -freq, +fps_max, and -novid have no effect on VAC status. The only option that affects VAC is -insecure, which also locks you out of official servers entirely. Do not add that to your launch string.
How many launch options should I use in CS2?
Keep it to four to six commands. CS2’s Source 2 engine handles most optimizations automatically. Long launch strings full of old CS:GO commands are more likely to cause problems than to improve performance. When in doubt, keep your launch string short and clean.
Does +cl_forcepreload 1 reduce stutter in CS2?
Yes, for most players. It forces the game to preload map assets at startup rather than during live matches, which reduces the stuttering that happens when encountering new enemies, areas, or effects for the first time in a round. The tradeoff is a slightly longer initial load time, which is worth it for smoother gameplay.



