// LOADING CSMAUK
// LOADING CSMAUK
Everything you need to set up a proper CS2 config: bind syntax basics, how to build and auto-load an autoexec.cfg, and copy-paste binds for jump-throw (with the current verified state and legality caveat), clear-decals, quick-switch and nade binds, buy binds with the new buy syntax, voice/radio, crouch-jump, a drop bind, and the net-graph / FPS commands.
By CSMAUK Staff
A good config does not aim for you, but it removes friction — the half-second you waste fumbling for a smoke, the round you lose because your jump-throw fired late. This guide covers the bind syntax from scratch, how to make an autoexec that loads every launch, and a set of must-have binds you can paste straight into your file. Every command here is standard CS2 console syntax.
A bind ties a key to a command. The basic form is bind followed by the key in quotes and the command in quotes. You can chain multiple commands with a semicolon inside one set of quotes. Commands that start with a plus sign are "held" actions — they have a matching minus version that fires when you release the key. That plus/minus pairing is the backbone of more advanced binds like jump-throw.
bind "f" "use weapon_flashbang" // single command
bind "x" "slot7; +reload" // chained commands (semicolon)
bind "shift" "+sprint" // held action: +/- pair
alias "myalias" "command1; command2" // name a reusable chain
unbind "k" // remove a bind
bind_osx / bind // use plain bind on WindowsAn alias is just a named command chain. You define it once, then bind a key to the alias name. This is what makes multi-step binds (like jump-throw) possible and readable.
An autoexec.cfg is a plain text file of console commands that you can run automatically when CS2 starts, so your binds survive every patch and reinstall. Create it in the game's cfg folder, then make sure the game executes it on launch.
If you want your in-game settings menu changes to persist alongside the file, end your autoexec with host_writeconfig. Adding a small echo line at the bottom is a handy sanity check — if you see your message in console on launch, you know the file executed.
// --- bottom of autoexec.cfg ---
host_writeconfig // save current config to disk
echo "autoexec loaded ok" // confirmation message in consoleThe jump-throw bind releases a grenade at the exact apex of a jump, every time, so line-ups are consistent. As of the current CS2 builds in 2025–2026 the simple alias-based bind works reliably: you hold left-click to pull the pin, then tap your jump-throw key, and it jumps and releases the throw together. This is the method the large community references still publish as current.
// Standard jump-throw bind (paste into autoexec.cfg)
alias "+jumpthrow" "+jump;-attack"
alias "-jumpthrow" "-jump"
bind "v" "+jumpthrow"Some players prefer a slightly more explicit chain that also releases the secondary fire, which can be more robust across binds that throw with right-click or both buttons. Both approaches are widely used; pick one, do not stack both.
// Alternative multi-action variant
alias "+jt" "+jump"
alias "+ta" "-attack; -attack2"
alias "-jt" "-jump"
bind "alt" "+jt; +ta"Legality: a jump-throw bind is allowed in CS2 matchmaking, Premier, and on FACEIT, and it does not trigger VAC. The one caveat is that some individual tournaments restrict multi-action binds in their rulebooks — if you compete in an organised event, check that event's rules before relying on it. The bind has been broken and restored across past CS2 updates, so re-test it after any major patch.
CS2 uses the buy command followed by the item's internal name. Binding common buys to keys lets you kit up in the first second of freeze time instead of clicking through the menu. You can chain several buys onto one key — handy for a full A-site or full B-site loadout.
// Buy binds — 'buy <weapon_name>'
bind "kp_end" "buy ak47; buy m4a1" // rifle (buys whichever your side uses)
bind "kp_downarrow" "buy vesthelm; buy vest" // armour
bind "kp_pgdn" "buy hegrenade"
bind "kp_leftarrow" "buy smokegrenade"
bind "kp_5" "buy flashbang"
bind "kp_rightarrow" "buy molotov; buy incgrenade" // T molly / CT incendiary
bind "kp_home" "buy defuser"
bind "kp_uparrow" "buy deagle"
bind "kp_pgup" "buy awp"Because the AK-47 and M4 are side-specific, chaining buy ak47; buy m4a1 on one key works for both sides — the game simply ignores the one you cannot buy. Same trick for the molotov (T) and incendiary (CT).
Beyond jump-throw and buys, a handful of small binds clean up the moment-to-moment game. Clearing decals wipes blood and bullet marks that can hide enemies. Quick-switch and dedicated nade binds let you pull a specific grenade instantly instead of cycling. A crouch-jump bind guarantees you clear boost spots, and a drop bind speeds up handing weapons to teammates.
// Clear decals (bind to your fire keys so it clears as you shoot)
bind "mouse1" "+attack; r_cleardecals"
bind "mouse2" "+attack2; r_cleardecals"
// Dedicated nade binds (no cycling)
bind "f" "use weapon_flashbang"
bind "c" "use weapon_smokegrenade"
bind "x" "use weapon_hegrenade"
bind "t" "use weapon_molotov weapon_incgrenade" // T molly OR CT inc
bind "g" "use weapon_decoy"
// Crouch-jump (clears boosts cleanly)
alias "+cjump" "+jump; +duck"
alias "-cjump" "-jump; -duck"
bind "space" "+cjump"
// Drop current weapon
bind "h" "drop"
// Quick-switch to last weapon then knife (e.g. for fast knife-out)
bind "q" "lastinv"Push-to-talk and quick radio commands keep comms tight, and the performance overlays help you spot lag or frame drops mid-game. Net-graph style info in CS2 is driven by the cl_showfps and net stats convars, plus the scoreboard ping panel.
// Voice push-to-talk (toggle off open-mic in settings first)
bind "mouse5" "+voicerecord"
// Quick radio / commands
bind "z" "radio1" // opens a radio menu
bind "mouse4" "player_ping" // ping system
// Performance / info overlays
cl_showfps 1 // simple FPS counter (use 2 for more detail)
bind "p" "toggle cl_showfps 0 1" // toggle the counter on a key
cq_netgraph 1 // network graph (CS2 replaced the old net_graph with cq_netgraph)| Key | Command | Purpose |
|---|---|---|
| V | +jumpthrow alias | Consistent grenade line-ups |
| Mouse1 / Mouse2 | +attack; r_cleardecals | Clear blood & bullet marks while shooting |
| F | use weapon_flashbang | Instant flash |
| C | use weapon_smokegrenade | Instant smoke |
| X | use weapon_hegrenade | Instant HE |
| T | use weapon_molotov weapon_incgrenade | Molotov (T) / Incendiary (CT) |
| Numpad | buy <weapon> | One-tap loadouts |
| Space | +jump; +duck alias | Crouch-jump for boosts |
| H | drop | Hand weapons to teammates fast |
| Mouse5 | +voicerecord | Push-to-talk |
| P | toggle cl_showfps 0 1 | Toggle FPS overlay |
Drop these into your autoexec.cfg, add +exec autoexec.cfg to your launch options, and your setup loads identically every session. Start with the jump-throw and nade binds — they pay off immediately — then layer in the buy binds and overlays once the muscle memory sticks. Re-test the jump-throw after any big CS2 update, since that one specific bind has a history of breaking and being fixed across patches.
Keep a backup of your autoexec.cfg somewhere outside the game folder. Steam validation and major patches can occasionally overwrite cfg files, and nothing is more annoying than rebuilding your whole config from memory mid-season.