GUIDE • UPDATED

How To Host A Project Zomboid Dedicated Server

Set up a Project Zomboid Build 42 dedicated server on Windows or Linux: SteamCMD install, memory, ports, your server's settings files, mods, admins and backups.

Checked against the official documentation on .

Byte, the TopServer.Network robot mascot, launching a game server like a rocket

A Project Zomboid dedicated server keeps your world running so your group can play without the host being in the game. This guide is for Build 42, the stable version since 29 July 2026, and was checked against the files of a Build 42.21 dedicated server that we installed and ran ourselves on 4 October 2026. Where a fact comes from that test rather than from The Indie Stone, we say so.

What You Need

  • A Windows or Linux machine that stays on while people play. The dedicated server is a free tool on Steam, so you do not need a second copy of the game.
  • Disk space: about 7 GB for the server itself (6.9 GB on Linux and 6.8 GB on Windows in our test install), plus room for the world and its backups.
  • Memory: the start settings that ship with the server ask for a lot. The Windows script, StartServer64.bat, reserves 16 GB (-Xms16g -Xmx16g), and the Linux settings file, ProjectZomboid64.json, allows up to 8 GB (-Xmx8g). In our tests a new, empty world did not finish loading on Linux with only 4 GB or 5 GB available, so plan on more than that. Lower the shipped numbers only to fit your machine (see Common Problems).
  • Players: a server holds up to 254 players, but its own settings file warns that more than 32 can cause poor map streaming and desync. 32 is the default.
  • Build 41 players need the legacy41 branch for both the game and the server. Build 41 worlds do not load in Build 42.

Install The Server With SteamCMD

On a desktop with Steam, open your Library, show Tools, and install Project Zomboid Dedicated Server.

On a machine without Steam, such as a Linux VPS, use SteamCMD. The dedicated server is app 380870 and downloads with an anonymous login.

Linux:

steamcmd +force_install_dir ~/pzserver +login anonymous +app_update 380870 validate +quit

Windows (from the folder where you unpacked SteamCMD):

steamcmd.exe +force_install_dir C:\pzserver +login anonymous +app_update 380870 validate +quit

To stay on Build 41, add -beta legacy41 after 380870. Run the same command again whenever the game updates.

Ports And Firewall

The server's settings file sets two UDP ports, and both must reach the server:

Port Protocol Setting Used for
16261 UDP DefaultPort The port players connect to
16262 UDP UDPPort The server's second UDP port

When we started a test server, its log said it was listening on 16261 for Steam connections and 16262 for RakNet, and that clients should use 16261. Both were UDP; it opened no TCP port to the outside.

  • On your router, forward both ports to the machine running the server.
  • UPnP: the server tries to set up port forwarding on your router by itself (UPnP=true). If your router does not allow it, forward the ports by hand.
  • Two servers on one machine need different ports. Change DefaultPort and UDPPort in the second server's settings file.

Configure The Server

The server keeps its settings in a folder called Zomboid/Server in the home folder of the user that runs it: on our Linux test server, run as a user called pz, that was /home/pz/Zomboid/Server. The files are named after the server, servertest unless you choose another name:

File What it holds
servertest.ini Server settings: name, password, players, PvP, mods, ports, backups
servertest_SandboxVars.lua The world: zombies, loot, time, XP and every other sandbox option
servertest_spawnregions.lua Where new characters can spawn

These files appear the first time the server starts. A few settings matter straight away:

  • Public=true lists the server in the in-game browser. A new server starts with Public=false.
  • PublicName and PublicDescription are what players see in the browser.
  • Password is optional. Players must enter it to join.
  • Open=false makes the server whitelist-only: an admin then creates each player's account.
  • PVP and SafetySystem decide whether players can hurt each other, and whether each player can turn PvP on and off.

Never copy another server's .ini file over yours, and never change ResetID or ServerPlayerID. The server picks those numbers at random on its first start, and changing them makes every player start a new character.

Sandbox presets

The sandbox file starts as the Apocalypse preset. Build 42 also has Outbreak (more loot, less grind), Rising (fewer, tamer zombies) and Extinction (more zombies, some of them sprinting). To use one, replace the sandbox file with one built from that preset, then change what you want.

Tip: Our free Project Zomboid Server Settings Generator builds the complete sandbox file from any of the four presets, with your changes to zombies, XP and loot, and lists the lines to change in your .ini file.

Start The Server

The server starts with a script in its install folder:

  • Linux: ./start-server.sh -servername servertest
  • Windows: StartServer64.bat -servername servertest, from a command prompt in the server folder. The script passes up to two options on to the server.

-servername chooses which settings files the server uses, so -servername coop uses coop.ini and coop_SandboxVars.lua. The first time a server starts, it creates an admin account called admin and asks you to type a password for it, then type it again, in the server window. On Linux you can give it on the command line instead, with -adminpassword yourpassword. The shipped Windows script passes only its first two options, so on Windows type the password when asked.

On our Windows test machine, a new server reached *** SERVER STARTED **** in its log in under 30 seconds. That is the line to wait for before players join.

To stop the server, type quit in its window. It saves the world and shuts down; on our test server that took about 10 seconds.

Join Your Server

  • Server browser: with Public=true, players find the server under Join, on the Internet tab.
  • Direct connect: players add the server's public IP address and port 16261 to Favorites and join from there.
  • On your own network: use the server's local IP address with the same port.
  • Mods: players do not install your Workshop mods by hand. The game downloads them while it connects to the server.
  • Same version: the game refuses to join a server on a different version, with a message that the server version does not match the client.

Mods

Mods are set in the .ini file:

  • WorkshopItems lists the Steam Workshop numbers the server downloads, separated by semicolons. The number is the id= at the end of a mod's Workshop page address.
  • Mods lists the mod IDs to switch on, from each mod's own files, separated by semicolons.
  • Map lists the map folders to load. Muldraugh, KY is the standard map; map mods add their own folder name.

A mod needs both entries: its Workshop number so the server downloads it, and its mod ID so it is switched on.

Admins, Backups And Updates

Admins

The admin account is admin, with the password you set on the first start. Admins can use the in-game admin panel and chat commands to kick, ban and manage the server. Players on a whitelist-only server (Open=false) need an admin to create their account.

Backups

The server keeps backups in Zomboid/backups. The .ini file controls how many (BackupsCount, 5 by default) and whether it makes one each time it starts (BackupsOnStart, on by default); our test server made a startup backup there as a zip file. To back up by hand, stop the server and copy its world folder, Zomboid/Saves/Multiplayer/<server name>, along with the files in Zomboid/Server.

Updates

Players can only join a server on the same build as their game. When Project Zomboid updates, stop the server, run the SteamCMD command again (Steam updates the tool for you), and start it.

Common Problems

My server is not in the server browser

Set Public=true in the .ini file and restart. A new server is not public until you do.

Players cannot connect

Check that UDP ports 16261 and 16262 are forwarded to the right machine and allowed through its firewall, and that players use port 16261.

Every player had to make a new character

The server's ResetID or ServerPlayerID changed, usually because its .ini file was replaced with another copy. Restore the old file from a backup if you still have it.

The server will not start, or the machine runs short of memory

The shipped start settings ask for more memory than many machines have. On Windows, lower both -Xms16g and -Xmx16g in StartServer64.bat, for example to -Xms4g -Xmx4g. On Linux, change -Xmx8g in ProjectZomboid64.json, as the comment in start-server.sh says. If the server stutters instead, give it more memory if the machine has it to spare, or cut back on mods and players.

SteamCMD says "Missing configuration"

In our tests SteamCMD sometimes failed this way on the first run, then installed the server when we ran the same command again.

Or Rent A Server Instead

Hosting it yourself is free, but the machine has to stay on, and you look after the ports, updates, mods and backups. A rented Project Zomboid server runs on the host's hardware, and you change the same settings files from its control panel. Compare what each host includes, such as memory, backups and server locations, before you buy.

Compare Project Zomboid server hosts on price, locations, memory and support. When your server is running, add it to the Project Zomboid server list for free so players can find it.

Frequently Asked Questions

Do I need to own Project Zomboid to run a dedicated server?

No. The Project Zomboid Dedicated Server is a free tool on Steam, and SteamCMD downloads it with an anonymous login. Players still need the game to join.

How many players can a Project Zomboid server hold?

Up to 254. The server's own settings file warns that more than 32 can cause poor map streaming and desync, and 32 is the default.

Which ports does a Project Zomboid server use?

UDP 16261, the port players connect to, and UDP 16262. Both must be forwarded to the server.

How much RAM does a Project Zomboid server need?

The Indie Stone publishes no figure. The shipped start settings allow 16 GB on Windows and 8 GB on Linux. In our tests a new, empty world would not finish loading with 4 GB or 5 GB on Linux, so plan on more, and more again for mods and players.

Why is my server not in the server browser?

A new server starts with Public=false. Set Public=true in its .ini file and restart it.

Can I still host a Build 41 server?

Yes. Install the server with the legacy41 branch, and have your players switch their game to legacy41 too. Build 41 worlds do not load in Build 42.

Where are the server's settings files?

In Zomboid/Server in the home folder of the user that runs the server, named after the server: servertest.ini and servertest_SandboxVars.lua by default.

Sources

Checked on 4 October 2026 against:

  • The settings files a Project Zomboid Build 42.21 dedicated server writes on its first start, and the scripts and presets that ship with it, from our own test install
  • The Indie Stone's patch notes, including Build 42 Stable (29 July 2026), 42.20.3 (up to 254 players) and 42.21 Stable (28 September 2026)
  • Project Zomboid on Steam, and the Steam app information for the dedicated server (app 380870)
  • Valve, SteamCMD
PREFER A READY-MADE SERVER?

Compare Project Zomboid Hosting

See providers side by side on price, performance, features and support, and check for a current discount before you buy.