
CS2 demo commands: the full list with defaults
The core CS2 demo commands are playdemo to start a file, demoui for the playback panel, demo_togglepause, demo_timescale for speed, demo_gototick to jump, and record / stop to record.
CS2 has eighteen demo commands and eight playback settings that it does not save to your config. All are below, with Valve's own help text and each setting's shipped default.
Enable the developer console in the game settings first. Everything here is typed there, unless you bind it to a key. A command does something when run; a setting holds a value.
CS2 demo playback commands
| Command | What the game says it does |
|---|---|
playdemo | Play a recorded demo file (.dem) |
demoui | Show/hide demo playback ui |
demo_pause | Pauses demo playback |
demo_resume | Resumes demo playback |
demo_togglepause | Toggles demo playback |
demo_goto | Skips to location in demo |
demo_gototick | Skips to a tick in demo |
demo_marktick | Marks the current demo playback tick for later use |
demo_gotomark | Skips the current demo playback to the marked tick |
demo_pauseatservertick | Pauses when the render time reaches the specified tick |
demo_step_tick | Play for N ticks (default 1) and then pause |
demo_timescale | Sets demo replay speed |
demo_info | Print information about currently playing demo |
demolist | Print demo sequence list |
stopdemos | Stop looping demos (current demo will complete) |
Seek by tick. A tick is the demo's own unit of time, so a tick number is an exact address you can return to. Mark and return: run demo_marktick at a moment, then demo_gotomark to come back. Slow down: demo_timescale below 1 is slower than real time. For the last half second before a death, demo_step_tick steps and stops.
CS2 demo recording commands
| Command | What the game says it does |
|---|---|
record | Record a demo |
stop | Finish recording demo |
_record | Record a demo incrementally |
Run record with a file name during a match and stop when done. It records only what your own client received, from the moment you type it. For a match you did not record, download it: see how to download CS2 demos.
CS2 demo playback settings and defaults
| Setting | Default | What the game says it does |
|---|---|---|
demo_ui_mode | 2 | UI mode for demo playback. 0 = disabled, 1 = minimal, 2 = full |
demo_pause_at_end | true | Pause demo playback when the end of the file is reached, otherwise quit to main menu |
demo_quitafterplayback | false | Quits game after demo playback |
demo_recordcommands | true | Record commands typed at console into .dem files |
demo_highlight_seconds_before | 6 | How many seconds before the actual highlight event to show when viewing highlights |
demo_highlight_seconds_after | 2 | How many seconds after the actual highlight event to show when viewing highlights |
demo_highlight_fade_duration | 0.25 | Duration of the fade in and of the fade out transitions (fade in + fade out is 2x this value) |
demo_skip_to_shot_seconds_before | 2 | How many seconds before the shot to skip to when skipping to a specific shot ID |
The game's highlight view shows six seconds before and two after. Six seconds of lead-up is a good habit for reviewing a death by hand too.
CS2 demo camera commands
Demo playback reuses the spectator system, so the camera commands are spec_, not demo_.
| Command | What the game says it does |
|---|---|
spec_mode | Set spectator mode |
spec_player | Spectate a player by name or slot |
spec_next | Spectate next player |
spec_prev | Spectate previous player |
spec_goto | Move the spectator camera to a specific location, given as x y z pitch yaw |
spec_show_xray | If set to 1, you can see player outlines and name IDs through walls |
spec_autodirector | Auto-director chooses best view modes while spectating |
Watch a real round, take over and play it. Today's moment is free in 3D, with no account.
Play daily
Where are CS2 demos stored?
Demos the game writes go into your Counter-Strike 2 installation, normally under the csgo folder inside the game directory, unless you gave record a path. playdemo looks for file names there. A demo watched in a browser can stay in your downloads folder.
Where does this list come from?
Every name, help string and default was transcribed from the game's own cvarlist output, so the wording is Valve's. Updates add and remove commands, so the list is accurate as of its date; run cvarlist to check. The eight settings were checked to be ones the game does not save to your config, so the defaults are the engine's own. The same habit drives the CS2 Mechanics Reference.
No console at all? A browser viewer replaces this list with a timeline, cameras and one-key shortcuts. The shorter CS2 demo controls page covers the panel, binds and browser keys.
FAQ
How do I open the CS2 demo playback UI?
Type demoui in the console while a demo is playing. The game describes it as show or hide demo playback ui, and it is the panel with the scrub bar and the speed control. The related setting demo_ui_mode chooses which panel appears, where 0 is disabled, 1 is minimal and 2 is full.
How do I jump to a specific tick in a CS2 demo?
Use demo_gototick followed by the tick number, which the game describes as skips to a tick in demo. To come back to the same place later, run demo_marktick at the moment you care about and then demo_gotomark to return to it.
How do I record a demo in CS2?
Run record followed by a filename while you are in a match, and run stop when you are finished. The game describes those two as record a demo and finish recording demo. Recording is a client side capture, so it only holds what your own client received.
How do I slow down or speed up CS2 demo playback?
demo_timescale sets demo replay speed, where a value below 1 is slower than real time and a value above 1 is faster. For frame by frame inspection, demo_step_tick plays for a number of ticks and then pauses, defaulting to a single tick.
Where does CS2 save demos that you record?
Into your Counter-Strike 2 installation, normally under the csgo folder inside the game directory, unless you gave the record command a path of your own.