How to host a Counter-Strike 2 server

Modest by modern standards, but latency-sensitive in a way survival games are not. Nobody notices a survival server responding fifty milliseconds late; every Counter-Strike player does. Location and network quality matter more here than raw processing power, and consistency matters more than average speed.
How to install it
- Get a Game Server Login Token first. Steam issues these free from its game server account page. Do this before anything else so it is not the thing blocking you at the end.
- Install Steam’s command-line tool, then the CS2 dedicated server using an anonymous login.
- Start it with your token, a map and a game mode. All three are launch arguments rather than config settings.
- Check it appears in the community browser, not just that it accepts a direct connection. Those are different tests, and only one proves the token works.
Without a Game Server Login Token the server still runs and still accepts direct connections — it is simply invisible in the browser. That sends people hunting for firewall problems that do not exist. Generate one free from Steam’s game server account page before you start.
How to configure it
Mode configs load after server.cfg and overwrite what it set. Put mode-specific rules in a file suffixed _server — for example gamemode_competitive_server.cfg — which also stops a game update replacing your settings.
- Game mode is set at launch, not in server.cfg. Trying to change it from a config file is a common dead end.
- Mode-specific settings live in their own files, which is why a setting in server.cfg sometimes appears to be ignored — the mode config loads after it and overwrites it.
- Set a real remote-console password or do not enable remote admin at all.
- Host near your players. For a competitive shooter this outweighs almost every other decision.
Skipping the login token because the server appears to work. It will run and accept direct connections quite happily while being invisible in the browser, which sends people looking for firewall problems that are not there.
Written from experience running these servers. If something here no longer matches what you are seeing, tell us and we will recheck it.
Building GameDash at Schokker IT — the game server control panel we always wished existed. Writes about infrastructure automation, the SDK and running game servers at scale.