Factorio Updated April 27, 2026

Configuring Your Server with server-settings.json

A complete reference for server-settings.json — the primary configuration file for your Factorio dedicated server.

Factorioconfigurationserver-settings.jsonsettings

Overview

server-settings.json is the primary configuration file for a Factorio dedicated server. It controls the server's display name, password, player limits, visibility, autosave behavior, and admin setup. The file lives at factorio/config/server-settings.json.

Minimal Configuration

A working minimal config looks like this:

{
  "name": "My Factorio Server",
  "description": "A dedicated Factorio server",
  "max_players": 0,
  "game_password": "",
  "visibility": {
    "public": false,
    "lan": true
  },
  "require_user_verification": true,
  "allow_commands": "admins_only",
  "autosave_interval": 10,
  "autosave_slots": 5
}

Key Fields Reference

Server identity:

  • name — Display name shown in the server browser and on factorio.com matchmaking.
  • description — Short description shown in the server listing.

Player access:

  • max_players — Maximum concurrent players. 0 means unlimited.
  • game_password — Join password. Empty string means no password.
  • require_user_verification — When true, players must have a valid Factorio account. Required for public matchmaking. Set to false only for fully private LAN servers.

Visibility:

  • visibility.public — When true, lists the server on factorio.com matchmaking. Requires require_user_verification: true and port 34197 UDP open.
  • visibility.lan — When true, broadcasts the server on the local network.

See Configuring Public, LAN, and Hidden Server Visibility for details.

Commands and permissions:

  • allow_commands — Controls who can run /c Lua commands. Valid values: "true" (admins only), "false" (nobody), "admins_only" (same as "true" — admins only). Use "false" for public servers to prevent grief.

Autosave:

  • autosave_interval — Minutes between autosaves. Default 10. Set to 0 to disable (not recommended for production servers).
  • autosave_slots — Number of autosave files to keep before rotating. Default 5. See Tuning Autosave Settings and Recovering from Backups.

Whitelist:

Admins (legacy):

Passing the Settings File at Startup

Reference the settings file with the --server-settings flag:

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

On WISP/Pterodactyl, the egg startup command typically includes --server-settings already. Check your Startup tab to confirm.

Common Mistakes

  • Trailing commas: JSON does not allow trailing commas. A single extra comma will cause the server to refuse to start with a parse error.
  • Wrong types: max_players must be an integer, not a string. visibility.public must be a boolean (true/false), not a string.
  • Editing while running: Changes to server-settings.json are read at startup only. Restart the server after editing.