Like with many of Valve’s other games, Counter-Strike: Global Offensive can exploit the power of the Source engine console to give you more options and better settings. It’s just as important for improving at the game as knowing where to aim guns and grenades - plus it can even make practicing that easier and more efficient. Being a Steam game, it also has launch options that can be configured to customise stuff before you’re even loaded in.
Just want to have a play? Try the finest FPS games on PC.
Below we’ll break down all the best console commands and launch options, and even recommend what you should change in your config files to give you the biggest advantage possible.
What are the best CS:GO launch options?
To input launch options, head over to Steam, right click on CSGO and go to properties. Hit ‘Set Launch Options...’ and a box will pop up. The syntax for commands put into this box is -[command] and then a space before the next one or any additional values that might be required. We’ll get into specifics with each command as we go.
Load console on game start
This will enable the console as soon as you get into the game. It’s useful for making sure your config files have loaded properly, but unlike with Counter-Strike: Source isn’t required to make the console show up when you press its hotkey (more on this later).
Disable intro videos
Turns off the Valve intros, saving you precious seconds every time you boot into the game
High CPU priority
Gives the game high priority in your CPU, meaning background tasks won’t slow it down as much. Useful for keeping web browsers running on a second monitor while playing. Messing with CPU priority isn’t a risk free operation, but is unlikely to damage anything permanently. Try disabling this command if you’re getting bluescreens.
Govern CPU core usage
Tells the game how many CPU cores it has access to. Recommended to set this to however many cores your computer has (probably 4). Exactly whether this will improve or decrease your performance is specific to your computer, so enable or disable this command as necessary.
Set offline server tickrate
The tickrate is the number of times per second a server updates the status of everything on it. Most matchmaking servers run at a tickrate of 64, which is the default for local games you host offline. If you want to change to the competitive server tickrate of 128, change to that with this command.
Loads the game in fullscreen
Loads the game in a window. These commands set the width, height and position:
-w [width] -h [height] -x [horizontal position] -y [vertical position]
So if you wish to have a window that fills a second 1080p monitor, you would use this string of commands: -h 1920 -w 1080 -x 1921 -y 0.
Removes the border around a window.
Change client language
This forces the client into a certain language. Useful if you want it in English but have a non-English Steam client, or vice versa.
What are the best CS:GO console commands?
Now we’ll move onto console commands. These come in a couple of flavours - ones that you want running every time the game starts, and ones that are useful to just pop into the console when you want a specific effect. All of them are best implemented using config files to keep them in order and let you change settings on the fly.
What is a CSGO config file?
Config files are located in [your Steam directory]\SteamApps\common\Counter-Strike Global Offensive\csgo\cfg. If you haven’t already set Windows up to open these files with Notepad, try to open config.cfg and tell it to do so (or an equivalent simple text editor that won’t give weird formatting).
In here are all your in-game options stored as console commands that are ran every time you load the game. You can edit them from here if you like, but it also lets you change things not in the options menu, or copy-paste settings from outside the game, as we’re about to do. However, it’s much safer to use an autoexec.cfg file to do this, as it means you know all your changed settings are in one place that can easily be transferred between machines.
The other thing config files are good for is as lists of commands that can be executed with a single line from inside the game. This is very useful for setting up configurations for different sorts of match or specifically for practicing against bots with server side cheats on. The autoexec config file mentioned above automatically runs whenever you start the game.
So, what should be in my CSGO autoexec?
In your autoexec you want the settings that are global for any time you’re playing CSGO. This means your keybindings, graphics settings and so on. We’ll divide this into groups of commands to explain. To create one, simply make a new notepad document in the cfg folder, go to Save As, change file type to All Files and name it autoexec.cfg. As with all Source engine games, console commands in a config file require quotes around values.
In general you want the lowest settings possible when playing CSGO competitively because it maximises your FPS and removes flashy effects that get in the way of seeing enemy heads to click on. You can set all those in the options menu. Here’s some extra vital ones.
This alters how bright the game world is. Most autoexecs I’ve seen have it set to between 1.6 and 2.1. Useful for picking enemies out of darker corners, like dust_2 tunnels.
Tells your computer how to deal with CSGO. Do not change this from “-1” unless you know what you’re doing more than I do.
Maximum FPS lock
Sets the in-game maximum FPS. 0 will remove the lock, which some players prefer it to sit at 145 for consistency. Naturally, you want this as high as possible, and over the server’s tickrate at the very least (again that’s 64 for matchmaking, 128 for custom competitive). fps_max_menu does the same for, surprisingly, menus.
Disable dynamic lighting
Turns off dynamic lighting, which some players find distracting.
Turns off engine particles.
Disable tracer fire
Removes the light tracers from your weapons when firing. AKA the worst thing in CS:GO. If someone had told me about this command when the game launched I’d probably be on NiP by now.
Save graphics options
This saves your graphics options so they will be the same the next time you start up the game. Important.
This section covers some vital components - the radar, the rest of the HUD and how to reduce weapon bob in CSGO.
Adding this set of commands to your autoexec file will make the whole map appear on the radar the entire time, making it easier to spot enemies.
This will also make the radar a bit bigger, make icons appear larger on it and decenter it so it no longer moves with you. This means less space is wasted if you’re close to the edge of the map.
Perhaps the most important part of CS:GO’s HUD is the crosshair. You’re going to be staring at it for about a billion hours and it’s vital you can always pick it out from the background. There are tonnes of options in game for setting up what it looks like, plus loads more console modifactions that can be made. Rather than listing all the possible options here, we recommend using a crosshair customiser that will spit out the correct commands you can copy and paste in.
As for the rest of the HUD, you can customise it with the following commands.
Changes the size of the HUD as a whole. 0.8 seems to be the accepted best standard.
Toggle target names
Controls whether names show up when hovering over players.
Adjust HUD Alpha
Changes the opacity of the HUD background. 0.1 is standard.
Position bomb display
Changes the position of the bomb indicator for when you have the bomb. 1 is under the radar, 0 is in inventory.
Adjust HUD colour
Corresponds to the menu in-game that selects your HUD’s colour. 0 through 10.
Toggle avatars on mini-scoreboard
Whether to simply show the number of players or all of their avatars as well on the top of screen scoreboard.
Move View Model
This set of commands will move the model of your weapon a little out of your way and disable the bob that occurs while running.
You can change the first command here to “0” if you prefer a left handed weapon. This set is super useful for maximising your viewing area and removing distracting animation. Both are vital for edging out those tiny advantages that make the difference between an AK bullet to the skull and victory in the round.
The holy grail of config edits, these are what you’re here for. You won’t notice a massive boost from enabling this set of commands, but it will smooth things out, particularly on 128 tick servers.
All six of these are about making sure your computer is communicating with the server as efficiently and often as possible. It minimises the number of times where your computer will think something has happened and the server corrects it a moment later, usually leading to that sweet headshot being flip-turned on you in the worst way possible.
Sound is ludicrously important to not getting snuck up on in Counter-Strike, no matter how many rounds I played muted while watching StarGate. Here’s what the console lets you do in that area.
Adjust main volume
Scales from 0 to 1 with a couple of decimal places.
Toggle voice chat
0 for off, 1 for on. Some bind a button to toggle between the two for when they want quick access to not hearing their team-mates any more:
bind “[key]” “toggle voice_enable 1 0”
Voice receive volume
Adjusts the volume at which you receive voice communication from other players. Works on the same scale as normal volume.
Adjust speaker configuration
Corresponds to the menu in-game that lets you select between headphones, 5.1 surround and so on. -1 will auto-pick, while 1 is headset, 3 is four speakers, 4 is two speakers and 5 is surround.
Adjust music volume
Changes the music volume. Many set this to 0 to avoid distractions.
Determines how much sound is buffered by the engine. The default is 0.1, while many players prefer 0.05 or lower. This can come with serious performance issues but it’s worth putting it as low as possible to get more instant reactions.
Adjust volume of distant sound
Changes how loud further away sounds are. Higher means more distant map awareness, but makes it more difficult to tell when enemies are closer. Scales 0-100.
Adjust centered sound radius
Changes how close to the crosshair a sound source has to be before it is centered in your headphones. Scales 1-100.
You can also use the autoexec file to set your bindings. Beyond the obvious shootin’ ‘n’ jumpin’ it’s good for setting up buttons that will quickly buy the most common items required - the various sorts of grenade, the most common guns and armour/defusers. Here’s how the command works:
bind “[key]” “[action]”
Rather than run you through all the different possible permutations of this, there’s a number of helpful tools that will customise this section of your autoexec for you. This one even has a nice GUI where you click buttons to select which key and gun you want to match. A majority of better players use the numpad for these bindings.
Aliasing is where you define new commands for the console by combining others. This is most useful in combination with bindings to let one keypress execute a large number of console commands.
alias [new command] “[command]; [command]; [command]”
There’s a lot of complicated stuff you can do with aliasing, from binding buttons to have contextual actions to making the scoreboard show up alongside the net graph. Experiment with it and look around the net for other people’s autoexecs, or see our list of links at the bottom, to see what you can get up to.
Enabling Practice Mode
One of the most useful tools the console gives you access to is a custom-made practice mode. In this you can track where bullets are landing, how grenades are being thrown, play on maps that don’t end and position bots to your liking. You even have infinite ammo and can buy guns map-wide.
Obviously this isn’t something you want every single time you load up the game, so we’re going to use the exec command. It lets you execute config files from inside the game, like how autoexec does this automatically. We’ll set up a practice cfg file, then use this syntax to load it in the game:
You can set all this up yourself, but naturally legions of folks have done it before and created optimised versions with custom binds and interesting information readily available. League organisers FACEIT have a video tutorial for theirs.
There’s a download in the description. It’s been updated since that video was made with some of the suggestions from this reddit thread, which is also worth looking at if you want to modify the config further. Just open it in notepad like you would any other config file and change as you like. Here's some useful commands:
No team restrictions
Turns off balancing of teams, letting as many players or bots be on each side as you like.
Turns off auto-balancing, a must with the above.
Sets roundtimes to 60 minutes so you can mess about for as long as you like.
While not technically infinite, this sets your money to enough to buy as much as you like for testing purposes.
No freeze on round start
Removes the no-movement time at the start of a round.
Buy anywhere, anytime
Allows you to buy anywhere on the map at any point in the round.
Gives guns infinite ammo.
Five grenade slots
Allows you to carry five grenades in total.
End warmup on start
Takes the game out of warmup.
Restart the server
Useful either as an end-of-autoexec clean slate or a command to restart whenever you need to.
Show grenade trajectory
Enable to show where grenades have travelled after release, good for testing smoke placements.
Show bullet impacts
Shows where bullets landed as well as how much penetration they achieved.
Kicks a bot.
Useful for target practice.
Prevents bots from moving.
Make bots mimic player
Makes bots mimic the movements of the player, allowing them to be positioned when combined with bot_stop.
Misc Additional Commands
Here’s some stuff that doesn’t fit into other categories, but might be useful anyway. It includes some of the commands in the practice files linked above that might be useful elsewhere too. You can include them in autoexec as you like, or just type them in directly when you want them. Remember that if you’re typing directly into the console quotes aren’t needed around values.
Allows access to the console. This can be switched on from in-game, but bung this in your autoexec if you want to never have to worry about it.
Enables cheats on local servers. Obviously this doesn’t work while playing on a server you do not have admin access to, which will be most of them. However this needs to be enabled to play with the more interesting
Enable developer mode
Changes how much output is displayed in the console. 0 is normal, while 1 will give you a little more info. Enabling it is also required for some commands.
Print damage on screen
This set of commands will print your damage dealt and taken to the top left hand corner of the screen whenever you die, rather than you having to check the console to find out.
Change Steam overlay position
Allows you to customise where Steam overlay alerts appear. Topleft is my preference. Note that there is no space between the two modifiers.
Disable help messages
This set will turn off the “press f to inspect your gun” style messages.
Turn off server MOTDs
This stops servers showing you their Messages of the Day, which are usually adverts and bloaty HTML.
Highest ping for matchmaking
This limits which servers you will be matchmade onto based on their ping. Roughly, anything over 100 isn’t really playable, and most people prefer to play at sub-80.
Don’t download custom sounds
Stops sounds being downloaded from servers. You’ll miss out on a few MULTIKILLs but save on disc space and connection times.
Disable weapon switch on pickup
Means you won’t switch to any gun you pick up. You do not want to walk over an AK while shooting somebody with a pistol and suddenly be going through a weapon change animation. Believe me.
Buy menu remains open
Stops the buy menu closing once you’ve purchased something, meaning you can purchase more things. Capitalism in action.
This will take a screenshot of the scoreboard at the end of every match. Good for bragging and keeping track of how you do.
This preloads everything on a map when you first connect, rather than as you get to it. Increases load times but means less stutter mid-game. Vital.
Turn off freezecam on death
Disables the smash-zoom and freeze onto your killer when you die.
Save settings to config
This makes sure that all these settings are enabled and saved. Always a good idea to have this as the last command in your autoexec.
Print to console
This prints text to the console. Useful for making sure your autoexec has loaded properly, with a message along the lines of echo “PREPARED FOR DIGITAL SPORTS.”
Lastly, here's some specific commands that don't make sense in an exec file but might be useful every now and then.
Third person mode
Moves the viewpoint to thirdperson. Requires sv_cheats. firstperson puts you back.
Allows you to see other models through the terrain in a wireframe model. Obviously this requires sv_cheats, but can be useful for seeing how bots move around a map and where people will be at certain points.
Turns on no clipping mode. Useful for exploring levels quickly. Requires sv_cheats.
Makes you invulnerable. May be useful in bot games or for practicing jumps that damage you if you fail. Requires sv_cheats.
Kills you for the round. May be needed if you get into a weird spot or want to reset a solo round.
That's your lot. Here's a couple of handy links to where much of the information for this article was found. They're also both useful if you'd rather shortcut the process of making your own autoexec.
It's almost certain we've ommitted your personal favourite hot console tip, so place it in the comments section for all and sundry to enjoy.