BETREF$

CS2 Config Generator

Build an autoexec.cfg with your sensitivity, crosshair code, viewmodel, binds and HUD, frame rate and network settings, download it, and copy launch options that still work in CS2. Every command is checked against the game's own command list.
Mouse
Crosshair
Paste a share code from Settings, Crosshair, Share or Import (CS... or CSGO-...). We turn it into console commands, so it loads with your config.
Viewmodel
Ranges from CS2's command list. Preview them first in the viewmodel generator.
Binds
Binds that do more than one movement or attack action at once (jump-throw, null binds) don't work in CS2 since 19 August 2024, so we don't make them. Valve made jump throws reliable without a bind: jump, then release the grenade quickly. Jump on the mouse wheel is one action, so it's allowed.
HUD and radar
Game
Frame rate and network
CS2 no longer lets you set cl_interp directly (Valve, February 2024; it follows cl_net_buffer_ticks) or change fps_max while you're on a server (August 2025), so the autoexec is the place for fps_max.
Your own lines

Your autoexec.cfg

// autoexec.cfg made with betrefs.gg/cs2-config-generator
// Every command is in CS2's own command list

// Mouse
sensitivity 1.25
zoom_sensitivity_ratio 1

// Viewmodel
viewmodel_presetpos 1
viewmodel_fov 60
viewmodel_offset_x 1
viewmodel_offset_y 1
viewmodel_offset_z -1
cl_prefer_lefthanded 0

// Binds
bind mwheeldown "+jump"
bind mouse3 "player_ping"
// No jump-throw bind: CS2 ignores binds that jump and throw at once (Valve, 19 Aug 2024). Jump, then release the grenade quickly.

// HUD and radar
cl_hud_telemetry_ping_show 2
cl_hud_telemetry_frametime_show 2
cl_hud_telemetry_net_misdelivery_show 1
cl_teamid_overhead_mode 3
r_drawtracers_firstperson 1
cl_radar_scale 0.7
cl_radar_always_centered 1
cl_radar_rotate 1
cl_hud_radar_scale 1
hud_scaling 1
cl_hud_color 0

// Game
con_enable 1
cl_autohelp 0
gameinstructor_enable 0

// Frame rate and network
fps_max 0
cl_net_buffer_ticks 0

echo "autoexec.cfg loaded"

Launch options

+exec autoexec

How to use it

  1. Set your sensitivity and paste your crosshair share code (optional).
  2. Choose your viewmodel, binds, HUD and frame rate settings. Leave anything you don't want to change at its default.
  3. Download autoexec.cfg and put it in your CS2 cfg folder (the path is below).
  4. Tick +exec autoexec, copy the launch options and paste them into Steam: right-click Counter-Strike 2, Properties, General, Launch Options.
  5. Start CS2 and open the console: "autoexec.cfg loaded" means it worked. Copy the link to share or save your config.

Where to put autoexec.cfg

  1. In Steam, right-click Counter-Strike 2, then Manage, Browse local files. That opens the install folder (by default under C:\Program Files (x86)\Steam\steamapps\common\Counter-Strike Global Offensive).
  2. Open game\csgo\cfg and put autoexec.cfg there. The full path ends in Steam\steamapps\common\Counter-Strike Global Offensive\game\csgo\cfg.
  3. Make sure Windows didn't save it as autoexec.cfg.txt: turn on File name extensions in Explorer's View menu to check.
  4. Add +exec autoexec to the launch options so it runs every time the game starts.

CS2 launch options Valve has confirmed

OptionWhat it doesSource
+exec autoexecRuns your autoexec.cfg every time the game starts. Anything with a + runs as a console command.Standard console exec command (in the command list)
-joyTurns controller and joystick input back on. CS2 ignores it by default and Valve says it isn't officially supported.Valve, 29 May 2024
-worldwideFor players in China: starts the worldwide version without the launch prompt.Valve, 29 Sep 2023
-perfectworldFor players in China: starts the Perfect World version without the launch prompt.Valve, 29 Sep 2023
-promptperfectworldShows the prompt to choose between the two versions.Valve, 29 Sep 2023
-disable_workshop_command_filteringLets community (Workshop) maps run console commands outside the shorter allowed list Valve added in January 2026. Only for maps you trust.Valve, 30 Jan 2026

Anything that starts with a + runs as a console command when the game loads, so +fps_max 0 works like typing it in the console. Valve noted on 9 November 2023 that some commands given this way wait until the main menu has loaded.

Launch options we leave out

Most launch option lists online are copied from CS:GO. On 2 October 2024 Valve removed support for command line options "intended for development purposes only", and it hasn't listed the usual ones for CS2. We don't add an option unless Valve names it:

  • -novid: skipped an intro video in CS:GO. CS2 doesn't play one.
  • -tickrate 128: CS2 matchmaking uses sub-tick updates, and tick rate is a server setting, not yours.
  • -high, -threads, -freq, -console: not in any CS2 note from Valve. The developer console has a setting (con_enable, in the generator above), and the refresh rate is in the video settings.
  • -insecure: Valve dropped it as a requirement for Workshop maps on Linux on 16 November 2023.

What changed from CS:GO configs

  • Jump-throw, null-bind and other multi-action binds stopped working on 19 August 2024. Single-action binds, like jump on the mouse wheel, still work.
  • cl_interp can't be set since 7 February 2024; the interpolation follows cl_net_buffer_ticks ("Buffering to smooth over packet loss"). Leave it at 0 unless you have packet loss.
  • fps_max can't be changed while you're on a server since 14 August 2025. Set it in the autoexec or the menu.
  • CS:GO's cl_righthand is gone: left hand is cl_prefer_lefthanded 1, and the Couch viewmodel position was removed on 25 April 2024.
  • Crosshair sizes moved to cl_crosshair_length, cl_crosshair_thickness and cl_crosshair_gap in the September 2026 update. Pasting your share code into the generator gives you the current names.

Copy a pro's settings from our CS2 pro settings, find a crosshair in pro crosshair codes, then open a free CS2 case. Buying or selling skins? Compare CS2 trading sites.

Sources: CS2's command list for every command, range and default; Valve's CS2 update notes on Steam (19 Aug 2024 (binds and jump-throws), 2 Oct 2024 (development command line options removed), and the dated notes named above). Checked 16 October 2026.

FAQ

Where do I put autoexec.cfg in CS2?
In the game's cfg folder: Steam\steamapps\common\Counter-Strike Global Offensive\game\csgo\cfg. If your Steam library is on another drive, start from that library folder. The game folder is still called Counter-Strike Global Offensive.
How do I make CS2 run my autoexec?
Add +exec autoexec to the launch options (Steam, right-click Counter-Strike 2, Properties, General, Launch Options). You can also run it by hand at any time by typing exec autoexec in the console.
How do I check that my autoexec works?
Our file ends with echo "autoexec.cfg loaded". Open the console after the game starts: if you see that line, the file ran. If you see nothing, check that the file isn't called autoexec.cfg.txt (turn on file name extensions in Windows Explorer).
Do jump-throw binds work in CS2?
No. Since 19 August 2024, CS2 ignores binds that include more than one movement or attack action, which covers jump-throw and null binds. Valve made jump throws reliable without a bind instead: jump, then release the grenade quickly.
What are the best CS2 launch options?
For most players just +exec autoexec. The launch options Valve has confirmed for CS2 are few: -joy for controllers, -worldwide, -perfectworld and -promptperfectworld for players in China, and -disable_workshop_command_filtering for Workshop maps. Any console command also works with a + in front.
Do -novid, -high and -tickrate 128 still work?
Valve doesn't list any of them for CS2, and on 2 October 2024 it removed command line options that were meant for development only. CS2 has no intro video to skip, and tick rate isn't something a player sets. Leave them out unless you've tested that they change something.

More free tools

All tools →