Game Servers
Minecraft server.properties Explained: Every Setting That Matters
Applies to: Minecraft server hosting
Every Minecraft server generates a server.properties file with around 50 settings — and most of them you will never touch. This guide covers the handful that actually matter for a typical server, what their defaults are, and the two rules people trip over: changes only apply after a restart, and online-mode should almost never be turned off.
01Open server.properties
The file lives in the server's root folder, next to the server jar, and is created on first launch. Stop the server before editing — Minecraft reads the file once at startup and writes it back on shutdown, so edits made while the server runs can be silently overwritten. Open it in any plain-text editor or your host's file manager; the format is one key=value pair per line, with no quotes and no spaces around the =.
02Set the gameplay basics
These four settings define what kind of server you are running:
- gamemode (default
survival) — the mode new players start in:survival,creative,adventure, orspectator. Pair it withforce-gamemode=trueif you want returning players switched back to it on every join. - difficulty (default
easy) —peaceful,easy,normal, orhard. Peaceful removes hostile mobs entirely; hard adds starvation death and tougher mobs. Sethardcore=trueinstead if you want one-life hardcore rules. - max-players (default
20) — the slot cap. Raising it costs nothing by itself; it is concurrent players plus view distance that consume RAM and CPU. - motd (default
A Minecraft Server) — the description shown in the multiplayer server list. Colour and formatting codes work via section-sign codes (many panels give you an MOTD editor so you do not have to escape them by hand).
03Tune view-distance and simulation-distance
These two are the biggest performance levers in the file, and they do different jobs:
view-distance=10
simulation-distance=10view-distance (default 10, in chunks) is how far the server sends terrain to each player — it mostly costs bandwidth and memory. simulation-distance (default 10) is how far the world actually runs: mobs move, crops grow, redstone ticks. Ticking chunks are what eat CPU, so on a struggling server drop simulation-distance to 6–8 first and leave view-distance high — players still see distant terrain, but the server is not simulating all of it. Setting view distance lower than simulation distance is pointless; the server treats simulation distance as capped by view distance.
04Control the world: seed, spawn protection and command blocks
- level-seed (blank by default) — sets the seed for world generation. Crucially, it only applies when a new world is generated; changing it does nothing to an existing world. To use a specific seed, set it, delete or rename the old world folder, and restart.
- spawn-protection (default
16) — the radius in blocks around spawn where only server operators can build or break. If new players report they “can't place blocks”, this is nearly always why. Set it to0to disable. - enable-command-block (default
false) — command blocks are inert until this istrue. Adventure maps and redstone contraptions that rely on them will quietly fail otherwise.
05Leave online-mode alone unless you know why
online-mode=true (the default) makes the server verify every joining player against Mojang's authentication servers. Setting it to false — “cracked” or “offline” mode — disables that check completely: anyone can join under any username, including the names of your operators, and player identities are no longer tied to real accounts. The only legitimate common reason to run offline mode is behind a proxy such as Velocity or BungeeCord, where the proxy handles authentication instead. If that is not your setup, leave it true.
06Restart the server to apply changes
server.properties is read once at startup. /reload does not re-read it, and neither does saving the file — a full stop and start is required for any change to take effect. Remember the second caveat from step 4: world-generation settings (level-seed, level-type, generate-structures) only affect chunks that have not been generated yet, so on an existing world they change new terrain at the edges, not what is already built.
Run it on HostPanel: our Minecraft server hosting plans expose all of these settings in the panel with a restart button one click away.
Troubleshooting
I changed a setting and nothing happened
Either the server was not fully restarted (step 6), or the file was edited while the server was running and got overwritten on shutdown. Stop the server, make the edit, start it again, and confirm the value survived in the file.
Players can't break or place blocks near spawn
That is spawn-protection doing its job — only ops can build inside the protected radius. Reduce it or set it to 0 if you do not want a protected spawn area.
I set level-seed but got a different world
The seed only applies to newly generated worlds. If a world folder already exists, the server keeps using it. Stop the server, rename or delete the old world folder (back it up first), then start again to generate fresh terrain from your seed.
