Garry's Mod Server Hosting: Complete 2026 Guide

Garry's Mod remains one of the most versatile multiplayer sandbox games ever made. Built on Valve's Source engine, it gives players the tools to build contraptions, act out roleplay scenarios, play custom game modes, and create entirely new experiences through Lua scripting and Steam Workshop addons. In 2026, the game still maintains a thriving community with tens of thousands of concurrent players, driven by game modes like DarkRP, Trouble in Terrorist Town (TTT), PropHunt, and Sandbox.

Running your own Garry's Mod dedicated server lets you control every aspect of the experience: which game mode runs, which addons are loaded, who can join, and how the server performs. This guide walks you through the complete setup process, from installing the server with SteamCMD to configuring game modes, Workshop collections, admin tools, content delivery, and performance optimization.

Why host a dedicated Garry's Mod server

The peer-to-peer hosting built into Garry's Mod works for small private sessions, but it ties the server to one player's game client and internet connection. When that player leaves, the server goes down. A dedicated server runs independently, stays online around the clock, and handles more players with better stability.

Beyond uptime, a dedicated server gives you full control over the Lua environment. You can install custom game modes, modify existing ones, add Workshop addons without waiting for a host player to subscribe to them, and configure everything through server-side files. For any community that takes its Garry's Mod server seriously, dedicated hosting is the foundation.

Hardware requirements

Garry's Mod runs on the Source engine, which is old but still demands decent hardware when addons and players scale up. The server is largely single-threaded for its game loop, so CPU clock speed matters more than core count. Memory depends heavily on which addons you run and how many custom models they load.

Hardware guidance based on game mode and player count.
ScenarioPlayersRAMCPU
Sandbox, minimal addons4 to 102 GB1 core, 3.5 GHz+
TTT or PropHunt16 to 242 to 4 GB2 cores, 4 GHz+
DarkRP, moderate addons24 to 484 to 6 GB2 cores, 4 GHz+
DarkRP, heavy addons + custom content48 to 806 to 10 GB2 cores, 4.5 GHz+
Large community, 80+ slots80 to 12810 to 16 GB4 cores, 4.5 GHz+

DarkRP is the most resource-intensive common game mode because of the sheer volume of addons most DarkRP servers run. A typical DarkRP server loads custom jobs, weapons, vehicles, HUD elements, and entity systems that all consume memory and CPU cycles. TTT and PropHunt are lighter because they rely on fewer custom entities.

Installing with SteamCMD

SteamCMD is the standard tool for installing and updating game servers on Linux and Windows. Here is how to set up a Garry's Mod server on a Linux VPS:

  1. Install SteamCMD. On Debian or Ubuntu: sudo apt install steamcmd.
  2. Create a directory for the server files: mkdir -p /home/gmod/server.
  3. Download the Garry's Mod dedicated server (app ID 4020):
    steamcmd +force_install_dir /home/gmod/server +login anonymous +app_update 4020 validate +quit
  4. The server files appear in /home/gmod/server. The main startup script is srcds_run.
  5. You also need Counter-Strike: Source content (app ID 232330) for most game modes. Without it, players see missing textures (the pink and black checkerboard). Install it into a separate directory and mount it in the server's mount.cfg.

Start the server with:

./srcds_run -game garrysmod +maxplayers 32 +map gm_flatgrass +gamemode sandbox

Replace the game mode and map with whatever you plan to run. Use screen or tmux to keep the server running in the background, or create a systemd service for automatic startup and restarts.

Choosing and configuring a game mode

The game mode defines the entire player experience. Here are the most popular choices in 2026.

DarkRP is the most played Garry's Mod game mode by a wide margin. Players pick jobs (police, criminals, gun dealers, mayors), earn money, build bases, raid each other, and interact through a simulated city economy. Setting up DarkRP requires downloading the DarkRP gamemode and DarkRP Modification addon, then editing the Lua configuration files to define jobs, shipments, entities, and rules. The customization depth is enormous: every DarkRP server has a unique feel depending on how the owner configures it.

Trouble in Terrorist Town (TTT) is a social deduction game where a few traitors try to eliminate innocent players without being discovered. It runs well on lighter hardware and needs fewer addons than DarkRP. Popular TTT addons include custom roles (jester, glitch, phantom), pointshop cosmetics, and special traitor weapons.

PropHunt pits two teams against each other: props hide by disguising themselves as objects on the map, and hunters try to find and destroy them. PropHunt is lightweight and very popular for casual servers.

Sandbox is the original Garry's Mod experience. Players build contraptions, experiment with physics, and create whatever they can imagine. Sandbox servers tend to have smaller player counts but heavier per-player resource use because of complex builds.

Workshop collections and content delivery

Steam Workshop is the primary way to distribute addons to players. Instead of making each player manually subscribe to dozens of addons, you create a Workshop collection that contains everything your server needs. Players automatically download the collection content when they connect.

To set up a Workshop collection:

  1. Go to the Steam Workshop for Garry's Mod and create a new collection.
  2. Add all the addons your server uses to the collection.
  3. Note the collection ID from the URL (the number after ?id=).
  4. Add the collection to your server startup command: +host_workshop_collection YOUR_COLLECTION_ID.
  5. You also need a Steam Web API key. Generate one at steamcommunity.com/dev/apikey and add it to the startup: -authkey YOUR_API_KEY.

When a player joins, the server tells their client which Workshop items to download. Large collections with many custom models and maps can mean a lengthy download for first-time joiners. This is where FastDL helps.

FastDL: speeding up content downloads

By default, players download custom content directly from the game server, which is slow and puts load on the server itself. FastDL offloads this to a separate web server (or CDN) that serves the files over HTTP, which is significantly faster.

To set up FastDL:

  1. Compress your custom content files (models, materials, sounds, maps) into .bz2 archives. The bzip2 command handles this.
  2. Upload the compressed files to a web server, maintaining the same directory structure as the game server.
  3. Add the FastDL URL to your server.cfg: sv_downloadurl "https://your-fastdl-url.com/gmod/".
  4. Enable downloads: sv_allowdownload 1 and sv_allowupload 0.

For servers with many custom models and textures, FastDL can reduce join times from several minutes to under a minute. Some hosting providers offer a built-in FastDL endpoint, which saves you from managing a separate web server.

Server configuration

The main configuration file is server.cfg in the garrysmod/cfg/ directory. Important settings include:

  • hostname: the server name shown in the server browser. Make it descriptive so players know what to expect.
  • sv_password: set a password for private servers. Leave empty for public access.
  • maxplayers: the slot limit. Source engine supports up to 128, but practical limits depend on your game mode and hardware.
  • tickrate: defaults to 33 for Garry's Mod (about 30 ms per tick). Some competitive servers run at 66 tick, which doubles the simulation rate but also doubles the CPU and bandwidth requirements. Only increase this if your hardware and game mode justify it.
  • sv_minrate / sv_maxrate: control bandwidth per player. Set sv_maxrate 0 to remove the cap and let the server use as much bandwidth as needed for smooth gameplay.
  • sv_timeout: how long the server waits before disconnecting an unresponsive client. The default of 65 seconds is fine for most situations.

For DarkRP servers, most configuration happens in Lua files rather than server.cfg. The DarkRP Modification addon is where you define jobs, shipments, entities, and other game-specific settings.

Admin tools: ULX and SAM

A public Garry's Mod server without admin tools is chaos. ULX (with its companion ULib) and SAM (Simple Admin Mod) are the two most popular admin frameworks.

ULX has been the standard for years. It provides a comprehensive set of commands (kick, ban, slay, teleport, noclip, jail) accessible through chat commands, a graphical menu (XGUI), or the console. ULX supports user groups with granular permissions, so you can give moderators access to kick and mute without giving them the ability to change server settings.

SAM is a newer alternative that offers a cleaner interface and some quality-of-life improvements. It includes a ban system, rank management, and common admin commands. SAM works well alongside DarkRP and integrates smoothly with most addon ecosystems.

Whichever you choose, install it from the Workshop or place it in the server's addons folder. Configure admin ranks through the in-game menu or through Lua configuration files. Grant yourself superadmin by adding your Steam ID to the users.txt file or using the server console.

Performance optimization

Garry's Mod server performance depends on three main factors: addon count, entity count, and player count. Here is how to keep things smooth.

  • Audit your addons regularly. Every addon loaded consumes memory and potentially CPU time. Remove addons that are unused, broken, or redundant. Two different weapon packs that do the same thing double the memory cost for no benefit.
  • Limit prop and entity counts. Use sbox_maxprops, sbox_maxeffects, and similar convars to restrict how many objects each player can spawn. On DarkRP, also limit the number of entities per job to prevent money printers and other custom entities from overwhelming the server.
  • Optimize Lua code. Custom scripts and addons with poorly written Lua cause server lag. If you notice lag spikes, use profiling tools to identify which addon is consuming the most CPU time. The lua_run console command and server-side profilers help isolate problems.
  • Set a reasonable tickrate. Running at 66 tick when your server cannot sustain it is worse than running at 33 tick smoothly. Test under realistic player load before committing to a higher tickrate.
  • Restart on a schedule. Source engine servers benefit from periodic restarts. Once every 12 to 24 hours clears accumulated state. Many admin mods include scheduled restart functionality with player warnings.
  • Use a fast CPU. The Source engine's game loop is single-threaded. Higher clock speeds translate directly to better performance under load. The AMD Ryzen 9 7950X, with its boost clocks well above 5 GHz, handles even the busiest DarkRP servers without dropping ticks.

Security and DDoS protection

Public Garry's Mod servers are frequent targets for DDoS attacks and exploits. Protect your server with these measures:

  • Keep the server updated. Run steamcmd +app_update 4020 regularly to pick up security patches.
  • Use a hosting provider with DDoS protection. Volumetric attacks are common in the GMod community. Without network-level protection, a single attacker can take your server offline.
  • Restrict RCON access. Set a strong rcon_password and limit RCON to trusted IP addresses. Better yet, use admin tools instead of RCON for day-to-day management.
  • Install an anti-exploit addon. Addons that detect and block common Garry's Mod exploits add an extra layer of protection against malicious clients.
  • Disable unused features. If your game mode does not use voice chat, disable it to reduce bandwidth and prevent voice spam.

Hosting at HostValues

HostValues game server plans and VPS plans are built for demanding game servers like Garry's Mod. Every plan includes AMD Ryzen 9 7950X processors (the single-thread performance Source engine needs), NVMe storage for fast map loads and addon I/O, and DDoS protection included at no extra cost, which is essential for any public GMod server.

For a TTT or PropHunt server with 24 players, a 3 to 4 GB plan is a solid starting point. For a DarkRP server with 48 to 64 slots and a moderate addon collection, start at 6 GB. For a large community server pushing 80 or more slots with heavy custom content, 10 GB and above gives you the headroom you need. Memory upgrades apply without losing your server configuration or data.

Need full control over the operating system and the ability to run multiple game servers? A HostValues VPS gives you root access, your own IP address, and the flexibility to install anything you need.

Frequently asked questions

Why do players see pink and black checkerboard textures?

This happens when Counter-Strike: Source (CSS) content is not mounted on the server or not installed on the client. Most GMod maps and addons use CSS textures. On the server side, install CSS content via SteamCMD and mount it in mount.cfg. On the client side, players need to own and have CSS installed, or you can provide the textures through your Workshop collection or FastDL.

How do I update my server without losing configuration?

Running steamcmd +app_update 4020 updates only the base game files. Your server.cfg, game mode configurations, and addon settings are stored in separate directories that the update does not overwrite. Back up your garrysmod/cfg/, garrysmod/data/, and custom addon folders before updating as a precaution, but in practice updates are safe.

Can I run multiple game modes on one server?

A Garry's Mod server runs one game mode at a time, set by the +gamemode startup parameter. To offer multiple game modes, run separate server instances, each with its own port, configuration, and game mode. On a VPS with enough resources, you can run several lightweight instances (TTT, PropHunt, Sandbox) alongside a heavier DarkRP instance, each on a different port.

Browse all available plans on HostValues game servers. For full root access and custom setups, see HostValues VPS hosting. Questions about your specific setup? Reach out through the support page.


Still stuck? Open a support ticket and our team will help you out.

Back to the blog