How to Configure Your Counter-Strike: Source Server (server.cfg)
A complete walkthrough of cstrike/cfg/server.cfg — essential cvars, gamemode overrides, and how to apply changes without restarting.
server.cfg — Your Server's Main Config
cstrike/cfg/server.cfg executes automatically on every map change. It's where you set your server's identity, rules, and gameplay tuning. If you're used to CS2, note that the file lives at cstrike/cfg/ — not game/csgo/cfg/ — and many cvar names differ.
Essential Cvars
Paste this as a starting point and adjust to taste:
hostname "My CSS Server"
sv_password ""
sv_lan 0
sv_tags "casual"
rcon_password "ChangeThisNow"
sv_cheats 0
mp_timelimit 25
mp_roundtime 1.92
mp_maxrounds 0
mp_freezetime 6
mp_buytime 15
mp_startmoney 800
mp_maxmoney 16000
mp_friendlyfire 0
mp_autoteambalance 1
mp_limitteams 2
mp_c4timer 35
log on
sv_logfile 1
Cvar Notes
sv_lan 0 — mandatory for a public server. sv_lan 1 makes the server invisible to Steam's browser and only reachable on a LAN.
sv_password "" — blank means no password. Set a password to make the server private.
mp_roundtime 1.92 — the classic CSS round time in minutes. Surf and bhop servers typically set this to 60 (60 minutes per round, effectively no time limit).
sv_tags — comma-separated tags that appear in the server browser. Use these to attract the right players: "surf,timer,beginner" or "competitive,5v5".
rcon_password — do not leave this at the default and do not set it to something obvious. Anyone with this password has full console access to your server.
Gamemode-Specific Overrides
CSS auto-executes named config files based on game mode. You can create these in cstrike/cfg/ to override server.cfg for specific modes:
cstrike/cfg/gamemode_casual.cfg
cstrike/cfg/gamemode_competitive.cfg
cstrike/cfg/gamemode_deathmatch.cfg
You can also create any named config — e.g. surf.cfg or match.cfg — and execute it manually:
exec surf.cfg
Applying Changes Without Restarting
At the server console or via RCON:
exec server.cfg
This re-executes the file mid-game. Most cvars take effect immediately. A handful (like tickrate) require a full server restart.
What Doesn't Belong in server.cfg
- Map rotation — handled by
mapcycle.txtand SourceMod plugins, not server.cfg - Admin definitions — handled by
addons/sourcemod/configs/admins_simple.ini - Plugin configs — each SourceMod plugin has its own config in
addons/sourcemod/configs/
Quick Reference: Common Mistakes
| Mistake | Fix |
|---|---|
sv_lan 1 |
Change to sv_lan 0 |
rcon_password "" (blank) |
Set a real password or leave blank to disable RCON |
Editing csgo/cfg/server.cfg |
Wrong game — CSS uses cstrike/cfg/server.cfg |
| Changes not taking effect | Run exec server.cfg in console |