Tutorials

CS2 autoexec: how to make one and what to do when it will not load

A CS2 autoexec is a plain text file the game reads at launch. Building one takes a minute. The interesting problem is that a large share of the configs circulating online contain commands CS2 no longer has, and the game says nothing when it skips them.

Where the file goes

One path, no exceptions. Right click CS2 in your Steam library, choose Manage, then Browse local files. From the folder that opens, go into game, then csgo, then cfg. That is the destination.

Create a text file there and name it autoexec.cfg. When saving from Notepad, set the file type to All Files, because otherwise Windows appends .txt and the game will never see the file.

The fastest way to check: turn on file extensions in Explorer. If what you see is autoexec.cfg.txt, you have already found the reason nothing loads.

Making the game read it

The file alone is not enough, and this is where most people stop without realising it. The game does not scan the folder hoping to find configs, so you have to point at it directly.

Open the properties for CS2 in Steam, find the launch options, and enter +exec autoexec.cfg.

The extension matters. The version without .cfg appears in older guides and in CS2 it frequently does nothing at all.

At the end of the file itself, add host_writeconfig. That forces your current settings into the game’s own config, which keeps them from evaporating on exit.

Proving the CS2 autoexec loaded

Do not infer it from your settings. Make the game say so out loud, which takes one line and saves half an hour of guesswork.

Near the end of the file, before the write line, add something like echo AUTOEXEC LOADED.

Launch the game, open the console, and look for that text. If it is there, the file loaded and any remaining problem is in its contents rather than its location. If it is missing, go back to the filename and the launch option.

How to open the console, and what to do when the key does nothing, is covered separately in our piece on the CS2 console not opening.

One detail that saves restarts: after editing the file, type exec autoexec in the console and it reloads without leaving the game.

Dead commands still doing the rounds

Line from a copied configStatus in CS2
m_rawinputgone, mouse input bypasses the system by default
cl_updaterategone, the server decides the rate
cl_cmdrategone, same reason
cl_righthandgone, handedness lives in the viewmodel settings
cl_bob_lower_amtgone, weapon sway works differently now
cl_join_advertisegone

We checked these against the game’s own command and variable dumps rather than against other blogs. All six appear in configs marketed as current, and all six are silently ignored.

That is the argument for writing your own file instead of pasting somebody else’s. A config you did not write is a list of lines you cannot vouch for.

What belongs in a short file

Fifteen lines that change something, rather than two hundred that mostly do not. A short file also has the practical advantage that when something misbehaves, you can read the whole thing at a glance.

Sensitivity and the scoped multiplier, so a change of mouse is one line rather than an evening.

Viewmodel. Field of view and offsets, since this is the only thing permanently covering part of your screen that you control.

Crosshair, if you prefer keeping it in the file rather than in the menu.

A frame cap, set slightly above your monitor’s refresh rate.

Binds for anything you do often that otherwise costs a menu.

Binds are the highest value lines

Display settings are set once and forgotten. Binds fire every round, which makes them the best return per line in the whole file.

The standard set: a jump bound to the scroll wheel, a viewmodel toggle, quick buys, dropping the bomb. None of it is an exploit. Each does exactly what your fingers would do, only faster and without fumbling.

The scroll wheel jump is worth its own explanation, including why it beats the spacebar, and that is in our guide to the CS2 bhop bind on scroll.

One rule when adding binds: one key, one action. Multi state toggle scripts look clever and end with you pressing something other than what you intended in the one round where it mattered.

Pro configs and why they rarely help

Every so often a file appears with a player’s name attached and gets treated as a recipe.

Half of what is inside depends on hardware and habit: a sensitivity tuned to one mouse and one mousepad, a viewmodel set for a particular screen, binds laid out for a keyboard you do not own. The other half is audio and video tuned to a machine unlike yours.

Transplanted whole, that produces an unfamiliar game rather than a better one. The sensible use is to read it and steal individual ideas, usually a bind you had not thought of.

When the file is not the problem

There is a specific case where the echo line appears, the file clearly loaded, and one setting still refuses to work.

Most often the command is restricted on the server. A chunk of the console is limited to your own server or requires server commands enabled, and an official match will refuse it regardless of where you typed it. Which commands those are is set out in our list of sv_cheats 1 commands.

The second cause is a typo. The game does not announce it on screen, it writes a quiet line into the console that scrolled past during map load.

The third, and the most irritating, is two contradictory lines in one file. The lower one wins, so a value set twice gives you the second one while you search everywhere except the obvious place.

A second file for practice commands

Splitting the settings into two files is worth the extra minute, because the things you want while playing and the things you want while practising work against each other.

The autoexec holds what should always apply: sensitivity, viewmodel, binds, frame cap. Practice commands are a different animal. Infinite ammo, grenade trajectories, instant respawn and bot control only function on your own server, and an official match refuses them anyway.

Keeping those in a separate file, called on demand, is cleaner than one long file with half its lines inert most of the time. It also means you can hand that file to a friend without exporting your personal sensitivity along with it.

The full set of commands worth putting in it is in our walkthrough of the CS2 practice server config.

Load order, or why settings revert

The game reads its own config first, then your autoexec if the launch option points at it. That is why the file overrides the menu rather than the other way round.

On exit, however, the current state is written back. Change something in the menu mid session and that value lands in the game’s config, where it will lose to your autoexec at the next launch. It looks random and it is simply ordering.

Keep each setting in one place. Either the file or the menu. Mixing both is the source of every “it changed by itself” report.

One copy, two machines

If you play on more than one computer, the file becomes worth more than the settings inside it.

Keep it in any cloud synced folder and copy it into place after installing the game. Rebuilding every bind from memory takes an evening. Copying a file takes a second.

One value does not travel: sensitivity tuned to one mouse behaves differently on another and needs recalculating rather than copying. Everything else transfers unchanged and gives you your own game on a borrowed machine in about a minute.

Frequently asked questions about the CS2 autoexec

Where do I save autoexec.cfg?

In the game folder, under game, then csgo, then cfg. Browse local files in Steam takes you there fastest.

Does it work without a launch option?

Sometimes, and it is not worth relying on. Adding +exec autoexec.cfg settles it permanently.

How do I confirm the file loaded?

Put an echo line in it and look for that text in the console after launch.

Do I need to restart after editing?

No. Type exec autoexec in the console and it reloads.

What is host_writeconfig for?

It forces current settings into the game’s own config so they persist after you close the game.

Can a custom config get me banned?

Not when it uses commands the game exposes normally. Binds and settings are a standard part of it.

Why do commands from a downloaded config do nothing?

Because some of them are leftovers from the previous game. Check in the console whether CS2 recognises a command before keeping it.

Last updated: September 2026

Paths and commands checked in September 2026 against the current build. The list of commands that no longer exist comes from comparing common configs with the game’s own command and variable dumps, and can change with a major update.

18-year-old IT student with computer games extension from Poland. Passionate about esports and all events.
Scroll to top