How to Host A CS:GO Server

CSGO lan server

Create a CS:GO Server: System requirements and instructions

For over two decades, the online tactical shooter “Counter-Strike” has been thrilling computer gamers all over the world. Initially started as a modification of the single-player game “Half-Life”, CS is now an independent game – the current edition is called “Counter-Strike: Global Offensive”, or CS:GO for short.

In the usual manner, you can also play multiplayer games with friends or strangers in the successor to “Counter-Strike: Source”, which has been available since 2012. Players have the option of playing online on official servers or on servers created by the Steam community. In these cases, however, the settings are determined by the administrator of the respective server.

If you want a CS:GO server where you can play undisturbed alone or privately with your friends (optionally with the best known AI-controlled bots), this is also possible by hosting your own server. How exactly this works and whether it makes sense to rent hardware for a CS:GO server is explained below.

Own server on your home PC or rent a CS:GO server?

If you want to play CS:GO together with your friends, you basically have three different options:

  • Start a shared, private game via “training with bots”.
  • Join a Steam community server together
  • Create and host your own CS:GO server

A joint game via the “Training with Bots” mode is quick to set up: all you have to do beforehand is invite your friends to play together in the game, then start the server and adjust the number of bots as desired. In this case, however, you are severely limited in terms of further settings. The restrictions are even stronger when you join a public community server together, because there the operator decides on the configuration of the CS:GO server. In addition, it is possible for other players to join these servers at any time. However, you can run both variants for the shared gaming experience on your own PC without any problems.

Note: The official CS:GO servers differ from dedicated servers (Steam Community or self-hosted) in one crucial point that has been hotly debated for years: Game information is processed at 64 ticks per second – on dedicated servers it’s 128 ticks per second.

Player actions (movements, hits, etc.) are thus processed with twice the intensity here, which – at least in theory – enables a more precise game evaluation. In practice, the difference is not noticeable for the majority of players due to server lag and insufficient technical basics (especially internet connection).

If you want to have full freedom in terms of game mode and server configuration, the third option is the right solution for you. On a dedicated server that you host yourself, you can freely decide who can join and customize the setup entirely according to your preferences in real time.

Since the dedicated server software takes up its own computing capacity and does not run together with the client, you will need additional hardware and broadband power for the CS:GO server in this case. Renting these network and server resources from a provider is not only a practical, but also cost-effective alternative to a second PC, which would be associated with additional acquisition and electricity costs.

These are the system requirements of a CS:GO server

The hardware requirements of an own server for “Counter-Strike: Global Offensive” are quickly met: Despite regular updates including smaller, performance-related updates, the game has, after all, already had a few years under its belt. However, the developer Valve does not provide any concrete information about the minimum setup. Therefore, experience values are the best point of reference when composing and creating a new CS:GO server.

Processor (CPU)

The amount of clock frequency required depends in particular on how many players are active on your CS:GO server at the same time. In a minimal configuration for a few server participants, Intel or AMD CPUs with 2 GHz are sufficient, for example. However, if you are planning a server that is to be available for a high number of players (12 players or more), a CPU with 2.8 GHz or more will be required.

An important factor to consider here is that the CS:GO server application is basically designed as a single-core application. Therefore, to ensure optimal performance, a host system with high single-core performance is recommended, as distribution across multiple cores is suboptimal and automatically reduces the performance potential.

Working memory (RAM)

When it comes to RAM, a CS:GO server doesn’t make great demands. For hosting the standard modes and maps, you can basically plan on a slim 100 MB per user. With a base value of 2 GB RAM, you can theoretically serve up to 20 players. In practice, however, you should naturally provide a certain buffer here. If you want to use mods and plug-ins on your CS:GO server, this will put extra demands on the RAM: In this case, further additional RAM performance is recommended.

Hard disk space

When you create a CS:GO server, you must of course also ensure that there is enough disk space for the individual game files. For the basic installation without additional mods, maps, plugins, etc., you should plan on around 15 to 20 GB. If you want to create regular backups, you should of course expect much more hard drive space (recommendation: 50 GB or more). Whether you decide on classic HDD data carriers or more powerful SSDs, by the way, only plays a subordinate role for a CS:GO server. However, due to the faster read and write speeds that SSDs offer, and the fact that their price has dropped considerably, there is a lot to be said for using the modern storage solution.

Operating system

In order to manage your server hardware, you will of course need an operating system. The CS:GO server software “SteamCMD”, which incidentally also enables the hosting of various other Steam games, is basically available for all three major systems – Windows, macOS and Linux. However, there are always problems with the installation under macOS, which is why we recommend using the classic server systems from Microsoft (Windows Server 2016 or 2019) and UNIX/Linux (Ubuntu, CentOS, Debian, openSUSE).

Keep in mind that you also need to plan hardware resources for the operating system.

For Windows Server 2016, for example, manufacturer Microsoft recommends at least:

  • a 1.4 GHz processor (64-bit)
  • 512 MB or 2 GB of RAM (without or with graphical user interface, respectively)
  • 32 GB hard disk space

For the installation of Ubuntu, which is popular among Linux advocates, developer Canonical recommends the following minimum values (version 20.04):

  • a 2 GHz processor (64-bit)
  • 4 GB of RAM
  • 25 GB hard disk space

Alternatively, the Ubuntu Server Edition, which does not have a graphical interface by default, is a much slimmer edition that is content with a 1 GHz processor (64-bit), 1 GB of RAM and 2.5 GB of hard drive space.

Broadband requirements

As a shooter, “Counter-Strike: Global Offensive” is one of the types of games where it is particularly important that players and servers have the lowest possible ping (also known as “latency”). In other words, the time it takes for data packets to travel from the players’ devices to the server, or vice versa, must be as short as possible. This requires that your CS:GO server has a good broadband connection. From the server’s point of view, the most important factor is the upload value (also called “uplink”), which determines how fast the server can send data to the players.

Valve specifies 53.4 Kbit/s per player as the upload value for Source games like CS:GO.

Renting a CS:GO server: Which model is best?

Renting hardware for a CS:GO server is much more convenient than assembling and purchasing it yourself. In addition, you are much more flexible with a rented solution for your CS:GO server, because in most cases you can increase or decrease the booked performance promptly or cancel it completely. With your own server at home you do not enjoy this advantage! In addition, you can now rent servers or server resources at very affordable prices.

However, the search for a suitable provider is not that easy – especially since you often have to choose the right server model from the offered range.

With a vServer, you also rent virtualized resources. However, this is basically a fixed setup for which you pay a fixed monthly amount – regardless of whether you use your CS:GO server or not. If you plan to make your server available throughout, however, this model is significantly more cost-effective than a cloud server.

The predestined option for creating a CS:GO server at IONOS, however, is a dedicated server: With this model, you get access to hardware that is specifically assigned to you and optimally suited for hosting individual applications. In particular, the strong single-core CPU power with up to 3.8 GHz is a strong argument for dedicated hosting of “Counter-Strike: Global Offensive”.

Create CS:GO Server: Step-by-step guide (Windows Server)

Once you have found the right hosting solution for your own CS:GO server, the only thing left to do is to install the desired operating system. The classic server operating systems such as Windows Server, Linux or Debian are recommended in any case – ideally, you will not run any other applications on the server apart from the system software and the SteamCMD.

In the following instructions, we will show you how to get a CS:GO server running on Windows Server 2016 as an IONOS customer (vServer, Cloud Server, Dedicated Server).

Step 1: Connect to the server

Before you can create your CS:GO server, you must first establish a remote connection to the server. If you haven’t set this up yet, you can easily do so via the IONOS Cloud Panel. For this purpose, log in on the login page with your data and go to the “Server & Cloud” section in the panel.

In the list, select the server on which you want to install and run “Counter-Strike: Global Offensive”. In the data and information about the server that is then presented, you will find the entry “Remote desktop connection” under “Access data”, including a download link, which you can click in the usual manner.

Keep the option “Open with” or save the file locally at the desired location to execute it afterwards by double-clicking. Then press “Connect” in the subsequent dialog.

In the next window, click on “More options” to select the “Use another account” item there. Enter the login information for your CS:GO server – if you have not yet assigned an individual password, you will find the “Initial password” in the access data in the Cloud Panel.

When connecting to the server for the first time, you will receive a security warning: The certificate is not yet classified as trustworthy. You can finally establish the remote connection via the “Yes” button.

Step 2: Install SteamCMD

To create a CS:GO server, you need the already mentioned server application SteamCMD, which you can download via the following download link (Windows).

After downloading, unzip the zipped file into a suitable folder on your server (e.g. under C:\SteamCMD) and then double-click on it to start the installation of SteamCMD. Windows will automatically open the command prompt for this process.

Step 3: Install CS:GO Dedicated Server

Now type the following command into the Steam input line “Steam>” to specify the installation directory (here in C:) for the CS:GO server:

force_install_dir C:\csgo-ds.

In the next step you login as an anonymous user on the public Steam server:

login anonymous

Finally, install the current dedicated server version of “Counter-Strike: Global Offensive” with the following input:

app_update 740 validate

Once the installation is complete, log out of the Steam server by typing “quit”.

Step 4: Generate Game Server Login Token (GSLT)

When you create a CS:GO server, you need to link it to an official Steam account using a Game Server Login Token (GSLT). Otherwise, you can only deploy your server on the local network.

To generate a token, go to the Steam game server account manager and log in with your Steam account or the Steam account you want to link the server to. After logging in, enter the app ID of the base game (not the server app ID!) – “730” for “Counter-Strike: Global Offensive” – as well as an optional description of the token and click “Create”:

Make a note of the generated token or save it in a separate document to have it handy when still connecting to the server. You can also find the code in the Steam game server account management at any time.

Step 5: Release port

Before you start your CS:GO server, you have to release the appropriate ports to make the server findable in the community server browser. Specifically, these are the TCP and UDP ports with the number 27015, which you must open so that your server can communicate with the individual clients via the Internet. With an IONOS server, you can do this conveniently via the Cloud Panel.

For this purpose, call up the “Cloud & Server” section as you did when setting up the remote connection. In the left side menu, first select “Network” and then “Firewall Policies”. Click on your CS:GO server and navigate down to the “Incoming” section. Finally, create a new rule with the following properties:

  • Allowed IP: all (just leave the field blank for this).
  • Protocol: TCP/IP
  • Port(s): 27015
  • Description: individual description of port sharing

Confirm the new rule by clicking the “Add rule” button and wait until the server reconfiguration is completed. In some cases it may be necessary to restart the server after port sharing.

Step 6: Start the CS:GO server

Now that all the important preparations are done, you can finally start your own public CS:GO server. The easiest way is via the command prompt: call the Windows command line and change to the CS:GO Dedicated Server directory. We have placed the server application under C:\csgo-ds, so the appropriate CMD command in our case looks like this:

cd C:\csgo-ds

With the appropriate CS:GO console parameters, you can now start the server in that directory. It is important to add the game server login token in addition to the game mode, map and so on. A possible start setup (Casual Game, Arms Race, Startmap: de_dust2) including the attached GSLT can be executed with the following command:

srcds -game csgo -console -usercon +game_type 0 +game_mode 0 +mapgroup mg_active +map de_dust2 +sv_setsteamaccount

After that your CS:GO server will start. You can observe the startup process and the running server process in a new window.

Step 7: Join the CS:GO server

You and any other players you want to share your newly set up CS:GO server with can now join the initiated game at any time as long as you keep the server application running. To do this, you need to complete the following steps:

  • Launch “Counter-Strike: Global Offensive.”
  • Click on “Play CS:GO.”
  • In the game menu, select the “Community Server Browser” option.
  • Switch to the “Favorites” tab and click “Add Server”.
  • Type in the IP address of your CS:GO server (found in the IONOS Cloud Panel, among others) and press “Add this address to favorites”.
  • In the server browser you should now be presented with your server to choose from – it may be necessary to press “Refresh” first.
  • Click on “Connect” or double-click on the server entry to establish the connection.

If the login works as planned, you will immediately find yourself in the mode defined by the command and on the desired map.