CS2 console commands
Search 238 commands and variables that exist in CS2 today, with the defaults and limits the game itself reports. Anything that is gone is in its own tab, so you can tell old advice from current.
Try crosshair, fps_max, bot or demo. Pick a category to narrow it.
Console and config
Run, save and manage your settings.
| Command | What it does | Default | Range | Where |
|---|---|---|---|---|
exec exec <file> | Runs a .cfg file from the game/csgo/cfg folder. Leave off the .cfg. | Client | ||
execifexists execifexists <file> | Runs a config only if the file exists, with no error if it does not. | Client | ||
host_writeconfig | Saves your current settings to config.cfg. | Client | ||
bind bind "<key>" "<command>" | Binds a key or mouse button to a command. | Client | ||
unbind unbind <key> | Removes the binding on one key. | Client | ||
unbindall | Removes every binding. Re-bind your movement keys afterwards, or run binddefaults. | Client | ||
binddefaults | Puts all key bindings back to their defaults. | Client | ||
alias alias "<name>" "<commands>" | Makes a short name that runs a list of commands. | Client | ||
echo echo <text> | Prints a line in the console. Handy in configs to confirm they ran. | Client | ||
toggle toggle <cvar> [value1 value2 ...] | Flips a cvar between values on each press, for example toggle cl_showfps 0 1. | Client | ||
incrementvar incrementvar <cvar> <min> <max> <step> | Steps a cvar up by a fixed amount, wrapping between min and max. | Client | ||
cyclevar cyclevar <cvar> <value1> <value2> ... | Cycles a cvar through a list of values. | Client | ||
toggleconsole | Opens or closes the console. | Client | ||
find find <text> | Searches console commands and cvars for a word. | Client | ||
help help <name> | Prints help for a command or cvar. | Client | ||
cvarlist | Lists every console variable and command the game knows. | Client | ||
differences | Lists the cvars you have changed from their defaults. | Client | ||
key_listboundkeys | Lists every key you have bound. | Client | ||
key_findbinding key_findbinding <command> | Shows which key is bound to a command. | Client | ||
con_enable | Allows the console to be opened. Same as the Enable Developer Console setting. | false | Client | |
status | Prints your connection, the server and the players on it. | Client | ||
maps | Lists the maps the game can load. | Client | ||
map map <name> | Loads a map. Offline this starts a local game. | Client | ||
changelevel changelevel <name> | Changes the map on a server you run. | Client | ||
connect connect <address> | Connects to a server. | Client | ||
disconnect | Leaves the current game. | Client | ||
quit | Closes CS2. | Client |
Crosshair
Every crosshair setting is a separate cvar. Colour is set per channel, not with one number.
| Command | What it does | Default | Range | Where |
|---|---|---|---|---|
cl_crosshairstyle | Crosshair style. The game accepts 0 to 9. | 7 | 0 to 9 | Client |
cl_crosshairdot | Draws a centre dot. | false | Client | |
cl_crosshair_t | T-style crosshair: hides the top bar. | false | Client | |
cl_crosshair_drawoutline | Outline: 0 off, 1 on, 2 the game's second outline mode. | 1 | 0 to 2 | Client |
cl_crosshair_length | Length of each crosshair line. | 8 | 0 to 255 | Client |
cl_crosshair_thickness | Thickness of the lines. | 2 | 0 to 32 | Client |
cl_crosshair_gap | Gap between the centre and the lines. Negative values overlap the lines. | 4 | -3840 to 3840 | Client |
cl_crosshaircolor_r | Red channel, 0 to 255. | 0 | 0 to 255 | Client |
cl_crosshaircolor_g | Green channel, 0 to 255. | 255 | 0 to 255 | Client |
cl_crosshaircolor_b | Blue channel, 0 to 255. | 0 | 0 to 255 | Client |
cl_crosshaircolor_a | Opacity, 0 to 255. | 255 | 0 to 255 | Client |
cl_crosshairoutline_r | Outline red, 0 to 255. | 0 | 0 to 255 | Client |
cl_crosshairoutline_g | Outline green, 0 to 255. | 0 | 0 to 255 | Client |
cl_crosshairoutline_b | Outline blue, 0 to 255. | 0 | 0 to 255 | Client |
cl_crosshairoutline_a | Outline opacity, 0 to 255. | 255 | 0 to 255 | Client |
cl_crosshair_recoil | Makes the crosshair follow recoil. | true | Client | |
cl_crosshair_sniper_width | Width of the scope cross lines. 1 is a one-pixel hairline. | 1 | Client | |
cl_crosshair_friendly_warning | Changes the crosshair when a teammate is in your line of fire. | 1 | 0 to 1 | Client |
cl_crosshair_dynamic_splitdist | How far the lines split apart as the crosshair spreads. | 3 | 0 to 127 | Client |
cl_crosshair_dynamic_spread_limit | Upper limit on how far a dynamic crosshair opens. | 255 | 0 to 255 | Client |
cl_grenadecrosshair_keepusercrosshair | Keeps your own crosshair while the grenade throw crosshair shows. | true | Client | |
cl_show_observer_crosshair | Whose crosshair you see while spectating. | 2 | Client |
Viewmodel and FOV
Where the weapon sits on screen. Ranges are the limits built into the game.
| Command | What it does | Default | Range | Where |
|---|---|---|---|---|
viewmodel_fov | Viewmodel field of view. | 60 | 60 to 68 | Client |
viewmodel_offset_x | Moves the gun left (negative) or right (positive). | 1 | -2 to 2.5 | Client |
viewmodel_offset_y | Moves the gun toward or away from the camera. | 1 | -2 to 2 | Client |
viewmodel_offset_z | Moves the gun down (negative) or up (positive). | -1 | -2 to 2 | Client |
viewmodel_presetpos | Applies a built-in position preset: 1 Desktop, 2 Classic. | 1 | Client | |
cl_prefer_lefthanded | Holds weapons in your left hand. | false | Client | |
fov_desired | The base field of view. | 75 | 1 to 135 | Client |
r_drawtracers_firstperson | Shows or hides your own bullet tracers. | true | Client |
HUD and radar
On-screen layout and the minimap.
| Command | What it does | Default | Range | Where |
|---|---|---|---|---|
cl_hud_color | 0 = team color, 1 = white, 2 = bright white, 3 = light blue, 4 = blue, 5 = purple, 6 = red, 7 = orange, 8 = yellow, 9 = green, 10 = aqua, 11 = pink, 12 = teammate color. | 0 | Client | |
hud_scaling | Scales the HUD. | 1 | 0.9 to 1.1 | Client |
cl_hud_radar_scale | Size of the radar on screen. | 1 | 0.8 to 1.3 | Client |
cl_radar_scale | Map zoom inside the radar. Smaller shows more of the map. | 0.7 | 0.25 to 1 | Client |
cl_radar_always_centered | If set to 0, the radar is maximally used. Otherwise the player is always centered, even at map extents. | true | Client | |
cl_radar_rotate | Rotates the radar with your view. | true | Client | |
cl_radar_icon_scale_min | Sets the minimum icon scale. Valid values are 0.4 to 1.25. | 0.6 | 0.4 to 1.25 | Client |
cl_radar_square_with_scoreboard | Turns the radar square while the scoreboard is open. | true | Client | |
cl_hud_radar_background_alpha | Opacity of the radar background. | 0.627 | 0 to 1 | Client |
cl_hud_radar_blur_background | Blurs the radar background. | true | Client | |
cl_teamid_overhead_mode | Always show team id over teammates. 0 = off, 1 = pips; 2 = +name, 3 = +equipment | 3 | Client | |
cl_teammate_colors_show | In competitive, 1 = show teammates as separate colors in the radar, scoreboard, etc., 2 = show colors and letters | 1 | Client | |
cl_showloadout | Toggles display of current loadout. | true | Client | |
hud_showtargetid | Enables display of target names | true | Client | |
cl_show_clan_in_death_notice | Is set, the clan name will show next to player names in the death notices. | true | Client | |
cl_deathnotices_show_numbers | 0: default; 1: draw names as just numbers; 2: append number on killer and victim to the name | 0 | Client | |
cl_draw_only_deathnotices | Hides the HUD except the crosshair and death notices. Used for video. | false | Client | |
cl_drawhud | Enable the rendering of the hud | true | Cheat-protected | |
cl_autohelp | Turns on the automatic helper hints. | true | Client | |
gameinstructor_enable | Display in game lessons that teach new players. | false | Client | |
cl_disable_round_end_report | Hides the round-end report. | false | Client | |
cl_cursor_scale | Scales the mouse cursor in menus. | 1 | Client | |
cl_sanitize_player_names | Replace names of other players with something non-offensive. | false | Client | |
cl_hide_avatar_images | Hide avatar images for other players. 0 - Off. 1 - Block All 2 - Block all but friends | 0 | Client |
Audio
Volumes are 0 to 1.
| Command | What it does | Default | Range | Where |
|---|---|---|---|---|
volume | Master volume. | 1 | 0 to 1 | Client |
snd_gamevolume | Game volume | 1 | 0 to 1 | Client |
snd_gamevoicevolume | Game v.o. volume | 1 | 0 to 1 | Client |
snd_voipvolume | Volume of other players' voice chat. | 1 | 0 to 2 | Client |
snd_musicvolume | Music volume | 1 | 0 to 1 | Client |
snd_menumusic_volume | Volume of Menu / Non-gameplay music | 0.04 | 0 to 1 | Client |
snd_mvp_volume | Volume of MVP Music | 0.16 | 0 to 1 | Client |
snd_roundstart_volume | Volume of Round Start Music | 0 | 0 to 1 | Client |
snd_roundend_volume | Volume of Won/Lost Music | 0.16 | 0 to 1 | Client |
snd_roundaction_volume | Volume of Move Action Music | 0 | 0 to 1 | Client |
snd_tensecondwarning_volume | Volume of Ten Second Warnings | 0.04 | 0 to 1 | Client |
snd_deathcamera_volume | Volume of Deathcam Timers | 0.16 | 0 to 1 | Client |
snd_mapobjective_volume | Volume of Map Objective Music | 0.04 | 0 to 1 | Client |
snd_headphone_eq | Chooses a headphone equaliser preset. | 0 | Client | |
snd_mute_losefocus | Mutes the game when its window is not focused. | true | Client | |
snd_mute_mvp_music_live_players | If set, MVP music is muted if players from both teams are still alive. | false | Client | |
snd_steamaudio_enable_perspective_correction | Enable perspective correction for 3D audio. | false | Client |
Mouse and input
Sensitivity and control behaviour.
| Command | What it does | Default | Range | Where |
|---|---|---|---|---|
sensitivity | Mouse sensitivity. | 1.25 | 0.0001 to 8 | Client |
zoom_sensitivity_ratio | Additional mouse sensitivity scale factor applied when FOV is zoomed in. | 1 | 0.01 to 3 | Client |
sensitivity_y_scale | Multiplies the mouse Y axis for finer pitch vs yaw aim | 1 | 0 to 2 | Client |
m_yaw | Mouse yaw factor. | 0.022 | Client | |
m_pitch | Mouse pitch factor. | 0.022 | Client | |
mouse_inverty | Inverts vertical mouse movement. | false | Client | |
option_duck_method | Toggle crouch instead of hold. | false | Client | |
option_speed_method | Toggle walk instead of hold. | false | Client | |
cl_debounce_zoom | Whether or not to disable holding secondary fire to cycle zoom levels | true | Client | |
cl_sniper_auto_rezoom | Auto-rezoom snipers after a shot | true | Client | |
cl_silencer_mode | 0: cannot detach; 1: press secondary fire to detach | 0 | Client | |
cl_use_opens_buy_menu | Pressing the +use key will open the buy menu if in a buy zone (just as if you pressed the 'buy' key). | false | Client | |
cl_weapon_stealth_reload_toggle | Should the silent reload act like a toggle | false | Client | |
cl_scoreboard_mouse_enable_binding | The binding that frees the mouse cursor on the scoreboard. | +attack2 | Client | |
input_button_code_is_scan_code_scd | Bind keys based on keyboard position instead of key name | true | Client | |
cl_allow_multi_input_binds | Lets binds hold more than one input action. Cheat-protected, so it only works with sv_cheats 1. | false | Cheat-protected |
Network, FPS and diagnostics
Frame rate, network display and timing. The old net_graph and cl_cmdrate family is gone; see the removed list below.
| Command | What it does | Default | Range | Where |
|---|---|---|---|---|
fps_max | Frame rate limiter. 0=no limit. Does not apply to dedicated server. | 120 | Client | |
fps_max_ui | Frame rate limiter while the game UI is displayed. 0=no limit. Does not apply to dedicated server. | 0 | Client | |
engine_low_latency_sleep_after_client_tick | When r_low_latency is enabled, this moves the low latency sleep on tick frames to happen after client simulation. | false | Client | |
cl_showfps | Draw fps meter at top of screen (1 = fps, 2 = smooth fps, 3 = server MS, 4 = Show FPS and Log to file ) | 0 | Client | |
cl_showpos | Shows your position and speed. Cheat-protected in the current game. | 0 | Cheat-protected | |
cl_hud_telemetry_ping_show | Show ping in the HUD. 0=never, 1=only in poor conditions, 2=always | 1 | Client | |
cl_hud_telemetry_frametime_show | Show frame time (FPS) in the HUD. 0=never, 1=only if poor, 2=always | 1 | Client | |
cl_hud_telemetry_net_misdelivery_show | Show percentage of user commands & server snapshots that are missed due to network conditions. 0=never, 1=only in poor conditions, 2=always | 1 | Client | |
cl_hud_telemetry_net_quality_graph_show | Show packet jitter and netframe loss/reordering in the HUD. 0=never, 1=only in poor conditions, 2=always | 0 | Client | |
cl_hud_telemetry_serverrecvmargin_graph_show | Show graph of the server recv margin in the HUD. (How early/late user commands are arriving at the server before they are executed.) 0=never, 1=only when there are command queue problems, 2=always | 0 | Client | |
cl_ticktiming cl_ticktiming {print|<interval>} [summary|detail] | {print|<interval>} [summary|detail] Print timing stats now, or set report interval | Client | ||
net_status | Prints network status. | Client | ||
rate | Min bytes/sec the host can receive data | 80000 | Client | |
cl_net_buffer_ticks | Number of ticks of delay for server snapshots and user commands. This value controls the value of cl_interp_ratio, which you should not modify directly. | 0 | 0 to 2 | Client |
cl_interp_ratio | Set number of client simulation interpolation ticks. | 2 | 0 to 19 | Client |
cl_timeout | After this many seconds without receiving a packet from the server, the client will disconnect itself | 30 | Client | |
mm_dedicated_search_maxping | The longest ping matchmaking will prefer when it searches for a server. | 150 | 25 to 350 | Client |
r_fullscreen_gamma | Screen Gamma (only in fullscreen modes) | 2.2 | 1 to 4 | Client |
cl_ragdoll_limit | Maximum number of ragdolls to show (-1 disables limit) | 20 | Client |
Voice, chat and pings
Communication settings.
| Command | What it does | Default | Range | Where |
|---|---|---|---|---|
voice_modenable | Enable/disable voice in this mod. | true | Client | |
voice_vox | Voice chat uses a vox-style always on | 0 | Client | |
voice_threshold | decibel threshold for how loud the talker's input signal is before we think they are talking. | -120 | Client | |
voice_loopback | Plays your own voice back to you. | false | Client | |
voice_toggle_open_mic | Toggles open mic. | Client | ||
voice_modenable_toggle | Toggle the voice_modenable convar. | Client | ||
+voicerecord | Push to talk while held. | Client | ||
cl_mute_enemy_team | Block all communication from players on the enemy team. | false | Client | |
cl_mute_all_but_friends_and_party | Only allow communication from friends and matchmaking party members. Set to 1 to apply the in non-competitive game modes. Set to 2 will apply the setting in all modes. | 0 | Client | |
cl_player_ping_mute | Controls whether pings make a sound. Valve's description says 1 makes them audible and 0 silent, the reverse of what the name suggests. | 0 | Client | |
player_ping | Creates a ping notification where the player is looking. | Server | ||
cl_radial_radio_tap_to_ping | When tapping the radial radio button, leave a ping if nothing is selected within the time in seconds set in cl_radial_menu_tap_duration | true | Client | |
say say "<text>" | Sends a message to everyone. | Server | ||
say_team say_team "<text>" | Sends a message to your team. | Server | ||
callvote callvote <issue> | Start a vote on an issue. | Server |
Buying and inventory
Commands for buy binds and weapon switching.
| Command | What it does | Default | Range | Where |
|---|---|---|---|---|
buy buy <weapon> | Buys an item by name while you can buy, for example buy ak47. Several can be chained with ;. | Client | ||
autobuy | Attempt to purchase items with the order listed in cl_autobuy | Client | ||
rebuy | Attempt to repurchase items with the order listed in cl_rebuy | Client | ||
cl_autobuy | The order autobuy tries to purchase in, for example cl_autobuy "ak47 m4a1 vesthelm". | Client | ||
cl_rebuy | The order in which rebuy will attempt to repurchase items | Client | ||
buymenu | Show or hide main buy menu | Client | ||
buyrandom | Buy random primary and secondary. Primarily for deathmatch where cost is not an issue. | Server | ||
use use <weapon_name> | Switches to a weapon or item you are carrying, for example use weapon_smokegrenade. | Client | ||
drop | Drops the weapon you are holding. | Client | ||
lastinv | Switches to your previous weapon. | Client | ||
slot1 | Selects the weapon in slot 1 (primary). | Client | ||
slot2 | Selects the weapon in slot 2 (secondary). | Client | ||
slot3 | Selects the weapon in slot 3 (knife). | Client | ||
+lookatweapon | Inspects your weapon while held. | Client | ||
+cl_show_team_equipment | Shows your teammates' equipment while the key is held. | Client |
Practice and private server
Server-side commands. They only work on a server you run: an offline map, a practice server or a workshop map. Entries marked as cheat-protected also need sv_cheats 1. None of this works on Valve's matchmaking servers.
| Command | What it does | Default | Range | Where |
|---|---|---|---|---|
sv_cheats | Allow cheats on server | false | Client | |
mp_restartgame mp_restartgame <seconds> | If non-zero, game will restart in the specified number of seconds | 0 | Server | |
mp_warmup_end | End warmup immediately. | Server | ||
mp_warmup_pausetimer | Set to 1 to stay in warmup indefinitely. Set to 0 to resume the timer. | 0 | Client | |
mp_roundtime | How many minutes each round takes. | 5 | 0.1 to 60 | Server |
mp_roundtime_defuse | How many minutes each round of Bomb Defuse takes. If 0 then use mp_roundtime instead. | 0 | 0 to 60 | Server |
mp_freezetime | how many seconds to keep players frozen when the round starts | 6 | 0 to 60 | Server |
mp_buytime | How many seconds after round start players can buy items for. | 90 | 0 to … | Client |
mp_buy_anywhere | When set, players can buy anywhere, not only in buyzones. 0 = default. 1 = both teams. 2 = Terrorists. 3 = Counter-Terrorists. | 0 | Client | |
mp_maxmoney | maximum amount of money allowed in a player's account | 16000 | 0 to … | Client |
mp_startmoney | amount of money each player gets when they reset | 800 | 0 to … | Client |
mp_c4timer | how long from when the C4 is armed until it blows | 40 | 10 to … | Client |
mp_ignore_round_win_conditions | Ignore conditions which would end the current round | false | Server | |
mp_round_restart_delay | Number of seconds to delay before restarting a round after a win | 7 | 0 to … | Client |
mp_respawn_on_death_ct | When set to 1, counter-terrorists will respawn after dying. | false | Client | |
mp_respawn_on_death_t | When set to 1, terrorists will respawn after dying. | false | Client | |
mp_free_armor | Determines whether kevlar (1+) and/or helmet (2+) are given automatically. | 0 | Client | |
mp_defuser_allocation | How to allocate defusers to CTs at start or round: 0=none, 1=random, 2=everyone | 0 | 0 to 2 | Client |
mp_give_player_c4 | Whether this map should spawn a c4 bomb for a player or not. | true | Client | |
mp_autoteambalance | Moves players between teams automatically to keep the sides even. | true | Server | |
mp_limitteams | Max # of players 1 team can have over another (0 disables check) | 2 | 0 to 30 | Server |
mp_friendlyfire | Allows team members to injure other members of their team | false | Client | |
mp_solid_teammates | How solid are teammates: 0 = transparent; 1 = fully solid; 2 = can stand on top of heads | 1 | Client | |
mp_pause_match | Pause the match in the next freeze time | Server | ||
mp_unpause_match | Resume the match | Server | ||
mp_teamname_1 | A non-empty string overrides the first team's name. | Server | ||
mp_teamname_2 | A non-empty string overrides the second team's name. | Server | ||
ammo_grenade_limit_total | The most grenades a player can carry in total. | 3 | Client | |
sv_infinite_ammo | Player's active weapon will never run out of ammo | 0 | Cheat-protected | |
sv_grenade_trajectory_prac_pipreview | Shows grenade trajectory practice picture-in-picture preview. | false | Client | |
sv_grenade_trajectory_prac_trailtime | Shows grenade trajectory practice visualization for this number of seconds. | 0 | 0 to 8 | Client |
sv_rethrow_last_grenade | Emit the last grenade thrown on the server. | Cheat-protected | ||
sv_showimpacts | Shows client (red) and server (blue) bullet impact point (1=both, 2=client-only, 3=server-only) | 0 | Client | |
sv_showimpacts_time | Duration bullet impact indicators remain before disappearing | 4 | 0 to 10 | Client |
weapon_accuracy_nospread | Disable weapon inaccuracy spread | false | Client | |
sv_gravity | World gravity. | 800 | Client | |
sv_airaccelerate | How much you can steer while airborne. Raising it makes air strafing easier. | 12 | Client | |
host_timescale | Prescale the clock by this amount. | 1 | Cheat-protected | |
god | Toggle by default, or 0 to disable and 1 to enable. Player becomes invulnerable. | Cheat-protected | ||
noclip | Toggle. Player becomes non-solid and flies. Optional argument of 0 or 1 to force enable/disable | Cheat-protected | ||
give give <item> | Give item to player. Arguments: <item_name> | Server | ||
kick kick <name> | Kick a player by name. | Client | ||
kickid kickid <userid> | Kick a player by userid or uniqueid, with a message. | Client |
Bots
Bots on a server you run.
| Command | What it does | Default | Range | Where |
|---|---|---|---|---|
bot_add | bot_add <t|ct> <type> <difficulty> <name> - Adds a bot matching the given criteria. | Server | ||
bot_add_t | bot_add_t <type> <difficulty> <name> - Adds a terrorist bot matching the given criteria. | Server | ||
bot_add_ct | bot_add_ct <type> <difficulty> <name> - Adds a Counter-Terrorist bot matching the given criteria. | Server | ||
bot_kick | bot_kick <all> <t|ct> <type> <difficulty> <name> - Kicks a specific bot, or all bots, matching the given criteria. | Server | ||
bot_difficulty | Defines the skill of bots joining the game. Values are: 0=easy, 1=normal, 2=hard, 3=expert. | 1 | Server | |
bot_stop | bot_stop <1|all> | <not_bomber> | <t> | <ct> | 0 | Cheat-protected | |
bot_freeze | Bots stand still. | false | Cheat-protected | |
bot_zombie | If nonzero, bots will stay in idle mode and not attack. | false | Cheat-protected | |
bot_crouch | Bots crouch. | false | Cheat-protected | |
bot_dont_shoot | If nonzero, bots will not fire weapons (for debugging). | false | Cheat-protected | |
bot_knives_only | Restricts the bots to only using knives | Server | ||
bot_pistols_only | Restricts the bots to only using pistols | Server | ||
bot_place | bot_place - Places a bot from the map at where the local player is pointing. | Cheat-protected |
Demos and spectating
Recording and watching replays.
| Command | What it does | Default | Range | Where |
|---|---|---|---|---|
record record <name> | Record a demo. | Cheat-protected | ||
stop | Finish recording demo. | Client | ||
playdemo playdemo <name> | Play a recorded demo file (.dem ). | Client | ||
demoui | Show/hide demo playback ui | Client | ||
demo_pause | Pauses demo playback. | Client | ||
demo_resume | Resumes demo playback. | Client | ||
demo_togglepause | Toggles demo playback. | Client | ||
demo_timescale demo_timescale <speed> | Sets demo replay speed. | Client | ||
demo_gototick demo_gototick <tick> | Skips to a tick in demo. | Client | ||
demo_goto | Skips to location in demo. | Client | ||
demo_info | Print information about currently playing demo. | Client | ||
demolist | Print demo sequence list. | Client | ||
demo_highlight_seconds_before | How many seconds before the actual highlight event to show when viewing highlights. | 6 | Client | |
spec_mode | Set spectator mode | Client | ||
spec_next | Spectate next player | Client | ||
spec_prev | Spectate previous player | Client | ||
spec_player | Spectate a player by name or slot | Client | ||
spec_goto | Move the spectator camera to a specific location. `spec_goto x y z pitch yaw` | Client | ||
cl_obs_interp_enable | Enables interpolation between observer targets | true | Client |
Old commands that no longer exist
These appear in CS:GO guides and are not in CS2's command list, so they print an unknown-command error. Checked against game files dated 28 October 2026.
| Old command | What it was | Use instead |
|---|---|---|
| net_graph | On-screen network and FPS graph | cl_showfps and the cl_hud_telemetry_* cvars |
| cq_netgraph | Often passed around as the net_graph replacement | It is not a CS2 command. Use cl_showfps and cl_hud_telemetry_* |
| cl_cmdrate | Client command rate | Nothing to set. The game manages its own update rates |
| cl_updaterate | Server update rate | Nothing to set. The game manages its own update rates |
| cl_righthand | Left or right hand | cl_prefer_lefthanded |
| cl_bobamt_lat | Sideways viewmodel bob | Nothing. The bob cvars are gone |
| cl_bobamt_vert | Vertical viewmodel bob | Nothing. The bob cvars are gone |
| cl_bob_lower_amt | Weapon lower bob | Nothing. The bob cvars are gone |
| cl_bobcycle | Bob cycle length | Nothing. The bob cvars are gone |
| cl_usenewbob | Switches viewmodel bob style | Nothing. The bob cvars are gone |
| viewmodel_recoil | Viewmodel recoil amount | Nothing. The cvar is gone |
| m_rawinput | Raw mouse input | Nothing to set in the console |
| cl_lagcompensation | Lag compensation toggle | Nothing. It cannot be turned off from the client |
| cl_predict | Client prediction toggle | Nothing. It cannot be turned off from the client |
| voice_scale | Voice volume | snd_voipvolume |
| voice_enable | Voice on or off | voice_modenable |
| cl_crosshaircolor | Preset crosshair colour 0 to 5 | cl_crosshaircolor_r, _g, _b and _a |
| cl_grenadepreview | Grenade trajectory preview | sv_grenade_trajectory_prac_pipreview on a practice server |
How we checked
Every command and variable above, apart from a few the game handles itself (buy, use, drop, +jump, +duck, +attack, +voicerecord), was looked up in an automated dump of CS2's own command and variable tables, dated 28 October 2026. Defaults, ranges and the cheat and server flags come straight from that dump. Where the game's own description was missing or unclear we wrote one. If a command is not in the dump, it is not in this list.
The Where column reads the game's flags: Cheat-protected needs sv_cheats 1, Server runs on a server you control, and Client runs on your own game.
How to open the console and run a command
Turn on Enable Developer Console in Settings, Game, then press the console key (the tilde, ~). Type a command and press Enter. A variable, or cvar, takes a value after its name, so fps_max 0 sets the frame cap. A command does something when you run it, like disconnect. To open the console at start-up without touching the settings, add -console to your CS2 launch options.
Anything you type in the console is gone next time unless the game saves it. Many variables are marked as saved and carry over on their own. For the rest, keep the lines in an autoexec.cfg, which our CS2 autoexec generator builds, or give a key its own command with the CS2 bind generator.
What the Where column means
The list has 238 entries. The Where column reads the flags the game itself sets on each one. 198 are Client and run on your own game, 25 are Server and only take effect on a server you control, such as the mp_, bot_ and sv_ families, and 15are Cheat-protected, which means they need sv_cheats 1 and so only work offline or on your own server. On Valve's matchmaking servers, Server and Cheat-protected commands print an error and do nothing.
That is why the Range column matters. When a variable has a range, the game clamps anything outside it. The viewmodel offsets are a good example, and our CS2 viewmodel generator stops its sliders at the same limits. The Crosshair tab lists the variables behind a crosshair, and the CS2 crosshair generator writes them for you with a live preview.
For aim, the sensitivity variable sits in the Mouse and input tab with its range of 0.0001 to 8. Multiply it by your DPI for eDPI, or move a sensitivity over from another game with the sensitivity converter.
FAQ
How do I open the console in CS2?
Go to Settings, then Game, and set Enable Developer Console to Yes. Then press the console key, which is the tilde key (~) by default. Adding -console to your launch options also opens it at startup.
What is the difference between a command and a cvar?
A command does something when you run it, like quit or disconnect. A cvar (console variable) holds a setting, like sensitivity or fps_max, and is changed by typing its name followed by a value.
What does cheat-protected mean?
Commands marked cheat-protected only run when the server has sv_cheats 1, which means your own server or an offline map. On matchmaking and most community servers they print an error and do nothing.
Which commands only work on my own server?
The ones marked Server, which cover mp_, bot_ and sv_ commands such as mp_roundtime or bot_add. They change how a match runs, so only a server you control accepts them. They do nothing on Valve's matchmaking servers.
How do I make settings permanent?
Put them in an autoexec.cfg in the game/csgo/cfg folder and add +exec autoexec to your launch options. Our autoexec generator builds the file for you.
Why is net_graph or cl_cmdrate not in the list?
They are not in CS2's command list. Use cl_showfps and the cl_hud_telemetry commands for FPS, ping and packet loss. The removed table below lists the old commands that fail.
Can I get banned for using console commands?
Not for the console commands listed here. They are part of the game. Cheat-protected commands cannot be used on servers where cheats are off.