Factorio Updated April 27, 2026

Installing a Factorio Dedicated Server

How to install a Factorio dedicated server on a Pterodactyl/WISP panel using SteamCMD.

FactorioinstallSteamCMDsetupPterodactyl

Overview

Factorio dedicated servers run as headless Linux processes with no display output. The server binary is free — you do not need to own Factorio on Steam to host a server, but players connecting must own the game. Two install methods exist: SteamCMD (recommended for panel environments) and the direct headless binary download. This article covers the SteamCMD path.

SteamCMD Installation

Factorio's SteamCMD AppID is 427520. The install command is:

steamcmd +login anonymous +app_update 427520 validate +quit

On a WISP/Pterodactyl panel, this command is typically wired into the egg's install script. If you are using the official Factorio egg, the panel runs this automatically when you create the server. Check your egg configuration under Startup to confirm the install command is present.

After install, the directory structure will look like:

factorio/
  bin/x64/factorio
  config/
    server-settings.json
    server-whitelist.json
    server-adminlist.json
    mod-list.json
    mod-settings.dat
    map-gen-settings.json
    map-settings.json
  saves/
  mods/

The server binary is at factorio/bin/x64/factorio.

Creating a Save Before First Launch

The server cannot start without a save file. You must generate one before running --start-server. Generate a default save using:

./factorio/bin/x64/factorio --create factorio/saves/save.zip

To use custom map generation settings instead, see Creating Maps with Custom Generation Settings.

First Launch

Once a save exists, start the server with:

./factorio/bin/x64/factorio --start-server factorio/saves/save.zip --server-settings factorio/config/server-settings.json

On WISP/Pterodactyl, the egg startup command handles this. The panel substitutes variables for port, RCON port, and RCON password from the Startup tab. Confirm the startup command in the panel matches your actual binary and save paths.

Verifying the Server Is Running

A running Factorio server outputs lines like:

Info ServerMultiplayerManager.cpp:...  Starting server...
Info ServerMultiplayerManager.cpp:...  Hosting game at IP ADDR:...

The default game port is 34197 UDP. Use the panel's console to watch startup output. If the server exits immediately after starting, the most common causes are a missing save file, a port conflict, or a corrupted server-settings.json.

Updating After Install

To update an existing install, re-run the SteamCMD command. SteamCMD will download only changed files. Stop the server before updating — running a live update risks save corruption. For detailed update procedures, see Updating the Factorio Server and Managing Compatibility.