How to Add a Custom Map to a Garry's Mod Server
Add a Workshop or custom map to a Garry's Mod server: put it in your collection, start it by its .bsp name with +map, and make sure players download it.
Updated Oct 3, 2026 · 6 min read
On this page
To add a custom map to a Garry's Mod server, put the map's Workshop addon in the public or unlisted collection the server loads with +host_workshop_collection <collection ID>, then start the server with +map <bsp name>, for example +map gm_bigcity. The map setting takes the map's .bsp file name, never its Workshop ID. If the map is in the server's collection, players download it automatically when they join. A map that is not on the Workshop goes into garrysmod/maps/ as a .bsp instead.
What you are working with
| Thing | What it is | Where it goes |
|---|---|---|
| Workshop map addon | A map published on the Steam Workshop, with a numeric ID in its URL | In the server's Workshop collection |
| Collection ID | The number after ?id= in the collection's URL |
+host_workshop_collection (on GamezServers, the Workshop ID setting) |
.bsp file name |
The map's real name, like gm_construct or ttt_minecraft_b5 |
+map (on GamezServers, the Map setting) |
Loose .bsp file |
A map downloaded outside the Workshop | garrysmod/maps/ |
.bsp.bz2 file |
A compressed copy for fast downloads | Your FastDL web host, under maps/ |
The one thing most people get wrong
The Workshop ID and the map name are two different things. Facepunch's Workshop for Dedicated Servers page is explicit: you start a Workshop map with the normal map command and its .bsp name, like +map zs_cleanoffice_v2. Putting the Workshop ID in the map setting gives you a map load failure in the console.
To find the .bsp name:
- Look on the map's Workshop page. Most authors list it in the description, because everyone asks.
- Subscribe to the map, start Garry's Mod, and open Start New Game. The name under the map's thumbnail is the
.bspname. - Ask the map author in the Workshop comments if neither shows it.
The second trap: the map must suit the gamemode. A ttt_ map needs Trouble in Terrorist Town (terrortown), a rp_ map needs your roleplay gamemode, and a ph_ map needs Prop Hunt. Change the gamemode and the map together.

Method 1: Add a Workshop map (easiest)
Step 1: Add the map to your collection
Open the map's Workshop page in Steam and choose Add to Collection, then pick the collection your server uses. If you do not have one yet, create it under Collections in the Garry's Mod Workshop and set it to Public or Unlisted. A private collection cannot be read by the server. Our guide on adding Workshop addons to a Garry's Mod server covers collections in full.
Step 2: Point the server at the collection
The server reads the collection on every start:
+host_workshop_collection 123456789
On GamezServers, paste the collection number into the Workshop ID setting in the panel.
Step 3: Set the map by its .bsp name
+map gm_bigcity +gamemode sandbox
On GamezServers, type the .bsp name (no .bsp extension) into the Map setting and set Gamemode to match.
Step 4: Restart and watch the console
On start, the console shows the collection downloading and then the map loading. When the current map comes from the server's collection, Gmod marks it for client download by itself. The resource.AddWorkshop page confirms the current map and a Workshop gamemode are added automatically if they come from the server's collection.
Step 5: Add more maps for map votes
Every map in the collection is installed on the server, so map vote addons and changelevel <bsp name> from the console can switch to any of them. Only the current map is sent to players automatically. If your map vote can pick other maps, players download each map when it loads.
Method 2: Add a map that is not on the Workshop
Step 1: Upload the .bsp
Upload the map file to garrysmod/maps/ with SFTP or the file manager. If it came with extra folders such as materials, models or sound, keep that layout and put the whole thing in garrysmod/addons/<mapname>/ instead, so the paths stay intact.
Step 2: Change to it
Set the Map setting to the file name, or run changelevel mymap in the console.
Step 3: Get the map to players
Loose maps are not on the Workshop, so players need another way to get them:
- Direct download from the server:
sv_allowdownload 1lets players pull the file when they join. It is slow, and Source limits the size withnet_maxfilesize(default 16 MB, maximum 64 MB). - FastDL: compress the map to
mymap.bsp.bz2, upload it to a web host undermaps/, and setsv_downloadurl "https://your-host/"inserver.cfg. Players download from the web host at full speed. The server still needs the uncompressed.bsp. - Publish it: if you made the map, uploading it to the Workshop and using Method 1 is the least work for everyone.
Common problems
- Console says the map failed to load or was not found: the map setting holds the Workshop ID, a typo, or the
.bspextension. Use the exact file name. - Players see purple checkers and ERROR models on the map: the map uses Counter-Strike: Source textures or content from another addon. Add that content to the collection and mark it for download with
resource.AddWorkshoplines, and tell players to install CS:S content if the map needs it. - "Map missing" when the server boots: the collection is private, or the map addon was removed from the Workshop. Check the collection's visibility and the console download lines.
- Map loads but the gamemode is broken: the gamemode does not match the map's prefix. Set the right gamemode and restart.
- Players time out downloading a big map: use FastDL, or ask players to subscribe to the collection before joining so the map is already on their PC.
Custom maps on GamezServers
On a Garry's Mod server from GamezServers, the collection and map are two fields in the panel: Workshop ID and Map. Loose maps go up over the SFTP login in Settings or through the file manager, which also unpacks zips and can download a file from a link straight to the server. Click Backup before swapping maps or addon packs, and the server keeps running without anyone's PC. New to Gmod hosting? Start with how to host a Garry's Mod server.
FAQ
Do I use the Workshop ID or the map name in +map?
The map name. +map takes the .bsp file name, like gm_bigcity, and the Workshop ID goes in the collection instead.
Will players download the map automatically?
Yes, if the map is in the server's Workshop collection and is the current map. Loose maps need sv_allowdownload or a FastDL host.
Where do custom maps go on a Garry's Mod server?
Workshop maps download into the server's cache from the collection. Loose .bsp files go in garrysmod/maps/.
Can I add a map without restarting the server?
A loose .bsp in garrysmod/maps/ can be loaded with changelevel. New Workshop maps need a restart so the server downloads the updated collection.
Skip the setup. Your own Garry's Mod server.
Then $9.99/mo. Just trying it? $2.50 for 3 days