SteamCMD app_update validate Explained: When to Use It (and When Not)
What validate does in SteamCMD, why it can reset edited server files, how long it takes, and when to add it to app_update on a game server.
Updated Oct 7, 2026 · 5 min read
On this page
Adding validate to app_update tells SteamCMD to check every file of the server against Steam's official list and redownload anything missing, damaged or changed. It is the repair tool for a broken install. It is not needed for normal updates, it makes them much slower on big games, and it will quietly put back the default version of any file that ships with the server that you edited. Use it after a failed update or crash, not on every restart.
What validate actually does
Without validate, SteamCMD compares the build you have installed (from steamapps/appmanifest_<appid>.acf) with the latest build and downloads only the changed chunks. It trusts that your files match the build number on record.
With validate, it does not trust anything. It:
- Reads every file in the install that belongs to the app.
- Hashes each one and compares it with the hashes in the app's manifest.
- Redownloads any file that is missing or does not match.
- Leaves files that are not part of the app alone.
That last point matters. Validate does not delete extra files. Your world saves, logs, mods in their own folders and config files the game creates at first run are not in the manifest, so validate ignores them.
steamcmd +force_install_dir /home/steam/7dtd +login anonymous +app_update 294420 validate +quit
The trap: edited files that ship with the server
Some servers ship their config file as part of the download. If you edit that file in place, validate sees it as "changed" and replaces it with the default. Your edits vanish, and the server comes back up with stock settings.
Well known examples:
| Game | File that ships with the server | Safer approach |
|---|---|---|
| 7 Days to Die | serverconfig.xml |
Copy it to a new name and launch with -configfile=myconfig.xml |
| Source games (CS2, TF2, Garry's Mod) | Files under cfg/ that ship with the game |
Put your settings in your own server.cfg or a new .cfg file |
| DayZ | serverDZ.cfg |
Copy to a new name and point -config= at it |
The 7 Days to Die case is the one people hit most: after a validate, the server name, password and world settings reset to defaults. That is why experienced 7 Days to Die admins keep their settings in a renamed copy. Our 7 Days to Die settings guide covers it in detail.
Files the game creates the first time it runs, like ARK's GameUserSettings.ini in Saved/Config or Palworld's PalWorldSettings.ini, are not in the manifest and survive a validate.
When you should use validate
- First install. Some people always add it here. It does no harm, since every file is new anyway.
- After a failed or interrupted update. If SteamCMD reported 0x402, 0x602 or a disk write failure, run one update with validate to make sure nothing is half written.
- The server crashes on startup after an update with errors about missing or corrupt files,
.pakfiles, or assemblies. - Players get version mismatch errors even though the server reports the right build. Validate rules out a partly updated install. See version mismatch fixes.
- You removed a mod framework that replaced game files, like Oxide or Carbon on Rust, BepInEx on Valheim, or a modded DLL, and want to get back to vanilla files.
When you should not use validate
- On every scheduled restart. On a 30 GB server it means reading and hashing 30 GB every time, which slows restarts and wears the disk for no gain.
- When you have edited shipped files and have not moved your settings somewhere safe.
- When a mod framework patches game files and you want to keep it. Validate will undo the patch. Rust's Oxide, for example, replaces files in
RustDedicated_Data/Managed, and a validate swaps them back to vanilla. Reinstall the framework after any validate.
How long validate takes
It depends on the size of the server and the speed of the disk, because the work is reading every file. Small servers like Valheim or Terraria finish in well under a minute on an SSD. Big ones like ARK: Survival Ascended, DayZ or Rust can take several minutes, longer on spinning disks or busy VPS storage. The output shows Update state (0x5) verifying install while it is checking files.
Validate vs deleting the appmanifest
Deleting steamapps/appmanifest_<appid>.acf is a stronger reset. It makes SteamCMD forget what build it thinks is installed. Use it when SteamCMD is stuck on a state error and validate alone does not clear it. You then run app_update <id> validate to rebuild the record. Neither touches your saves.
Validate vs reinstalling
A full reinstall (deleting the server folder) is almost never needed. Validate fixes the program files, and a reinstall throws away your config and world for no extra benefit unless you back them up first. If you do go down that road, use our guide on how to back up a game server.

A sensible update routine
- Stop the server.
- Back up the world and config.
- Run
app_update <id>without validate. - Start the server and read the console.
- Only if something is broken, stop it and run
app_update <id> validate. - Reinstall any mod framework that patches game files.
The low effort option
If you want updates without thinking about flags and manifests, a GamezServers server keeps your settings in the control panel based on the game's server template, gives you one click backups before you change anything, and lets you get at every file with the file manager or SFTP. It works the same for Valheim, Rust and the rest of our games.
FAQ
Does SteamCMD validate delete my world?
No. Saves are not part of the app's file list, so validate does not check or touch them. It only repairs files that came with the server download.
Does validate remove mods?
It does not delete files that are not part of the game, so mods in their own folders stay. It does undo changes to game files, so frameworks that patch the game, like Oxide on Rust, need reinstalling afterwards.
Why did my server settings reset after an update?
The update probably ran with validate, and your settings were in a config file that ships with the server, like 7 Days to Die's serverconfig.xml. Keep settings in a renamed copy.
Should I use validate for every update?
No. Use it after a failure or when something seems broken. Normal updates only need app_update <id>.
Want a server without the setup?
From75¢
Pick a game, pay, play. Live the moment checkout finishes.