VGKAMI
Advertise Get listed

Game Guides

How to Install Mods on a Squad Server

October 26, 2026 13 min read

Install Squad server mods with SteamCMD, then place each downloaded Workshop folder in SquadGame/Plugins/Mods/ and restart the server. The dedicated server uses Steam app ID 403240; Squad’s Workshop uses app ID 393380. You can manage the files manually, declare Workshop IDs in Server.cfg, or automate downloads in a Docker deployment. Whichever method you choose, stop the server before downloading or replacing files, and check the startup log after every change.

This guide covers Windows and Linux servers, Docker persistence, Workshop-ID handling, update routines, configuration, networking checks, and the failure symptoms most often caused by stale files or a Squad version mismatch.

What do I need before installing Squad mods?

You need a working Squad dedicated server, SteamCMD, access to the server filesystem, and the numeric Workshop ID for every mod you plan to run. Windows and Linux are documented deployment targets; Docker is a separate deployment pattern that needs persistent storage for the server directory.

  • Dedicated-server package: install or update the normal Squad server with SteamCMD app ID 403240. The Public Testing app uses 774961, so do not substitute it for a production server unless you intentionally run the test branch.
  • SteamCMD access: you will use it both for the server package and for Workshop downloads.
  • Filesystem access: you must be able to copy files into the server root, specifically the SquadGame/Plugins/Mods/ directory.
  • Workshop IDs: record the numeric ID shown in each Squad Workshop URL. IDs are also visible as numeric folder names after a download.
  • A maintenance window: the server must be stopped while an update script downloads content or replaces a mod directory.

Workshop items can contain maps, factions, game modes, weapons, and other content types. A subscription makes an item available to the game, but a dedicated server still needs the files downloaded into its own server installation.

How do I install or update the Squad dedicated server with SteamCMD?

Use SteamCMD to install the server package before adding mods. SteamCMD is the distribution method for Steam game servers, and the Squad server package is identified by app ID 403240.

  1. Install SteamCMD on the Windows or Linux machine that will host Squad.
  2. Open a SteamCMD session or a script that invokes it.
  3. Log in with the account method supported by your deployment, then run an app update for 403240 into your chosen server directory. A typical SteamCMD sequence is +login anonymous +force_install_dir "C:serverssquad_server" +app_update 403240 validate +quit; adjust the directory to your installation.
  4. Wait for SteamCMD to finish. Do not start Squad while the package is being replaced.
  5. Locate the server configuration directory under SquadGame/ServerConfig/. Keep this directory backed up before changing configuration or replacing a container.

If you deliberately run the Public Testing branch, use its documented app ID 774961 instead of 403240. A mod built for one branch may not work on the other, so keep the server branch and the mod’s compatibility in mind when diagnosing load failures.

Where do I find a Squad mod’s Workshop ID?

Open the mod’s page in the Squad Steam Workshop and record the numeric ID in its URL. Squad Workshop content is associated with app ID 393380, which is different from the dedicated-server app ID.

  1. Search the Workshop for the map, faction, game mode, weapon pack, or other item you want.
  2. Open the item page and copy its numeric Workshop ID exactly. Do not copy the name, collection ID, or the Squad app ID.
  3. Check the item description for a stated Squad version requirement or a warning that it is no longer maintained.
  4. Keep a simple list of IDs and mod names in your server’s deployment notes. This makes scripted updates and rollback decisions easier.

The same number should appear as the folder name after SteamCMD downloads the item. That gives you a second way to confirm that you copied the intended content.

How do I download a Workshop mod with SteamCMD?

Stop the running server first, then ask SteamCMD to download the Workshop item for app 393380. The download initially lands below steamapps/workshop/content/393380.

  1. Stop the Squad service, scheduled task, or container that owns the server process. Confirm that no Squad server process remains.
  2. Run a SteamCMD command equivalent to %STEAMCMD% +login anonymous +force_install_dir "C:serverssquad_server" +workshop_download_item 393380 <mod ID> +quit. Replace <mod ID> with the numeric Workshop ID; keep the angle-bracket form only as a placeholder inside your script.
  3. Wait for SteamCMD to report completion and inspect steamapps/workshop/content/393380.
  4. Open the numeric folder matching the ID you requested. If the folder is absent, review the SteamCMD output for authentication, path, or download errors before touching the server files.
  5. Download each required mod separately or add the commands to an update script. Keep the server stopped until all replacements are complete.

SteamCMD’s Workshop command is for Workshop-published mods. It does not turn an arbitrary archive or a client-only modification into a server plugin.

Where do I put Squad Workshop mods on a dedicated server?

Copy the numeric Workshop folder into <server root>/SquadGame/Plugins/Mods/. This destination, not the temporary Workshop cache, is the directory the dedicated server reads when it starts.

  1. Open steamapps/workshop/content/393380/<mod ID> in the server installation.
  2. Open the destination <server root>/SquadGame/Plugins/Mods/. Create the destination only if your server package does not already contain it.
  3. Remove the existing destination folder for that same numeric ID. The documented Windows update pattern deletes the old ID directory before copying the refreshed content, preventing stale files from surviving an update.
  4. Copy the newly downloaded numeric folder into Plugins/Mods. Preserve the folder name and the internal directory structure; do not rename it to the mod’s display name.
  5. Repeat the delete-and-copy sequence for every mod you updated.

On Windows you can perform the operation in File Explorer or in a script. On Linux, use the equivalent filesystem copy tools, but retain the same source and destination structure. Do not copy only selected map files unless the mod documentation explicitly says that is supported; partial copies make later troubleshooting harder.

How do I start the server and confirm that a mod loaded?

Start the server only after the copy is complete, then inspect the boot log rather than relying on the process staying open. The Squad guide says the startup output lists the standard maps first and then added modded maps, giving you a practical installation check.

  1. Start the server using the same service, script, or container command you normally use.
  2. Open the live console or the saved startup log.
  3. Wait until the server has finished reading its map and plugin data.
  4. Look for the normal map list followed by the modded maps or other content supplied by your installation.
  5. If the modded content is absent, stop the server and verify the numeric folder path, folder name, and copy operation before trying another restart.

A clean process start is not proof that a mod loaded. The log is the more useful check because it shows whether the server discovered the added content during boot.

Can I load mods by adding Workshop IDs to Server.cfg?

Some hosting documentation supports declaring Workshop IDs in SquadGame/ServerConfig/Server.cfg with Mods= entries. Treat this as a configuration alternative, not a replacement for understanding where the files are stored, and confirm the exact syntax against the server build you are running before deploying several IDs.

Use one entry per documented ID

Open the server configuration file under SquadGame/ServerConfig/ and add the mod IDs in the format accepted by your current build, for example Mods=<mod ID>. The variable is shown inside code because it must be replaced by a real numeric ID. If your host’s guide specifies a delimiter or a multi-ID format, follow that guide rather than assuming commas, spaces, or repeated keys are interchangeable.

Keep configuration and files in agreement

An ID in Server.cfg does not make a missing or stale folder usable. Download the Workshop content, copy it into SquadGame/Plugins/Mods/, and then restart so the configuration and filesystem contain the same set of mods.

Validate after a server update

Configuration syntax and mod compatibility can change with a Squad server update. If a previously working declaration stops loading, compare the current build’s documentation, remove stale files, and test one mod at a time rather than adding several new IDs at once.

How do I install Squad mods in Docker?

Docker adds one requirement: persist the server directory outside the container. The Squad installation guidance uses /home/steam/squad-dedicated/ as the container path and recommends a host bind mount so replacing a container does not erase your refined configuration.

  1. Create a host directory for the persistent Squad server data.
  2. Bind-mount that host directory to /home/steam/squad-dedicated/ inside the container.
  3. Run the container’s documented update process while the Squad server process is stopped.
  4. Verify that downloaded Workshop content reaches steamapps/workshop/content/393380 on the persistent volume.
  5. Verify that the final copies exist below SquadGame/Plugins/Mods/ on the same volume.
  6. Only then recreate or restart the container.

The CM2Walki container README describes a MODS Bash array. Its IDs can be taken from Workshop URLs or from numeric folders under steamapps/workshop/content/393380. Use the array format documented by the image you selected; do not assume that a variable from one image is recognized by another.

Why the bind mount matters

Container replacement is normal during image updates. Without a bind mount, a new container can start with an empty or default configuration, making it appear that your mods and server settings vanished. With persistent storage, the configuration, downloaded files, and copied plugin folders survive the container lifecycle.

Which Squad mod installation method should I use?

The right method depends on how much control and automation you need. Manual SteamCMD copying is transparent, configuration-driven loading is repeatable once verified, and Docker adds portability only when its data is persisted correctly.

Method Control Repeatability Persistence Main maintenance work Failure visibility
Manual SteamCMD download and file copy Direct control of every download and folder One-off copies unless you write an update script Native Windows or Linux filesystem Patch the server, delete stale folders, copy refreshed content, and check ports Direct filesystem inspection and startup logs
Server.cfg Workshop-ID entries IDs are declared in server configuration Repeatable after the current syntax is confirmed Configuration file and plugin folders must both be retained Recheck syntax and compatibility after Squad updates Configuration plus startup logs
Docker with a documented MODS setting Image-defined automation around SteamCMD High when the image’s update routine is stable Host bind mount to /home/steam/squad-dedicated/ Maintain the image, persistent mount, IDs, and compatibility checks Container output, filesystem inspection, and startup logs
Managed game-server hosting Provider tooling controls much of the deployment Often automated by the provider’s panel or scripts Provider-managed server storage Confirm mod support, update behavior, ports, and version handling with the provider Provider panel and server logs

Choose manual installation when you need to see and control every file. Choose a configuration or container workflow when the same server is rebuilt or updated regularly, but keep a copy of your IDs and configuration outside the running process.

Why is my Squad mod not loading?

Most failures in this workflow come from a wrong ID, a misplaced folder, stale content, an incompatible version, or a server that was still running during replacement. Diagnose those causes in that order so you do not change several variables at once.

The Workshop folder is missing

Check the SteamCMD output and the path steamapps/workshop/content/393380. Confirm that you used the Squad Workshop app ID 393380 and the item’s numeric ID, then rerun the download with the server stopped.

The folder exists, but the server log shows no modded maps

Compare the source folder with <server root>/SquadGame/Plugins/Mods/. The numeric ID should be the directory name at the destination, not an extra nested level such as Plugins/Mods/<mod ID>/<mod ID>. If an old copy exists, stop the server, remove that ID directory, copy the refreshed folder again, and restart.

The server starts, then a mod disappears after an update

Squad updates can make a mod incompatible with the current server version. Check the mod’s current compatibility notes, remove stale copies, and test the installation on the updated server before adding other mods.

Only some content appears

Recheck every ID and ensure each required folder was copied completely. A mod that contains several maps or assets may appear partially functional when only part of its directory was transferred.

The process is running but players cannot connect

For an internet-hosted server, verify port forwarding and firewall access. When the server and game client are on the same network, the installation guidance notes that NAT loopback may be required; without it, local clients can fail to reach the public address even though remote access works.

The container restarted with default settings

Inspect the bind mount and confirm that the host directory is mounted at /home/steam/squad-dedicated/. If the mount points to an empty host path, the replacement container will not see the previous configuration or mod folders.

How should I update mods after a Squad patch?

Assume that a Squad server update may require a mod refresh. Use a repeatable stop, download, replace, and verify cycle rather than copying new files over a live installation.

  1. Announce a maintenance window and stop the server.
  2. Update the dedicated server package with SteamCMD app ID 403240.
  3. Review the compatibility notes for every installed mod.
  4. Download each current Workshop item with workshop_download_item 393380 <mod ID>.
  5. Delete the old destination directory for each ID under SquadGame/Plugins/Mods/.
  6. Copy the refreshed numeric folders from steamapps/workshop/content/393380.
  7. Recheck Server.cfg entries or the Docker MODS setting if you use them.
  8. Start the server and confirm that modded maps or other added content appear in the startup log.
  9. If a mod fails, remove that mod from the test boot, record the exact error, and validate the remaining installation before proceeding.

Deleting the old folder is important because an update can remove or rename files. Leaving obsolete files beside new files can produce behavior that a clean copy would not.

What networking settings affect a modded Squad server?

Mods do not remove the normal server networking requirements. A server that loads its content correctly can still be unreachable because of NAT, firewall, or forwarding rules.

  • Internet-hosted server: configure the required port forwarding on the router and allow the server through the host firewall.
  • Server and client on one network: test whether the router supports NAT loopback. If it does not, local players may need to connect through an address that works inside the LAN.
  • After changing containers or hosts: verify that the forwarded destination still points to the current machine and that the persistent server directory is mounted where the process expects it.

Perform the network check after the startup log confirms the mod loaded. That separates a content-installation problem from a connectivity problem.

What should I back up before changing mods?

Keep the server configuration and the mod inventory together. A small backup prevents a rebuild from turning into a search for IDs and settings.

  • The complete SquadGame/ServerConfig/ directory, including Server.cfg when used.
  • A text list mapping each mod name to its numeric Workshop ID.
  • The Docker bind-mount definition, if applicable, including the host path mapped to /home/steam/squad-dedicated/.
  • A known-good copy of the startup command or update script.
  • The last successful startup log, which provides a comparison point after an update.

Backups do not replace compatibility testing. They let you restore configuration quickly while you determine whether a newly updated mod works with the current Squad server.

Frequently Asked Questions

Can I install a Squad mod while the server is online?

No. Stop the Squad server before SteamCMD downloads the item or before you delete and replace its folder. Updating a live directory can leave a partial copy in memory or on disk, so the safe sequence is stop, download, replace, then restart.

Should I use app ID 774961 for an ordinary Squad server?

Only if you intentionally run the Public Testing app. The standard dedicated-server package uses app ID 403240; 774961 identifies the Public Testing application and should not be substituted casually.

Why did a Docker rebuild remove my Squad settings?

The server directory was probably stored only inside the old container. Bind-mount a host directory to /home/steam/squad-dedicated/ so configuration and mod folders remain available when the container is replaced.

How can I tell whether I copied the right Workshop item?

Match the numeric folder name in steamapps/workshop/content/393380 with the ID from the Workshop URL and with the folder under SquadGame/Plugins/Mods/. Then check the boot log for the mod’s maps or other added content.