You load a CS2 Workshop map through the server console with host_workshop_map <workshop_id>. First check whether a normal client can download and join the map. For a permanent rotation, you then need the actual map name and a suitable map group; the Workshop ID alone does not replace this configuration.

Requirements

You need access to the server console or RCON, the Workshop ID of the desired CS2 map and write access to the configuration. Back up the existing gamemodes_server.txt before you add a rotation. Test a map on its own first so that download errors and rotation errors remain distinguishable.

The official basis for Workshop content is Valve's Steam Workshop. Valve describes the Workshop as a platform where community content can be published and subscribed to: Documentation at steamcommunity.com. For CS2 servers, this practically means: you reference Workshop content by its numeric ID and load it server-side using the appropriate console commands.

If you first want to review the general server setup, the internal guide Rent a CS2 Server: Settings, Plugins & Workshop Maps 2025 will help. For related Source server structures, the guide Configuring a Team Fortress 2 Server: Maps, Mods and Settings is also useful, even though commands and file paths are not identical one to one.

Finding the Workshop ID

Open the desired map in the Steam Workshop. The URL normally contains a numeric ID, for example after ?id=. This number is the Workshop ID you need for host_workshop_map or for a Workshop collection. Copy only the number, without any additional URL parameters.

Also check that the map is intended for Counter-Strike 2. Older Counter-Strike Workshop content or maps for other games may be unusable on a CS2 server. If a map does not load, a wrong or incompatible Workshop ID is one of the most common causes.

Starting a Workshop Map

Via RCON or console:

host_workshop_map <workshop_id>

Example for a popular aim map:

host_workshop_map 3070194623

The command loads the specified Workshop map and sets it as the active map. If you run the command via RCON, the server log or console should show whether the Workshop content was found and loaded. Wait a moment after the command before you do the join test, because the server and clients first need to process the map.

Map field of a CS2 server in the game-serverhosting panel: this is where the start map is set — including Workshop maps via workshop/<id>/<name>
Map field of a CS2 server in the game-serverhosting panel: this is where the start map is set — including Workshop maps via workshop/<id>/<name>

Loading a Workshop Collection

For a collection of maps:

host_workshop_collection <collection_id>

A collection makes sense if you want to manage several training or fun maps. Instead of starting each map individually, you reference the collection. Make sure the collection only contains maps you really want to use on the server. Unclear or mixed collections make troubleshooting harder later, because you cannot immediately see which individual map is blocking the change or download.

Map Rotation with Workshop Maps

For a fixed rotation, you add the Workshop map to gamemodes_server.txt. You can keep the existing default maps and simply add Workshop maps.

gamemodes_server.txt uses Valve KeyValues, not JSON. Extend the existing mapgroups structure of your installation; do not replace the entire file with an isolated map list. A map entry consists of a name and an empty value, such as "de_dust2" "". For Workshop content, use the path confirmed in the server log and select the matching map group at startup. The Valve documentation on game modes and map groups explains the structure; check the CS2-specific details for your server version.

The format workshop/<workshop_id>/<mapname> is important. The Workshop ID must match the map, and the map name must match the actual map name. If you are unsure, first load the map via host_workshop_map, check the map name that is output, and then copy it into the rotation.

After changing gamemodes_server.txt, you should restart the server or at least reload the configuration, depending on how your setup is operated. On community servers in active use, a short maintenance notice is a good idea so that active players are not unexpectedly dropped from a round.

Popular Workshop Maps

Map Type Description
Aim Botz Training Aim practice with bots
Recoil Master Training Practice spray patterns
Prefire Maps Training Practice prefire spots
Surf Maps Fun Surf gameplay
KZ Maps Fun Climbing/movement
Retake Competitive Retake scenarios

These examples are typical categories for CS2 community servers. Before using one, always check the specific Workshop page, how up to date the map is and its compatibility with your desired game mode. For training servers, a few clearly named maps are often enough. For public fun servers, a short rotation is better than a long list that players do not recognize.

Creating Your Own Maps

If you want to use your own content, the general procedure is as follows:

  1. Open the Hammer 2 Editor (included in the CS2 SDK)
  2. Create and compile the map
  3. Publish it to the Workshop
  4. Load it on the server

Only use your own maps in live server operation once spawn points, collision surfaces, buy zones and team logic have been checked. A local test saves support effort later, because many map problems are not caused by hosting but by incomplete map settings.

Verifying the Result

Start the server with the desired map or switch to it via command. Then connect as a normal client, not just through the server console. Check three points: Is the map loaded, does the download start on the client, and can several players join? After that, you should test a map change so that the rotation does not only work on the first map.

For a manual change, you can use these commands depending on the situation:

changelevel <mapname>

or:

map <mapname>

If you use Workshop paths in the rotation, test exactly the name entered there. Small deviations are enough to make the change fail.

Troubleshooting

  • Map does not load: Check the Workshop ID. Open the Workshop page again and copy the numeric ID directly from the URL.
  • Players cannot join: The map has to be downloaded via the Workshop. Test with a client that does not have the map locally yet.
  • Map change fails: Use changelevel <mapname> or map <mapname> and check the exact map name.
  • Rotation skips a map: Check the active map group, the exact map name and the KeyValues structure of gamemodes_server.txt: no JSON commas and no JSON objects.
  • Collection is confusing: Test individual maps with host_workshop_map before using the entire collection in production.

FAQ

Can I load any Steam Workshop map on a CS2 server?

No. The map must be suitable for CS2 and correctly published in the Workshop. Maps for other games or older, incompatible content may fail.

What is the difference between host_workshop_map and host_workshop_collection?

host_workshop_map loads a single Workshop map via its ID. host_workshop_collection loads a collection that can contain several pieces of Workshop content.

Do I also have to upload Workshop maps to the server?

In this workflow, you reference the map via the Steam Workshop. What matters is that the Workshop ID is correct and clients can obtain the map when joining.

Why does the map work in the console but not in the rotation?

Then the rotation entry is usually wrong. Check the path workshop/<workshop_id>/<mapname>, the exact map name, the KeyValues structure and the map group actually selected at startup in gamemodes_server.txt.

Should I test Workshop maps before using them publicly?

Yes. At a minimum, test startup, client download, joining and map change. This way you can tell early whether the ID, map name, game mode and rotation fit together.