11 May 2026

Squad Server Configuration Guide

A file-by-file reference for every config Squad's dedicated server reads, from Server.cfg and Admins.cfg to Layer rotation and RCON. Use it as a lookup when you need to know exactly what to edit – and where – to change a specific bit of server behaviour.

Need a Squad server?Rent now

If you've already got your Squad server running on LOW.MS (if not, start with the Getting Started guide), this article is the file-by-file reference for everything the dedicated server actually reads off disk. I'll walk through every .cfg file that lives under SquadGame/ServerConfig/, what each one does, which ones you'll touch weekly versus set-and-forget, and the handful of gotchas that catch people out – the Layer Voting rewrite that killed ExcludedFactionSetups.cfg, the distinction between Levels and Layers, and the settings that genuinely need a full restart versus a hot reload.

One bit of housekeeping before we dig in. Every config on this page is edited the same way on LOW.MS: Configuration Files in the panel sidebar. That's the primary path – it gives you a clean text editor for every .cfg without having to faff around in the File Manager. File Manager still works if you want to bulk-download the whole ServerConfig/ directory to version-control it, but for single-file edits, Configuration Files is much faster.

The full config file list

Squad's dedicated server reads these files on startup:

File What it's for
Server.cfg Core identity – server name, max players, password, messages, rotation mode
Admins.cfg Admin groups (permissions) and SteamID64 assignments
Bans.cfg Banned SteamIDs, written to automatically by the in-game ban command
Rcon.cfg RCON password and allowed IPs
LayerRotation.cfg Layer rotation – specific Map + Mode + Factions combos
LevelRotation.cfg Level rotation – just map names, game picks mode/factions
License.cfg (also seen as Licensing.cfg) Your Offworld-issued licence key
Whitelist.cfg (RemoteAdminListHosts.cfg in practice) Whitelist entries / remote admin list URLs
MOTD.cfg (Motd.cfg) Message of the day shown on join
ServerMessages.cfg Rotating broadcast messages
VoteConfig.cfg Layer voting system – rules, cooldowns, faction restrictions
CustomOptions.cfg Custom layer parameter overrides (advanced)
ExcludedLayers.cfg, ExcludedLevels.cfg, ExcludedFactions.cfg Blocklists for the voting / random systems
RemoteAdminListHosts.cfg, RemoteBanListHosts.cfg URLs the server pulls remote admin/ban lists from

A heads-up on the one that trips people up: ExcludedFactionSetups.cfg was removed when Offworld rewrote the map voting system. If you're reading a guide that tells you to edit it, that guide is stale. All the faction-matchup rules now live in VoteConfig.cfg and (for fixed rotations) LayerRotation.cfg. More on that lower down.

Server.cfg

The anchor file. Everything that defines what kind of server this is – name, slot count, password, tick-rate-adjacent bits – lives here. Open it from Configuration Files → Server.cfg.

A realistic example for a 50-slot public community server:

ServerName="[EU] LOW.MS | Milsim | All Welcome"
MaxPlayers=50
ServerPassword=
ShouldLog=1
NumReservedSlots=0
PublicQueueLimit=25
PreventTeamChangeIfUnbalanced=1
AllowTeamChanges=1
RecordDemos=0
MapRotationMode=LayerList
NumRconBackupThreads=2

The ones that matter:

Setting Typical value What it does
ServerName string Name as it appears in the in-game browser. Tags like [EU], [MILSIM], [MODDED] help players filter.
MaxPlayers 10–100 Total slots. On LOW.MS this should match the slot tier you ordered.
ServerPassword empty or string Leave empty for a public server; set for private/clan-only.
NumReservedSlots 0–10 Slots reserved for players with the reserve permission (admins, donors, clan members).
PublicQueueLimit 25 default, -1 unlimited, 0 off How many players can queue once the server is full.
PreventTeamChangeIfUnbalanced 1 Stops trolls from switching to the winning side mid-round. Leave on.
MapRotationMode LayerList, LayerList_Randomized, LevelList, LevelList_Randomized Which rotation file the server reads and in what order.
RecordDemos 0 or 1 Server-side demo recording. Disk-hungry – leave off unless you have a reason.

Honestly, for most communities the only settings you'll change after first-boot are ServerName, PublicQueueLimit, and MapRotationMode. Password changes are a restart-required affair (use Service Settings to bounce the process cleanly), whereas ServerName is read often enough that most changes propagate to the browser within a minute or two.

Admins.cfg

This is two concepts in one file: groups define what a permission tier can do, and admins map SteamID64s to groups.

// Groups
Group=SuperAdmin:changemap,pause,cheat,private,balance,chat,kick,ban,config,cameraman,immune,manageserver,featuretest,reserve,demos
Group=Admin:changemap,balance,chat,kick,ban,cameraman,pause,reserve
Group=Moderator:chat,kick,cameraman,reserve
Group=Whitelist:reserve

// Admin assignments
Admin=76561198000000001:SuperAdmin   // Head admin – lead clan officer
Admin=76561198000000002:Admin        // Senior admins
Admin=76561198000000003:Admin
Admin=76561198000000004:Moderator    // Trial admins / timezone coverage
Admin=76561198000000010:Whitelist    // Clan members, donors, event attendees

The permission vocabulary is worth memorising because you'll tweak groups more often than you think. Key ones: changemap switches the active layer, kick/ban are the moderation basics, cameraman is the free-flying admin spectator mode (useful for demos and reviewing incidents), cheat enables server-side cheats like godmode (keep this on SuperAdmin only), reserve claims a reserved slot on a full server, manageserver unlocks end-match and similar server-state commands, immune makes a member immune to vote-kicks, and config allows config reloads from in-game.

In my experience, the four-tier split above (SuperAdmin/Admin/Moderator/Whitelist) covers 95% of community servers. The Whitelist group with just reserve is how you give paying supporters or clan members slot priority without any actual moderation power – it's a cleaner pattern than running a separate Whitelist.cfg, which mostly exists for backward compatibility.

You'd edit this file when onboarding a new admin, demoting someone, or tightening permissions after an incident. Changes take effect on the next map rotation, or immediately if you run AdminReloadServerConfig through RCON or in-game as a SuperAdmin.

Bans.cfg

You almost never edit this by hand. In-game bans and RCON bans write to it automatically in the format SteamID:Duration:Reason, with 0 as a permanent ban. Two situations where manually touching it is fine: you want to pre-load a ban list imported from another community (SteamIDs one per line, permaban format is straightforward), or you want to unban someone and can't find them through the in-game admin menu – easier to open Bans.cfg in Configuration Files, delete the line, and save.

Rcon.cfg

Small file, high blast radius. This is where your RCON password lives, so guard it the way you'd guard a database password.

Password=YourLongRandomRconPasswordGoesHere
Port=21114
MaxConnections=5
SecondsBeforeTimeoutCheck=15
SecondsToTimeoutForUnAuth=15
ClientDisconnectWaitTime=3
SessionTimeout=0

On LOW.MS the Port value is auto-allocated when your server is provisioned – don't change it unless you know what you're doing. The other values are fine at defaults; the only one you should genuinely pay attention to is Password. Use a long random string (at least 20 characters, no spaces), rotate it if you've ever shared it with a third-party RCON tool you no longer trust, and never paste it into Discord.

If you're running SquadJS, Squad Battlemetrics, or one of the community RCON bots, they all authenticate through this password.

LayerRotation.cfg vs LevelRotation.cfg

These two are separate files, and the distinction matters. A Level is a map – just the terrain, like AlBasrah or Narva. A Layer is a specific instance of that map: a map plus a game mode plus (optionally) a faction pairing, like AlBasrah_AAS_v1 or Narva_Invasion_v2.

You'll almost always want LayerRotation.cfg because it gives you full control over what plays. LevelRotation.cfg picks a map and lets the game pick the rest, which is fine for variety but bad for pacing – you don't want RAAS three rounds in a row, then Invasion with a faction matchup half your playerbase hates.

Example LayerRotation.cfg:

AlBasrah_AAS_v1
Narva_RAAS_v2
Yehorivka_Invasion_v2 USA RGF
Mutaha_RAAS_v1
GooseBay_RAAS_v1 CAF RGF
Kohat_AAS_v1
Manicouagan_RAAS_v1
Kamdesh_Invasion_v1 USA INS

The per-line format is MapId_GameMode_vVersion [Team1 Team2]. Factions are optional – leave them off and the game will pick. When you do specify factions, separate them with a space (not an underscore), and make sure both factions are actually available for that layer version.

Squad's official Layer list is long, versioned, and updated by Offworld every few content drops. I'm deliberately not going to list every Layer here because by the time you read this the list will have changed – instead, grab the current list from the Squad Wiki's Layers page or from the official Squad documentation. The pattern above is stable; the specific Layer names evolve.

Set MapRotationMode=LayerList in Server.cfg to use a fixed order, or LayerList_Randomized to shuffle within the file. Shuffled is usually what you want for a public community – predictable enough that admins know what's coming, varied enough that players don't burn out on the same rotation.

Game modes

Current modes, as of April 2026:

  • AAS (Advance and Secure) – fixed flag chain, both teams capture in order. The canonical competitive mode.
  • RAAS (Random Advance and Secure) – like AAS but flags randomise per round. Most popular public mode.
  • Invasion – asymmetric attacker/defender, defender owns the map, attackers push through a flag lattice.
  • Skirmish – smaller-scale AAS on trimmed maps, quicker rounds.
  • Destruction – attackers destroy weapon caches on a timer.
  • Insurgency – conventional-vs-insurgent asymmetric, intel-driven objectives.
  • Territory Control – hex-based map control, attritional.
  • Seed – a reduced-ruleset mode designed for low-population "seeding" when you're growing the server from empty to full.

Not every layer supports every mode – Fallujah_Skirmish exists, Fallujah_Destruction might not. Check the wiki or just try a layer name; if it's invalid, Squad logs a clear error on startup.

License.cfg (Licensing.cfg)

If you've got a server licence from Offworld – and you should, if you're running a public-facing community – the key goes in this file. One line, nothing else:

XXXX-XXXX-XXXX-XXXX-XXXX-XXXX

Applications go through the official licensing portal. The licensing team reviews hardware, admin coverage, and contact reachability; the whole process takes anywhere from a few days to a few weeks depending on queue depth. A licensed server appears on the in-game Licensed tab, which is where the majority of active public players browse – unlicensed servers still run, still work, still host RCON and mods and everything else, but they live on the Community tab which sees a lot less foot traffic.

Keep this file out of screenshots and out of Git. If you think your key has leaked, request a replacement through the portal.

Whitelist.cfg and the remote list system

Two related files here. Whitelist.cfg takes a flat list of SteamID64s for reserved-slot access, one per line. It's the simplest form of whitelisting – useful for private training events or clan scrims.

The more modern pattern is remote admin/ban lists: you host a plain-text list on a URL (Pastebin, Gist, your own web server), list the URL in RemoteAdminListHosts.cfg or RemoteBanListHosts.cfg, and the server pulls the file on startup. This is how networks with multiple servers keep admin groups synchronised without having to copy-paste between boxes. Most clan communities eventually migrate to this.

MOTD.cfg and ServerMessages.cfg

MOTD.cfg (or Motd.cfg – Squad accepts both) is the one-shot "message of the day" players see on join. Keep it short, mention your rules page or Discord, and don't wall-of-text it.

ServerMessages.cfg is different – it's a list of messages that rotate through global chat on a timer. Useful for rule reminders, Discord links, donation call-outs. Don't overdo it; three or four messages on a five-minute cycle is plenty. Spam it and your regulars will mute global chat, which defeats the point.

VoteConfig.cfg and the voting system

Since the Layer Voting rewrite, this is where layer-vote rules, cooldowns, faction-matchup restrictions, and the conditions that trigger the various vote prompts all live. It's also what replaced the old ExcludedFactionSetups.cfg – if you want to block specific faction matchups (say, never MEA vs INS, always BAF vs RGF on Narva), you do it through VoteConfig's layer-pool system now.

This is the one file I'd genuinely recommend reading Offworld's community docs for rather than trying to wing it. The format is more structured than the other configs, and a bad entry can silently break voting without obvious errors. Get a working example from another community and edit from there rather than writing from scratch.

Applying config changes

Most config changes only take effect when the server restarts. A few (admin list reload, ban list reload) can be pushed live through RCON without a bounce, but if in doubt, restart. On LOW.MS:

  1. Open your server in the panel
  2. Service Settings – stop, start, or restart the process here
  3. Commandline Manager – for launch-parameter changes (query port overrides, different config directory, etc.) rather than in-file edits
  4. Log Viewer – tail the server log and make sure your config parsed cleanly on startup – Squad logs config errors prominently, and you want to catch them before players connect and get booted

Use File Manager if you need to bulk-download the whole ServerConfig/ directory for backup or version control. I'd strongly recommend committing your configs to a private Git repo – it's saved my neck more than once when a late-night Layer rotation edit broke something subtle and I needed to revert.

That's the full file-by-file tour. For first-time setup and initial install walkthrough, see the Getting Started guide. If something's misbehaving after a config change, Squad Troubleshooting is the companion article for common problems.

Join our Discord to chat with our staff and community!
Join Discord