VGKAMI
Advertise Get listed

Game Guides

How to Make a 7 Days to Die Server: Step-by-Step Setup Guide

October 26, 2026 11 min read

The most reliable way to host 7 Days to Die for a persistent group is to install its separate dedicated-server tool (Steam app 294420), configure it with your own XML file, forward the game ports, and run it as a background service. A dedicated process keeps the world online after the host logs off. Self-hosting gives you control over saves, mods, administrators, and updates; a managed host removes most operating-system and network maintenance. This guide covers both approaches, with exact SteamCMD commands, current port rules, world-generation choices, V3.0-era settings, mod compatibility, backups, and fixes for the problems that prevent players from connecting.

What do you need to run a 7 Days to Die dedicated server?

You need a host computer or managed-server account, a stable network connection, storage for the game and generated worlds, and a plan for updates and backups. The server is a standalone process rather than a co-op session attached to one player’s game, so the world can remain available while the usual host is offline.

Hardware and connection requirements

Resource Baseline reported for the game More comfortable target for a busy or modded server
Memory 8 GB minimum; 12 GB recommended 10–16 GB for four or more players or substantial mods
Storage 15 GB reported for the game 25 GB or more on an SSD, plus room for saves, generated worlds, logs, and backups
Network Stable upload connection Wired Ethernet is preferred over Wi-Fi

Running the game client and the server on the same computer increases memory pressure. A separate LAN machine, Linux box, or hosted instance leaves more resources for the game and makes it easier to restart the server without interrupting the player who is at the keyboard.

Choose self-hosting or managed hosting

Self-host on your own PC, a spare machine, or a Linux server when you want direct access to files and are comfortable maintaining SteamCMD, firewall rules, operating-system updates, and backups. A managed host is simpler when you need 24/7 availability but do not want to administer the operating system. Before choosing, compare monthly cost, mod and file access, backup policy, uptime guarantees, network controls, and how much maintenance you are willing to perform.

How do you install the dedicated server with SteamCMD?

The dedicated server is a separate Steam tool, app 294420. Install SteamCMD, place the server in a dedicated directory, and update it with the anonymous Steam account. Keep the server’s branch aligned with every player’s branch; an experimental server requires clients on that same branch.

Linux installation

  1. Create a non-root account for the service, such as sdtd, and create a directory such as /home/sdtd/7dtd-server. Running the process as a non-root user limits the damage a compromised service could cause.
  2. Download and unpack SteamCMD for your distribution, then change to its directory.
  3. Run the update command:
    ./steamcmd.sh +force_install_dir /home/sdtd/7dtd-server +login anonymous +app_update 294420 validate +quit
  4. Check that the server files were written to the force-install directory. Repeat the same app_update 294420 validate operation during planned maintenance rather than while players are saving.

Windows installation

  1. Install SteamCMD and choose a dedicated folder, for example C:7dtd-server.
  2. Open SteamCMD, set the installation directory with force_install_dir, sign in with login anonymous, and run app_update 294420 validate.
  3. Use the supplied startdedicated.bat, or create a batch file that includes the required launch flags and your custom configuration file.

The first installation downloads the server binaries and may take time. Validation checks the files and can replace modified stock files, which is why your long-term settings should live in a separate XML file.

How do you preserve settings through updates?

Copy the shipped serverconfig.xml to a custom name, edit the copy, and launch with -configfile. Updates or validation can replace the stock file; a custom file keeps your identity, world, access rules, and capacity settings from being silently reset.

  1. Make a copy in the server directory, for example myserver.xml.
  2. Edit the value attributes in that copy. Keep the XML structure intact and do not remove unrelated entries unless you understand their effect.
  3. Point the launch command at it with -configfile=myserver.xml.
  4. After a game update, compare the newly shipped XML with your copy. New settings can be added upstream, while old properties can be removed or moved to another system.

Keep a dated copy of the custom XML outside the installation directory as well. That gives you a recovery point if a disk fails or a mistaken edit prevents startup.

What should you set for server identity, access, and player capacity?

Set a recognizable name and description, protect a private server with a non-empty password, and choose a maximum player count your hardware can sustain rather than accepting a number that causes memory or simulation spikes.

Setting Purpose and documented behavior
ServerName Name shown to players in the browser.
ServerDescription Short explanation of your rules, location, or mod set.
ServerPassword Use a non-empty value for a private group; share it only with intended players.
ServerMaxPlayerCount Maximum simultaneous players. The commonly documented default is 8; lower it if the host cannot maintain stable performance.
ServerPort Common default is 26900.
Public visibility The commonly documented default is 2; check the current XML because visibility values can change between builds.
Telnet Commonly enabled on port 8081. Treat it as an administration interface, not a player-connection port.

An empty telnet password is intended for local-only behavior. Set a strong password before enabling any remote administration, and preferably restrict the management port at the router or firewall to trusted addresses.

Which world should you choose, and when should you choose it?

Choose the world type, name, seed, and size before players build. Changing these identifiers later selects another save path; the original files may still exist, but the server can appear to have lost progress because it is loading a different world.

Navezgane

Set GameWorld=Navezgane for the fixed, handcrafted map. It gives everyone the same known geography and does not require an initial random-world generation step.

Random World Generation

Set GameWorld=RWG to create a procedural map. Define WorldGenSeed and WorldGenSize before the first public session, and choose a stable GameName. The first generation can take a while before the server accepts players, especially on slower storage.

Write the chosen values in your server notes. If you later want a completely new map, back up the old save, deliberately change the world identifiers, and tell players that they are joining a new campaign rather than recovering the old one.

How do you configure current gameplay rules?

In V3.0-era builds, many older XML properties for difficulty, day length, loot, blood moons, and zombie behavior were removed from serverconfig.xml and folded into SandboxCode. Do not paste a property list from an old guide and assume those entries still work.

  1. Open the game’s Sandbox Options screen and generate or copy the sandbox code that represents your desired rules.
  2. Place that code in the appropriate server configuration entry.
  3. Start the server and inspect the log for XML or sandbox-code errors.
  4. After an update, verify the generated code and the resulting in-game rules; a patch can change which options are represented.

If a setting is not present in the current shipped XML, treat that as a version issue rather than forcing an obsolete key into the file. Keep a note of the game build associated with each configuration backup.

What ports do you forward for 7 Days to Die?

Forward TCP 26900 and UDP 26900–26902 to the server machine. Allow the same traffic through the host firewall. If you change ServerPort, move the related UDP range with it instead of leaving the default forwarding rule in place.

Port Protocol Use Internet exposure
26900 TCP Primary game connection Forward for players connecting from outside the LAN.
26900–26902 UDP Game and related server traffic Forward with the same destination host.
8080 TCP Optional web dashboard Keep closed unless remote administration is required and secured.
8081 TCP Optional telnet/control interface Keep closed unless required; use strong credentials and restrictions.
  1. Give the server a stable LAN address, preferably a DHCP reservation, so the router rule does not follow a changing private IP.
  2. Create separate router rules for the TCP and UDP requirements, targeting that address.
  3. Allow the same ports in Windows Firewall, ufw, or the firewall used by your hosting provider.
  4. Test from a different network, such as a phone hotspot. Testing from inside the same LAN can be misleading because some routers do not support NAT loopback.

Do not expose the dashboard or telnet interface merely because the XML lists those ports. Close them when unused; remote administration expands the attack surface beyond the game port.

How do you launch and keep the server running?

Windows commonly launches with startdedicated.bat. Linux can use the matching shell script, a systemd service, or a persistent terminal session such as screen or tmux. The essential flags are -batchmode, -nographics, -configfile=..., and -dedicated.

./startserver.sh -batchmode -nographics -configfile=myserver.xml -dedicated

Use the exact script and path supplied by your installation; the example shows the required options, not a universal filename. On Windows, a restart loop or service wrapper can relaunch the process after a crash. On Linux, configure a service to restart on failure and wait briefly before trying again so a damaged save or invalid configuration does not create a tight restart loop.

What to watch in the log

  • World-generation progress and completion.
  • Successful binding to the configured game port.
  • XML parsing errors, unknown properties, or sandbox-code failures.
  • Authentication, mod-loading, and save-write messages.

Do not declare the server ready until the log shows that the world has loaded and the listening ports have bound successfully. The first RWG generation can look idle while the map is being created.

How do you add administrators safely?

Add the host platform ID and permission level to serveradmin.xml, then restart the server. Keep the list limited to trusted people and document who has each level. Reserved and administrator slots use permission levels, so decide who may join when the ordinary player limit is full.

  1. Stop the server cleanly so the XML is not being written while you edit it.
  2. Add the correct platform ID and permission entry to serveradmin.xml.
  3. Save a backup of the file, start the server, and confirm in the log that the entry was accepted.
  4. Test an administrative command with the least privilege needed for the job.

Protect the file like a password. Anyone who obtains a high-level administrator entry can alter the world, remove players, or expose other management functions.

How do you install mods without breaking connections?

Place server-side mods in the server’s root Mods folder. Every client must use the same game and mod versions for mods that require client files. A mismatch commonly produces a version error at connection time.

Safe mod-change procedure

  1. Record the current game build and every installed mod version.
  2. Stop the server and back up the Saves, GeneratedWorlds, custom XML, serveradmin.xml, and Mods folder.
  3. Add or remove one mod set at a time, rather than changing several unrelated overhauls together.
  4. Start the server and inspect the log for load errors before inviting players.
  5. Have clients install the exact required files and versions, then test with one player.

Large overhauls can change blocks, quests, or world-generation assumptions and may require a fresh world. Never apply one to the only copy of an established campaign.

How do you update and back up a 7 Days to Die server?

Schedule maintenance, stop the process, run SteamCMD’s update and validation command, verify the branch, then start the server and test before announcing that the update is complete.

./steamcmd.sh +force_install_dir /home/sdtd/7dtd-server +login anonymous +app_update 294420 validate +quit
  1. Tell players when the server will be offline and stop it cleanly.
  2. Copy the Saves and GeneratedWorlds directories to storage outside the installation directory.
  3. Back up your custom XML, serveradmin.xml, and Mods folder.
  4. Run the SteamCMD update for the same branch used by clients.
  5. Compare the new stock XML with your custom copy and add or remove settings as the build requires.
  6. Start the server, watch for world and port errors, and test a client connection before reopening it to everyone.

Keep more than one backup generation. A backup made immediately after corruption can preserve the problem, while an older copy may be the only usable recovery point.

Why can’t players see or join the server?

The server is not visible

  • Confirm the dedicated process is running and has finished loading the world.
  • Check that TCP 26900 and UDP 26900–26902 are forwarded to the current LAN address.
  • Check the operating-system and provider firewalls.
  • Verify that the configured ServerPort matches the router and firewall rules.

Settings keep resetting

Inspect the launch command. If it points to the shipped serverconfig.xml instead of your custom file, validation or an update can restore defaults. Correct the -configfile path and restart.

Friends receive a version or mod error

Update server and clients to the same branch and build. Check every client-required mod, not just the server’s top-level mod folder; one old dependency is enough to reject a connection.

The world appears to be missing

Compare GameWorld, WorldGenSeed, WorldGenSize, and GameName with the values used by the original campaign. Changing one can select a different save while leaving the old data on disk.

Remote administration is exposed

Close TCP 8080 and 8081 if you do not need them. If you do, set strong credentials, restrict source addresses at the firewall, and avoid publishing those ports to the entire internet.

Is self-hosting the right choice for your group?

Self-hosting is a good fit when you want full control of XML files, mods, saves, and administrator permissions and can maintain a machine continuously. Managed hosting is a better fit when uptime matters more than direct operating-system access or you do not want to handle port forwarding, patch windows, and recovery. In either case, the durable setup is the same: separate configuration, matching client versions, protected administration, and tested backups.

Frequently Asked Questions

Can I play on the same PC that runs the dedicated server?

Yes, but the client and server share CPU, memory, storage, and network resources. The documented minimum of 8 GB RAM is for the game baseline; running both processes together makes the 12 GB recommendation—and often more for mods or several players—more relevant.

How can I start a completely new map without deleting the old one?

Stop the server, back up the existing save directories, and change the world identifiers deliberately: use a new GameName and, for RWG, a new seed or size. Because those values select a different save, the previous campaign remains recoverable if its files are preserved.

Do players outside my home network need the dashboard or telnet ports?

No. Remote players need the game-port forwarding rules; dashboard and telnet are optional administration interfaces. Leave TCP 8080 and 8081 closed unless you have a specific remote-management need and have secured them.

What happens if an update changes an XML setting?

The server may ignore an obsolete property, log an XML error, or move the behavior into a newer system such as SandboxCode. Compare the new shipped XML with your custom file after every update, then test the resulting rules before reopening the server.