Halloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon US: current deals, useful picks and tech finds.Check DealsClean PCRecommendedOne scan can reveal what keeps slowing WindowsLook for cleanup and repair opportunities.Run ScanHalloween DealsAmazon USOctober picks are moving - compare before checkoutAmazon US: current deals, useful picks and tech finds.See Picks×
Skip to content
World desk10 min

How to Update a Factorio Server Without Losing Your Save

A step-by-step Factorio server update guide for native headless installs, Docker containers, and managed hosts, with backups, version parity checks, troubleshooting, and rollback.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Update a Factorio server by stopping it cleanly, backing up the save and user data, replacing only the server executable or container image, then restarting with the same settings. Before players reconnect, verify the new build, load the expected map, and make sure every client has exactly the same game version and mods.

The save is normally separate from the replaceable installation files. Treat that separation as your safety boundary: preserve the user-data directory, keep the previous executable or image available, and do not delete a container until you have confirmed that its data is mounted outside the container.

As an Amazon Associate I earn from qualifying purchases.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What an update changes—and what it should not change

A Factorio dedicated server has two practical layers. The installation layer contains the game executable and its bundled files. The user-data layer contains the world and the information needed to run it: save archives, mods, configuration, logs, and crash dumps. Factorio documentation describes these as separate, so a normal update replaces the installation layer while retaining user data.

That separation is not automatic protection against every mistake. A forced process termination can leave the newest changes unwritten, an incorrect path can make the new binary look for an empty data directory, and an unmounted Docker volume can disappear when the container is removed. A safe update therefore has four controls:

#1 Best Overall
LIUWEI New Retro Gaming Console & Game Stick Pro - 20,000+ Classic Video Games, 23 Emulators, Dual Wireless Controllers, 4K HDMI Output, Plug & Play, Compatible with TV, PC, Projector, 64GB
  • 🎮 20,000+ Classic Games: This retro gaming console comes preloaded with over 40,000 classic games from your favorite retro consoles. Play instantly—no downloads, no internet needed!
  • 📡 Dual Wireless Controllers: Enjoy smooth, lag-free gaming with two 2.4GHz wireless controllers. Play comfortably from anywhere without tangled wires, making multiplayer fun hassle-free.
  • 🖥 4K HDMI Output: Connect the game stick to your TV, PC, or projector via HDMI and experience stunning 4K visuals for an immersive and crystal-clear gaming experience.
  • 🔌 Plug & Play: Setup is super easy! Simply plug in the console, connect to your TV, and start playing immediately—no complicated installation required.
  • 🎁 Perfect for All Ages: Whether you're introducing the next generation to classic entertainment or reliving nostalgic moments, this system makes an ideal gift for any occasion. Perfect for family gatherings, holidays, or just downtime fun.
  • Stop the process or container cleanly so the latest autosave is flushed.
  • Create a backup that is outside the installation and, for containers, outside the container filesystem.
  • Install the target version alongside the old one or pin the old image so rollback remains possible.
  • Check version and mod parity before allowing normal players to join.

Prepare the server before changing files

1. Announce a maintenance window

Tell players when new joins will be blocked and when testing is expected to finish. Ask anyone connected to leave normally rather than waiting for a process kill. Do not start the update while a large build, save, or mod migration is still in progress.

2. Stop the server cleanly

Use the control method appropriate to your deployment: the service manager or console for a native installation, docker stop for a container, or the update control in a managed host panel. Wait for the process to exit. The goal is to let Factorio flush the current state and close the save cleanly; copying files while the server is still writing can produce a backup that does not represent the latest game state.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

3. Make a restorable backup

Copy the save archives and the complete user-data directory to a separate location before installing anything. User data includes saves, mods, configuration, logs, and crash dumps. Keep at least one copy that is not inside the directory you are about to replace. Give the backup a date and identify the server version it came from so you can select it quickly during rollback.

For Docker, this step is mandatory before removing the container. Data stored only in the container’s writable layer is removed with docker rm. A host-mounted volume is what makes the data persist across container replacement.

4. Record the current operating state

Write down the current Factorio version, the complete mod list and versions, the startup command, the server-settings file, map-settings files, and relevant environment variables. Also record which save is loaded and where the user-data directory is located. This inventory turns an update into a repeatable change instead of a reconstruction exercise.

5. Choose the target and check player compatibility

Select the intended full or headless package, container image, or host version. Tell players which build they must install. Factorio multiplayer requires the server and every client to use exactly the same game version and mods; an otherwise healthy server can still reject connections when one client is on a different build or mod set.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Updating a Linux or Windows headless installation

The native-package method works when you manage the server files directly on Linux or Windows. The safest pattern is to install the new package in a new, versioned directory and leave the old directory untouched until testing is complete.

Step 1: obtain and unpack the target package

Download the selected full or headless package through Factorio’s official distribution channel. Extract it to a new directory rather than overwriting the working installation. A versioned directory makes the old executable an immediate rollback target and avoids mixing files from two releases.

Step 2: point the new installation at existing user data

Use the existing user-data directory and the recorded server-settings and map-settings files. Do not copy only the save and assume that is sufficient: the mods and configuration in user data are part of the server’s operating state. Keep permissions and ownership compatible with the account that runs Factorio.

Step 3: start with the same save and settings

Factorio’s documented dedicated-server forms include an explicit save path:

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
./bin/x64/factorio --start-server ./saves/my-save.zip

To load the latest available save while applying a server-settings file, the documented form is:

./bin/x64/factorio --start-server-load-latest --server-settings ./data/server-settings.json

Use the equivalent executable path on Windows (for example, the installation’s factorio.exe) and preserve the same options your existing service or scheduled task uses. The examples show the switches and file relationships; your actual save and settings paths may differ.

Step 4: verify before opening the port

Watch the console and log from startup. Confirm that the intended save opens, the expected map and player data are present, and no migration, missing-mod, or permission error prevents a complete load. Do not announce the server open merely because the process started; a process can remain running while the save fails to load or a required mod is disabled.

Step 5: retain the previous installation

Keep the old directory, its executable, and the pre-update backup until a test client has joined and played successfully. Once the validation session is complete, you can schedule removal of obsolete files according to your normal maintenance policy. Deleting the old copy before testing removes the simplest rollback path.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Updating a Factorio server in Docker

In Docker, the executable layer is the image and the running instance is the container. Updating means replacing the container with one created from the refreshed image while preserving the host-mounted data and the exact configuration used to run it.

Confirm persistence before stopping anything

Inspect the existing docker run command or Compose file and identify the volume mounted for Factorio data. The project documentation explicitly warns to back up the save before upgrading and to ensure server data is mounted with -v; otherwise removing the container destroys data held inside it. Also record ports, environment variables, credentials-related settings, and any custom server-settings or map-settings paths.

Use the documented replacement sequence

After the backup and configuration record, stop and remove the old container, pull the refreshed image, and recreate the container with the same volume, ports, environment variables, and settings:

docker stop factorio
docker rm factorio
docker pull factoriotools/factorio
# run the same docker run or compose configuration again

The final line is intentionally your existing run or Compose configuration, not a new set of guessed options. Reusing it is what preserves the data mount and server behavior. If you use Compose, pull the image through the Compose workflow and recreate the service with the same declared volumes and environment.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Handle automatic mod updates deliberately

The Docker project documents UPDATE_MODS_ON_START=true for updating mods when the container starts. Automatic mod updates require valid Factorio credentials. You can hold selected mods back with UPDATE_IGNORE=mod1,mod2, but an ignored mod may itself become incompatible with the new game version or with other updated mods. Record any automatic-update settings so the behavior is understood during rollback.

Check the new container’s logs

Follow startup output until the server has loaded the save and completed any migration. Look for missing or disabled mods, authentication failures, permission errors, and a save-load failure. Confirm the volume is mounted where the image expects it and that the save list is the same as before. A container that starts with an empty data directory is a configuration failure, not evidence that the backup is unnecessary.

Updating on a third-party host

A managed host can perform package and operating-system maintenance for you, but the data and compatibility responsibilities remain. The Factorio multiplayer documentation identifies the dedicated-server option as suitable for third-party hosted servers.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  1. Use the host’s documented update control rather than replacing files through an unsupported method.
  2. Download or export an independent copy of the save before pressing the update control.
  3. Confirm the exact target game version and whether the host will update, preserve, or replace mods.
  4. Verify that the host supports the same mod set your players use.
  5. After the host reports completion, inspect its version and log information, load the expected save, and join with one test client.

If the host does not expose a version pin, data export, or mod-management control, ask how to restore the previous build before scheduling the change. A managed panel can simplify updates, but it should not be your only copy of the world.

Validate the update before players reconnect

Validation should be a short, intentional test rather than a general announcement. Work through these checks in order:

  1. Confirm the build. Run factorio --version where the executable is available, or read the version shown in the server startup line. Confirm that it is the intended target, not an older binary left in the path.
  2. Confirm the world. Check that the expected map, researched technologies, player names, inventories, and server settings are present. A successful process start with the wrong save is still an operational failure.
  3. Confirm mods. Compare the server’s enabled mod list with the recorded list. Investigate every missing, disabled, or changed mod before inviting players.
  4. Check logs. Review startup and migration output for errors, warnings about permissions, failed data loads, or disabled content.
  5. Test with one client. Join from a client running exactly the same game version and mods. Enter the world, perform a few ordinary actions, and verify that saving and reconnecting work.
  6. Keep recovery material. Retain the pre-update executable or image and backup until the test session succeeds.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Why players cannot join after an update

Game-version mismatch

The most common compatibility failure is a client on a different Factorio build. Compare the server startup version with the client’s installed version and have every player select the same branch or build. Restarting the server without correcting the client version will not solve this mismatch.

Mod mismatch

Clients and server must also match on mods. A mod that updated automatically in Docker, was disabled during migration, or remained pinned by UPDATE_IGNORE can produce a different set from the one installed by players. Compare names and versions, then either update clients and server together or restore the previously compatible set.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Wrong or empty user-data path

If the server starts without the expected saves, it may be using a new data directory. Stop it and compare the startup path, volume mount, permissions, and server-settings location with your recorded configuration. Do not create a new world to work around the symptom; reconnect the intended user data or restore it from backup.

Save migration or load failure

Read the console and log for the first migration or loading error. Confirm that the required mods are present and that the account running the process can read the save and write the user-data directory. If the new build cannot load the world, stop testing with live data and use the rollback procedure.

Port or host configuration changes

If the server loads correctly but no client can reach it, compare the recreated container’s published ports or the managed host’s network settings with the pre-update record. In Docker, preserving the data volume does not automatically preserve a port mapping that was omitted when the container was recreated.

Rollback when validation fails

Rollback is a controlled return to the known-good executable or image and the pre-update data. Do not continue experimenting on the only copy of the save.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  1. Stop the failed server cleanly.
  2. Preserve the failed version’s logs so the cause can be diagnosed later.
  3. For a native installation, switch the service or startup command back to the previous executable directory. For Docker, recreate the container from the previously pinned image and the same host-mounted volume.
  4. If the update changed or migrated the save, restore the pre-update save and user-data backup rather than mixing files from both states.
  5. Restart with the recorded server-settings, map-settings, ports, and environment variables.
  6. Run the version, save, mod, and single-client checks again before reopening the server.

There is no single rollback script that applies to every operating system, container configuration, and managed host. The reliable common method is version pinning plus a known-good backup and a recorded startup configuration.

Choosing an update method

The right method depends less on Factorio itself than on how you want to persist data and control versions.

Method What you replace Where saves and configuration persist Version control Mod synchronization Rollback effort Operating-system maintenance
Native Linux or Windows package The extracted server installation and executable The existing user-data directory Keep versioned installation directories and select the startup path You manage the user-data mod set and client parity Usually low when the old directory and backup remain You maintain the host operating system and service
Docker The container and image A host-mounted volume; data only inside the container is lost when it is removed Pin or retain the previous image and reuse the same run or Compose configuration Manual, or automatic with UPDATE_MODS_ON_START=true; credentials are required for automatic updates Low when the old image and host backup are available You maintain Docker and the host while the image supplies the application layer
Managed third-party host The host’s managed server package or selected release Host-managed storage plus your independent export Depends on the host’s version-selection and rollback controls Depends on host support; verify the exact mod set Depends on the provider’s restore process, so keep your own backup The provider handles the platform according to its service

A repeatable maintenance record

For each update, keep one short record containing the date, old and target versions, save filename, backup location, mod list, startup command, settings-file paths, data-volume or user-data path, and the result of the test-client session. This record prevents small but consequential differences—such as a missing port mapping or an omitted settings option—from being lost between updates.

When the server is ready, announce the exact version and mod state players should use. If a player still cannot connect, ask for that client’s version and mod list before changing the server again. Keeping the server stable while comparing the two sides is safer than repeatedly replacing the installation.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Windows Errors? Fix Them Before They SpreadFree repair scan
Crashes, No Sound, or Screen Glitches?Free driver scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.