Launch Options Guide
Best Launch Options in 2024
Every gaming setup has differences. Chances are, very few people have the exact same configuration of hardware, software, and internet connection as you. This is important because these factors, among many others, will affect what launch options are right for you.
You will find lots of guides on the internet claiming that certain configurations of launch options are the best, but the reality is at best, those launch options are best for the person writing that guide.
Unfortunately launch options aren't a silver bullet for most players, and as we said above, lots of guides will falsely claim that their selection of "best launch options" are. There most certainly isn't a "one size fits all" option - in fact, a Valve employee on Reddit has said that "Best launch options are no launch options. They are the most used and most tested.".
Although we don't entirely disagree with what the Valve employee has said, we think that in some cases launch options can help out. There are some launch options that will offer a benefit to everyone, albeit a small one. We've separated this guide into several sections, so that you can view our recommendations based on your needs:
- Launch Options Everybody Should Be Using
- Launch Options for More FPS
- 144hz and 240hz Launch Options
- ALT + TAB Launch Options
- Resolution Launch Options
- Autoexec Launch Options
- Launch Options That Are Pointless in CS2
Launch Options Everybody Should Be Using
We told a white lie when we said that launch options aren't a "one size fits all" tool. There are some launch options that will be useful for everyone, but the benefit they provide can be fairly small, so to be clear: they aren't a magic solution for bad aim!
The launch options that you should be running are:
+fps_max 0 -nojoy -softparticlesdefaultoff +violence_hblood 0 +r_drawparticles 0 -console
What Do These Do?
+fps_max 0
is actually a console command that you can use as a launch option. It removes the FPS cap that is enabled by default. Most players will have turned this off, but we have included this as it will offer a benefit to anyone who hasn't.
-nojoy
will remove joystick support from the game, which may free up RAM. It's debated whether this has any noticeable effect on performance, but it's really, really unlikely that it'd hurt to have it in your launch options, so we've included it!
-softparticlesdefaultoff
may increase the performance of CS2 by disabling the blending of particle effects with the background. This reduces the load on your graphics card (meaning there's more GPU power for other graphics-related processing).
-high
isn't a launch option that we've included in the above copy text because it can cause some issues for a small portion of computers. It will make the CS2 process higher priority, and therefore, your computer will give resources (RAM, CPU, etc) to CS2 instead of any other processes that you are running. We recommend you try it, and if it doesn't cause issues, keep it in your launch options.
+violence_hblood 0
may not work for later CS2 versions. Some sources are reporting that it works on their setup but we couldn't confirm this after testing on several different PCs. It should remove blood from the game. We've added it to this list because at worst it will do nothing and at best, it will work for a sizeable portion of users.
+r_drawparticles 0
is technically a command and not a launch option but it is known to improve performance (at the cost of graphics quality) by disabling particle animations.
-console
enables the developer console by default. If you're a seasoned CS2 player, it's going to save you some time going through the settings to enable it.
Launch Options for More FPS
Firstly, if you aren't actually experiencing low FPS (and are likely of the mentality that "more is better"), we recommend that you don't use the launch options listed in this section. Why? Because you don't really need them to improve FPS, meaning negatives (many) will outweigh the positives (better FPS) - for example, we list a launch option that disables dynamic lighting. At times, this can make gun shots not flash, and make flashbangs not show a flash, which can be a major disadvantage when it comes to locating players and the location of flash bangs.
Secondly, if you are experiencing low FPS, make sure that you've had a good "play around" with your graphics settings to work out what works best for you - you'll get a better improvement from low graphics settings than you ever will from launch options.
Disclaimers out of the way, here are the launch options we recommend to improve FPS:
+engine_low_latency_sleep_after_client_tick true +fps_max 0 -nojoy -high -fullscreen +mat_disable_fancy_blending 1 -forcenovsync +r_dynamic 0 +mat_queue_mode 2
Additionally, you may see an increase or decrease (depends on your computer) using the launch options below. These launch options are also less common and less tested. You should try these one-by-one to see if they offer any benefit, and if you have any problems (e.g. crashes) in future, consider these prime suspects:
-softparticlesdefaultoff -vulkan
If You Don't Need VAC (FACEIT, ESEA, etc)
Disabling Valve Anti-Cheat (VAC) can help a lot with stuttering and results in higher FPS, but obviously VAC is needed to play on Valve-Secured Servers for modes like Matchmaking and Premier. If you're on ESEA, FACEIT, or another provider that uses their own anti-cheat, you might not need VAC. In that case, use this launch option to disable it and free up your computer's resources (for more FPS):
-insecure
What Do These Do?
+fps_max 0
is actually a console command that you can use as a launch option. It removes the FPS cap that is enabled by default. Most players will have turned this off, but we have included this as it will offer a benefit to anyone who hasn't.
-nojoy
will remove joystick support from the game, which may free up RAM. It's debated whether this has any noticeable effect on performance, but it's really, really unlikely that it'd hurt to have it in your launch options, so we've included it!
-high
will make the CS2 process higher priority, and therefore, your computer will give resources (RAM, CPU, etc) to CS2 instead of any other processes that you are running at a lower priority. If you experience stutters when you have other windows open on your computer (e.g. a video playing on YouTube in the background), this can help reduce them.
-fullscreen
starts CS2 in fullscreen mode. Most players have this enabled by default, but this will offer a benefit if you were previously playing in windowed mode. When in windowed mode, your computer's resources are still used to render and process components of the Windows UI (e.g. the start bar) and also used for some other background processes - fullscreen mode improves FPS by stopping Windows from doing this.
+mat_disable_fancy_blending
1 is actually a console command commonly mislabeled as a launch option, so you can instead put it in your autoexec (without the +) if you'd prefer. This works to improve FPS by disabling "fancy blending" - the downside is that it makes textures look less detailed.
-limitvsconst
will limit the game's number of vertex shaders to a maximum of 256, which may offer an FPS boost.
-forcenovsync
disables VSync which often causes more problems than it solves. Most users will have already disabled VSync via their graphics settings, but we have included this for those that haven't. A small amount of players will experience screen tearing with this launch option, so remove this is you notice any after applying these launch options.
+r_dynamic 0
is a console command that is mistaken for a launch option (but works as one anyway). It disables dynamic lighting, which can cause an FPS boost. For the effects of this command, see this video.
+engine_low_latency_sleep_after_client_tick true
may include FPS by changing when in the game's "lifecycle" the low latency sleep on tick frames happens. When using this command it's best to set +fps_max 0
to a number other than 0, for example +fps_max 120
(play around with the number and see which results in the smoothest performance for your PC).
+mat_queue_mode 2
is another console command that players often use as a launch option (it doesn't matter if you put this in your autoexec or as a launch option). This may offer an FPS improvement, but may also cause FPS issues, so we recommend you test this before using it in competitive games. It offers an FPS improvement by setting the queue/thread mode for the material system to an asynchronous queued mode.
-softparticlesdefaultoff
will make particles be rendered without feathering (scene depth blending), which can cause an FPS boost but decrease the graphics quality of your game.
-vulkan
switches CS2's rendering API from DirectX 11 to Vulkan. Whislt Vulkan isn't better for every graphics card, it has been known to improve FPS for some. Give this launch option a go in-game and see if it offers any improvement for you. The effects of this command might be related a combination of your computer's components rather than just your GPU so it doesn't help right now but you if you change something else in your setup in future (like your CPU), it's worth trying it again.
144hz and 240hz Launch Options
If you've got a 144hz monitor and want to make sure you're actually getting 144 refreshes a second, you should be using the following launch option:
-refresh 144
For 240hz, use this launch option:
-refresh 240
It's debated whether or not these commands are needed for 144hz, because CS2 should set your refresh rate to 144 hertz by default, but it can't hurt to have it in your launch options just to be safe!
If you're not getting a refresh rate of 144hz or 240hz after setting this launch option, make sure that you have changed your Windows graphics settings to 144hz or 240hz. We've provided steps to do this on Windows below.
If your refresh rate is still slower than it should be, try these troubleshooting steps:
- Make sure you’re using cables supporting 144hz/240hz (HDMI 1.4+, DisplayPort, DVI Dual-Link). The following are not unsupported: VGA, HDMI <1.4 (not exhaustive)
- Make sure vSync is disabled (or use this launch option
-forcenovsync
).
Windows 10
To enable 144hz on Windows 10:
- Go to your start menu, search "display settings" and click "Change display settings"
- At the bottom of the newly opened window, click "Advanced display settings"
- Click "Display adaptor properties for..." for the monitor you wish to set to 144hz (you may not get this step if you have just one monitor)
- Click the "Monitor" tab on the newly opened window
- Set "Screen refresh rate:" to 144 Hertz, click "Apply" and press "OK" - you're done!
Windows 7 and 8
To enable 144hz on Windows 7 and 8:
- Go to your desktop, right click, and press "Screen resolution"
- Select the monitor you wish to change settings for, and click "Advanced settings"
- Click the "Monitor" tab on the newly opened window
- Set "Screen refresh rate:" to 144 Hertz, click "Apply" and press "OK" - you're done!
ALT + TAB Launch Options
In CS2, you shouldn't need any launch options to ALT + TAB but if you're having issues, you can try adding (or removing if you already use it) the following launch option to ALT + TAB faster:
-vulkan
Note that usually it's USING the above launch option that causes issues with ALT + TABBING in CS2.
Resolution Launch Options
We recommend that you set your resolution via your CS2 settings to avoid any potential problems, but if you wish to use a resolution that isn't pre-defined, use the below launch option:
-w [width] -h [height]
Replace [width]
with your desired resolution width in pixels.
Replace [height]
with your desired resolution height in pixels.
For example, to set your resolution to 800x600, you'd use the following launch option:
-w 800 -h 600
If playing in windowed mode, you can position the CS2 window using the -x
and -y
launch options. These offset the window from the top left corner by the specified amount of pixels. The following command would position the window 150 pixels to the right of the left side of your screen and 100 pixels down from the top side of your screen:
-x 150 -y 100
Autoexec Launch Options
An autoexec launch option isn't needed for CS2 but the command does still work, so we've included the steps to set this up below.
An autoexec is simply a text file with a list of commands that are executed when you start CS2. This is useful because often commands will return to their default value when you restart your game, commands in your autoexec will keep their values.
After placing your autoexec file (named autoexec.cfg) in the "Steam\SteamApps\common\Counter-Strike Global Offensive\cs2\cfg" folder, set the following launch option to make it work:
+exec autoexec.cfg
If your autoexec file isn't named autoexec.cfg, replace autoexec.cfg
with the name of your autoexec file.
Launch Options That Are Pointless in CS2
Some websites will tell you to use all sorts of launch options, many of which won't work all. They do this because they haven't done the research and the end of the day, if the launch option has no effect, it probably doesn't matter. In fact, if you consider the possibility of being influenced by the placebo effect, a launch option that does nothing at all could be a net positive on your gameplay (even if at a technical level it is akin to not having one at all). At Total CS, we've done the research (we wouldn't have the best launch options guide if we hadn't and for that reason, we've listed some launch options you'll see recommended elsewhere that flat-out don't work in CS2 below.
-tickrate 128
worked in CS:GO but doesn't work in CS2 because there is no longer a "tickrate". It uses a sub-tick system.
-novid
removed the short Valve video clip that played when CS:GO launched. Now CS:GO has become CS2, it no longer works so there's no reason to use it.
-limitvsconst
no longer works.
-d3d9ex
and -disable_d3d9ex
are both no longer working in CS2. This is because CS2 now uses DirectX 11 (these options affect DirectX 9, which was used in CS:GO).
Launch Options List
Below you can find a list of all known (and working) launch options for CS2 on Steam. Note that launch options starting with + are actually just console commands (cvars) but work as launch options as well - we have included these are they are commonly mislabeled as launch options, and may be useful for some players.
Launch Option | Description |
---|---|
-vulkan
|
This launch option switches your game's rendering API from DirectX 11 to Vulkan. Vulkan is a newer 3D graphics API (released in 2016) that, depending on what components your computer users, may improve CS2 performance. |
-dxlevel [60 / 70 / 80 / 81 / 90 / 91 / 95 / 98 / 100 / 110]
|
This launch option sets your game's DirectX API version. 110 is the current value used in CS2 (DirectX 11). It's only recommended that you change this if you are having issues with DirectX 11. |
-allow_third_party_software
|
This launch option allows third party applications to interfere with CS2. Some software like OBS Game Capture may not work without this launch option. IMPORTANT NOTE: this command can lower your Trust Factor which may affect your matchmaking experience (it is not known whether or not it does for sure or the level of effect it may have). |
-fullscreen
|
This launch option forces CS2 to start in fullscreen mode. |
-refresh [refresh rate]
|
The -refresh launch option sets the refresh rate of your client: replace [refresh rate] with your desired refresh rate. The refresh rate (in hz) is how many times per second your monitor will update - at 60hz, your monitor is effectively showing 60 frames per second. For 144hz monitors, set this to "-refresh 144" so that your game refreshes 144 times a second. |
+exec [file name]
|
This launch option will execute all commands a specified file - replace [file name] with the name of the file you wish to execute (e.g. autoexec.cfg). The file should be placed in the "Steam\SteamApps\common\Counter-Strike Global Offensive\csgo\cfg" folder. |
+mat_disable_fancy_blending 1
|
This launch option will "disable fancy blending" of textures, making your game's textures appear less detailed and more smooth. May increase FPS. |
+cl_forcepreload 1
|
This is actually a console command, but commonly mislabeled as a launch option. It will force you client to preload models. |
-high
|
This launch option will make the CS2 process run at "high priority" on your computer. Effectively, this means that CS2 will take priority over other processes running on your computer at a lower priority. |
-low
|
This is the opposite of the |
-softparticlesdefaultoff
|
This launch option makes CS2 render particles without feathering (scene depth blending). |
+fps_max [amount]
|
This launch option sets the maximum frames-per-second your game will run at. Replace [amount] with the amount you want to limit your game to. Setting it to 0 ("-fps_max 0") will remove any limit, making your game run at the highest FPS possible. |
-nohltv
|
This launch option turns off all Source TV features. |
-console
|
This launch option makes the game start with the console opened. |
-nojoy
|
This launch option makes the game drop all joystick support, which can decrease the amount of RAM it uses. |
-forcenovsync
|
This launch option forces CS2 to not use VSync. VSync syncs the vertical refresh rate of your monitor with the FPS of your game. Whilst VSync can help prevent screen tearing and reduce power consumption, in most cases it will cause input lag, make your FPS seem slower, and cause other issues - i.e. the negatives will greatly outweigh the positives. |
-threads [amount]
|
This launch option sets the amount of processor threads that CS2 will use (e.g. -threads 4 will make CS2 use 4 threads). We recommend that you do not use this launch option as it can cause instability and other problems - generally, CS2 does a good job of managing its thread usage. |
+violence_hblood 0
|
This launch option removes blood from the game. Since the removal of the -lv (low violence) launch option, this launch option is your best bet at getting a game close to the low violence version. |
-language [language name]
|
This launch option makes CS2 start in the language that you replace [language name] with - e.g. "-language english" will make CS2 start in English. |
-width [width]
|
This launch option sets the width of your CS2 window in pixels (e.g. "-width 1920"). |
-height [height]
|
This launch option sets the height of your CS2 window in pixels (e.g. "-height 1080"). |
-x [position horizontally]
|
This launch option sets the position of your CS2 window on the X axis of your monitor. In other words, this sets how far to the right of the left side of your screen CS2 should be. For example "-x 100" would make CS2 start 100 pixels away from the left side of your screen (there would be a 100 pixel gap between the left side of your screen and the CS2 window). |
-y [position vertically]
|
This launch option sets the position of your CS2 window on the Y axis of your monitor. In other words, this sets how far down from the top of your screen CS2 should be. For example "-y 100" would make CS2 start 100 pixels down from the top of your screen (there would be a 100 pixel gap between the top of your screen and the CS2 window). |
+r_dynamic [0 / 1]
|
Like some other "launch options" in this list, this is a console command commonly mislabeled as a launch option. Use either "+r_dynamic 0" to disable dynamic lighting or "+r_dynamic 1" to enable it (default). Setting this to 0 can improve FPS slightly but will remove some lighting features from the game, like the flash from flashbangs when they are near smokes, which can cause the negatives of no dynamic lighting to outweigh the positives. |
-autoconfig
|
This launch option will force your game to start up with the default configuration settings for the game - you can change the settings once the game has started, but when you restart with this launch option, they will be reset to default again. |
How to Set Launch Options
Thankfully, it is very easy to set launch options via Steam. Open up Steam, go to Library, right click Counter-Strike 2, and click "Properties":
Then, click "Set Launch Options..." to open up the launch options window:
Simply type the launch options you wish to set into the text box and press "OK" to set them. Restart CS2 for them to take effect. If you're experiencing problems:
- Make sure the launch options you've entered are separated by spaces
- Make sure the launch options don't contain quotes around them (") or any other odd characters, the only characters that should be in launch options are letters, numbers, and these: +, -, and _
- If you've used launch options from our guide, make sure you've replaced anything surrounded by square brackets (e.g. [height]) with a value
- Most (if not all) launch options start with a - or a +, if a launch option in your launch options doesn't have a + or - before it, that's likely the one causing problems.