How to Install Counter-Strike: Source and Join a Server
Installing CS:S, why sv_pure deletes your skins on some servers, and how to reach the surf, bhop and zombie communities that never left.
Counter-Strike: Source occupies an odd position. It is not the original, it is not the current game, and for years the accepted wisdom was that it had been abandoned somewhere between the two.
The server list says otherwise. There are 599 Counter-Strike: Source servers listed here, which is more than Counter-Strike: Global Offensive has on this site, and the reason is simple: Valve never took the server browser away from it. Everything that made community Counter-Strike worth playing in 2007 still runs, unchanged, on machines people still pay for.
This covers buying it, installing it, and the parts of joining a server that will otherwise waste your first evening.
What you need
CS:S is a paid Steam game. There is no free version.
- A Steam account
- Steam installed
- Around 12 GB free
- A one-off purchase, frequently discounted
Our Steam installation guide covers account setup if this is your first Valve game.
Which Counter-Strike is this one
Steam sells four games with confusingly similar names, and the store does not distinguish them well:
- Counter-Strike: Source β the 2004 Source engine rebuild. This one.
- Counter-Strike β the 2000 original, GoldSrc, still busy. 1,589 servers here.
- Counter-Strike: Condition Zero β 2004, GoldSrc, single-player campaign attached. Its own servers.
- Counter-Strike 2 β free and current. Different again.
CS:S is the middle child. It plays closer to 1.6 than to CS2 β smaller maps, faster rounds, no ability queue and no economy tuning meetings.
Step 1: install
Buy it on Steam, open your Library, install it.
The files land in steamapps/common/Counter-Strike Source. Inside that, cstrike is the folder that matters β maps, materials, custom content and your config all live there.
Launch it once and let the first-run setup finish before changing anything.
Step 2: enable the console
Open Options, then Keyboard, then Advanced, and tick Enable developer console. Apply.
The tilde key (~) now opens it. You cannot connect to a server by address without this, and almost every piece of advice you read about this game assumes it is on.
If you would rather do it from Steam, right-click the game, open Properties, and add -console to the launch options. Both work.
Step 3: rates
Source is far better behaved than GoldSrc here β the defaults are sane on a modern connection, and most servers set their own limits anyway. But two values are worth checking:
cl_updaterate 66
cl_cmdrate 66
66 matches the tick rate most CS:S servers run. Some run 100, and on those you can raise both to 100 for a genuinely tighter feel. Setting them higher than the server supports does nothing β the server clamps you β so there is no harm in asking.
rate controls bandwidth and the modern default is high enough that you can leave it alone.
Step 4: find a server
There is no matchmaking in CS:S. You choose a machine and connect to it.
The in-game browser
From the main menu, Find Servers, then Internet. It works, it is slow, and it sorts on numbers that servers can inflate.
The Favorites tab is the useful one. It takes an address directly, and once you have found three or four servers you like, this becomes your actual server list.
A measured list
The alternative is choosing first and connecting second. Our Counter-Strike: Source list queries every listing directly every fifteen minutes, so the player counts are measured rather than reported, and every entry carries a copyable address.
The mode hubs get there faster if you already know what you want: surf, zombie, bhop, deathmatch, jailbreak, gungame and awp are separate communities with separate regulars, and a surf server tells you nothing about whether the jailbreak scene is alive.
Step 5: connect
Console, then:
connect 74.91.113.116:27015
Copy the whole thing including the port. 27015 is the default and busy hosts run dozens of servers on one machine, so most of them are not on it.
Practise offline first
CS:S ships with bots, and there is no reason to learn the maps with forty strangers watching.
From the main menu there is an option to play offline against bots. Once you are in, the console gives you finer control:
bot_add_ct
bot_add_t
bot_kick
bot_difficulty 2
bot_difficulty runs from 0 to 3. Two is a reasonable sparring partner; three will beat most people who have not played in a decade.
This is also the fastest way to learn the callouts on de_dust2 and de_inferno, which every server assumes you already know and nobody will explain in chat.
The chat commands nearly every server understands
Almost every populated CS:S server runs SourceMod, the plugin platform that has kept Source community servers alive. It adds a set of chat commands that are close to universal, and knowing four of them makes you look like you have been here before.
Type these into normal chat, not the console:
!rtvβ rock the vote. Enough players typing it triggers a map vote. This is how a stale map gets changed.!nominateβ put a specific map on the next vote.!motdβ reopen the server's rules and information page.!adminβ page an available admin, for a cheater or a griefer. Use it sparingly and it works; use it constantly and it does not.
Some servers use / instead of !, which hides the command from other players. Both usually work.
sv_pure, and why your skins vanished
This is the CS:S-specific thing that confuses people, and it has nothing to do with your installation being broken.
Servers set a variable called sv_pure. At its stricter settings the server requires your game files to match Valve's originals, and any custom model, skin or sound you installed is ignored for the duration β you see the default weapon, not the one you downloaded.
This is deliberate and it is not a bug. A custom model can be an advantage β a brighter player skin is easier to see β so competitive servers refuse them. Casual servers usually do not.
If your skins work on one server and not the next, that is sv_pure doing exactly its job. There is no client-side fix, and looking for one leads you to the sort of website that installs other things while it is there.
Custom content and the first join
Community servers push their own maps and models to you. Source does this much better than GoldSrc: server owners can point clients at an HTTP host, and the files arrive in seconds instead of minutes.
Some do not bother, and then you wait. A large zombie escape map on a server with no fast download can take a couple of minutes on first join. It happens once per map.
Downloads land in cstrike/download. That folder can be deleted whenever you want the space back.
Settings that persist
cstrike/cfg/config.cfg is rewritten by the game on exit, so editing it directly does not stick.
Create cstrike/cfg/autoexec.cfg instead and put your rates, binds and aliases there. It runs at startup, it survives updates, and it survives the game crashing β which after twenty years it occasionally still does.
Problems you will actually hit
Purple and black checkerboard textures. Missing content. On CS:S specifically this usually means a custom map referencing materials it did not ship; on other Source games it means CS:S content is not mounted. Rejoining after the download completes normally fixes it.
Stuck on "Retrying connection". The server is full, down, or behind a firewall that is dropping you. Check the listing β if it shows offline there, it is the server.
The game runs but the mouse feels floaty. Turn off mouse acceleration in Windows and check m_rawinput 1. Source's defaults predate raw input being standard.
Everything is stretched. Set your resolution and aspect ratio in Options, Video. The game will otherwise pick something that suited a 2004 monitor.
What it is actually like, next to CS2
Worth setting expectations, because people arrive here from the current game and find the differences jarring rather than nostalgic.
There is no ranked matchmaking. There are no ranks at all, no Prime, no premier mode and no season. Your record is whatever the server you play on chooses to remember about you, which on most servers is nothing.
Servers are bigger. A 10-player competitive match is the exception here; 24 and 32 slot servers on rotation are the norm, and the game plays looser because of it. Rounds are shorter, the economy matters less, and nobody is going to spend the freeze time explaining a utility setup.
Movement is faster and the hitboxes are more forgiving. Weapon spray patterns exist but are less rigidly learnable than CS2's.
None of this makes it a worse game. It makes it a different one, closer in spirit to Counter-Strike 1.6 than to what Counter-Strike became β which is the reason 599 servers are still running.
Where to go next
The full guide to Counter-Strike: Source servers covers what separates a server worth joining from one that is merely populated.
If you want the same community server culture on a different engine, Team Fortress 2, Day of Defeat: Source, Garry's Mod and Half-Life 2: Deathmatch all run on the same Source foundations and all still have populated servers β and everything you learned about the console, sv_pure and autoexec.cfg carries straight over.
<!-- joingg-footer -->
---
JoinGG is a live directory of community game servers. Every listing is queried directly every fifteen minutes, so the player count you see was measured rather than reported by its owner, and each one carries a copyable connect address. Counter-Strike: Source servers are listed here, and every game on the site has its own hub. Player counts across every game are on the statistics page, and Counter-Strike: Source's own numbers β servers online, players now, activity by hour β are on its statistics page.
Common questions
- How can you reclaim drive space from downloaded custom maps?
- You can delete the cstrike/download folder whenever you need the storage back. Community server files and maps are saved directly into that location on your drive.
- Why does editing cstrike/cfg/config.cfg fail to save your changes?
- The game rewrites cstrike/cfg/config.cfg automatically whenever you exit. To make your rates, binds, and custom aliases permanent, place them into a newly created file named cstrike/cfg/autoexec.cfg instead.
- How do you fix a floaty mouse feel in Counter-Strike: Source?
- Turn off mouse acceleration in Windows and set m_rawinput 1 in your game. The original default settings predate raw input becoming a standard feature.
Published Β· 8 min read