Pay for twenty-four months and save 17% or moreOn every plan, pick the 24-month term when you order
Skip to main content

server.properties, every setting explained

All 63 keys a Minecraft server reads out of this file, with what each one does, the value it starts on, and what you are allowed to put in it. Grouped by what they change rather than alphabetically, because nobody has ever looked one up alphabetically.

All 63 Minecraft server.properties settings, grouped into 6 categories

Three things worth knowing before you scroll

The file is read once, when the server starts. Every one of these 63 takes effect on the next boot and not a moment earlier, so an edit that seems to do nothing has almost always just not been restarted.

A key the server does not recognise is ignored rather than rejected. 11 of these arrived with a specific release, which is why a 1.16.5 server knows 52 of them and a 1.21.4 server knows 63. Nothing goes wrong if you leave a newer line in an older file.

The last column says who may change it. 39 are free to change, 4 decide which world loads, and 20 decide who reaches your server at all. That grouping is not advice, it is the same rule our panel and our AI assistant run on.

How the game plays

The settings people come looking for first. Every one of them changes what a player notices the next time they log in.

Minecraft server.properties settings that change how the game plays
SettingDefaultValuesWho may change it
difficultyHow hard the game is. On peaceful, hostile mobs do not spawn at all and hunger does not drain.easypeaceful, easy, normal, hardFree to change
gamemodeThe mode a player starts in the first time they join.survivalsurvival, creative, adventure, spectatorFree to change
force-gamemodePut every player back in the default gamemode each time they join, instead of remembering what they were in.falsetrue or falseFree to change
hardcoreDeath is permanent: a player who dies is put in spectator and cannot respawn. Turning this on affects everyone.falsetrue or falseFree to change
pvpWhether players can damage each other.truetrue or falseFree to change
max-playersHow many people can be online at the same time. More players need more RAM and more CPU, not just a bigger number here.201 to 500Free to change
player-idle-timeoutKick a player after this many minutes of doing nothing. 0 never kicks.00 to 1440Free to change
spawn-animalsWhether passive animals such as cows and sheep spawn in the world.truetrue or falseFree to change
spawn-monstersWhether hostile mobs spawn. Off is not the same as peaceful: mobs from spawners and eggs still appear.truetrue or falseFree to change
spawn-npcsWhether villagers spawn in villages.truetrue or falseFree to change
spawn-protectionRadius in blocks around spawn where only operators may build. 0 turns it off.160 to 512Free to change
allow-flightAllow players to fly in survival. Leave this off unless a mod or plugin needs it, because the built-in anti-cheat kicks flying players.falsetrue or falseFree to change
allow-netherWhether the Nether can be entered. Turning it off strands anyone who is in there.truetrue or falseFree to change
enable-command-blockAllow command blocks to run. They are the building block behind most map mechanics, and they can also run any command an operator can.falsetrue or falseFree to change

What the server spends its time on

These decide how much work the server does per tick. They are also the first place to look when a server feels slow, because two of them (view distance and simulation distance) cost more than everything else on this page put together.

Minecraft server.properties settings that change what the server spends its time on
SettingDefaultValuesWho may change it
view-distanceHow far, in chunks, the server sends the world to a player. This is the single biggest knob for both RAM and CPU: every step up costs roughly the square of it.102 to 32Free to change
simulation-distanceHow far, in chunks, the world actually ticks: mobs move, crops grow, redstone runs. Keep it at or below view distance. Exists from 1.18.0 onwards.102 to 32Free to change
entity-broadcast-range-percentageHow far away entities are still sent to players, as a percentage of the normal range. Lower means less network and less client lag in busy farms.10010 to 1000Free to change
max-tick-timeHow many milliseconds one tick may take before the server kills itself. Modded servers need a high value or a slow chunk load counts as a crash; -1 turns the watchdog off.60000-1 to 600000Free to change
sync-chunk-writesWrite each chunk to disk before continuing. Safer after a hard crash, noticeably slower on a busy server.truetrue or falseFree to change
use-native-transportUse the operating system's optimised network path on Linux. Leave this on.truetrue or falseFree to change
network-compression-thresholdPackets larger than this many bytes are compressed. -1 turns compression off, which is only sensible when everything runs on one machine.256-1 to 65536Free to change
max-chained-neighbor-updatesCap on how long a redstone chain reaction may run before the server cuts it off. This is what stops one contraption from freezing the server. Exists from 1.19.0 onwards.10000001 to 10000000Free to change
pause-when-empty-secondsStop ticking the world after this many seconds with nobody online. Saves a lot of CPU on a quiet server; farms and timers also stop. Exists from 1.21.2 onwards.600 to 86400Free to change
region-file-compressionHow the world files are packed on disk. lz4 is faster to read and write, deflate is smaller. Exists from 1.20.5 onwards.deflatedeflate, lz4, noneFree to change
rate-limitKick a player who sends more than this many packets per second. 0 turns it off, which is the default.00 to 5000Free to change
max-world-sizeThe furthest the world may generate, in blocks from spawn. A smaller number keeps the world file from growing without end.299999841 to 29999984Free to change

Which world loads

These pick the world, not the rules inside it. Change one of the first four and the old world is still on the disk, it just is not the one that loads any more.

Minecraft server.properties settings that change which world loads
SettingDefaultValuesWho may change it
level-nameThe folder the world is loaded from. Changing this loads a different world, or generates a new one.worldtextWorld
level-seedThe seed new terrain is generated from. It only has an effect on land that does not exist yet.emptytextWorld
level-typeThe kind of terrain that gets generated: normal, a flat world, large biomes, amplified.minecraft:normalminecraft:normal, minecraft:flat, minecraft:large_biomes, minecraft:amplified, minecraft:single_biome_surfaceWorld
generator-settingsJson that fine-tunes the generator, mostly used for superflat layers.{}textWorld
generate-structuresWhether villages, temples and other structures appear in newly generated land.truetrue or falseFree to change
initial-enabled-packsWhich datapacks are on when the world is first created. Exists from 1.19.3 onwards.vanillatextFree to change
initial-disabled-packsWhich datapacks are off when the world is first created. Exists from 1.19.3 onwards.emptytextFree to change

What players see before they join

The line in the server list, and the resource pack the client is asked to download. These are the only settings on this page a player can see without being on the server.

Minecraft server.properties settings that change what players see before they join
SettingDefaultValuesWho may change it
motdThe line under your server name in the multiplayer list. Colour codes with the section sign work here.A Minecraft ServertextFree to change
enable-statusAnswer the ping that shows your player count and MOTD in the multiplayer list. Off makes the server look offline to everyone.truetrue or falseFree to change
hide-online-playersLeave the sample of online player names out of the server list answer.falsetrue or falseFree to change
resource-packA direct link to a resource pack that players are offered when they join.emptytextFree to change
resource-pack-promptThe message shown in the resource pack dialog.emptytextFree to change
resource-pack-sha1The sha1 of the pack file, so clients can cache it and check it downloaded whole.emptytextFree to change
resource-pack-idA uuid identifying the pack, so a client can replace an older version of the same pack. Exists from 1.20.3 onwards.emptytextFree to change
require-resource-packDisconnect players who decline the resource pack. Only useful with a working pack link.falsetrue or falseFree to change
bug-report-linkA link shown to players on the crash screen. Exists from 1.20.4 onwards.emptytextFree to change

How much power an operator gets

Two numbers and a switch that decide what someone with operator rights can actually do.

Minecraft server.properties settings that change how much power an operator gets
SettingDefaultValuesWho may change it
op-permission-levelHow much power an operator gets, from 1 (spawn protection bypass) to 4 (everything, including /stop).41 to 4Security
function-permission-levelThe permission level datapack functions run at.21 to 4Security
broadcast-console-to-opsShow output of commands run from the console to operators in chat.truetrue or falseFree to change

Who gets in, and over which ports

The ones that decide who reaches your server at all. Read them, understand them, and change them deliberately: a wrong value here does not make the game worse, it makes the server open.

Minecraft server.properties settings that change who gets in, and over which ports
SettingDefaultValuesWho may change it
online-modeCheck every player against Mojang, so nobody can join under someone else's name.truetrue or falseSecurity
white-listOnly players on the list may join.falsetrue or falseSecurity
enforce-whitelistKick players who are already online but not on the whitelist.falsetrue or falseSecurity
enforce-secure-profileRequire players to have a signed chat profile.truetrue or falseSecurity
prevent-proxy-connectionsRefuse players whose connection comes from a different country than their Mojang session.falsetrue or falseSecurity
enable-rconOpen a remote console port.falsetrue or falseSecurity
rcon.portThe port the remote console listens on.255751 to 65535Security
rcon.passwordThe password for the remote console.emptytextSecurity
broadcast-rcon-to-opsShow remote console output to operators.truetrue or falseSecurity
enable-queryAnswer status queries on a separate udp port.falsetrue or falseSecurity
query.portThe port for status queries.255651 to 65535Security
server-ipWhich address the server listens on. Ours must stay empty so the container can route it.emptytextSecurity
server-portThe port the server listens on. Ours is fixed to the port in your play address.255651 to 65535Security
log-ipsWrite player ip addresses to the log. Exists from 1.20.2 onwards.truetrue or falseSecurity
enable-jmx-monitoringExpose java metrics over a monitoring port.falsetrue or falseSecurity
text-filtering-configA link to an external chat filtering service.emptytextSecurity
text-filtering-versionWhich version of the filtering protocol to speak. Exists from 1.21.0 onwards.00 to 10Security
accepts-transfersAllow players to be sent here from another server by a transfer packet. Exists from 1.20.5 onwards.falsetrue or falseSecurity

The 20 our assistant will never change for you

Every setting marked Security above is readable and explainable by the AI Copilot in the panel, and unwritable by it in every mode, whatever you ask and however you phrase it. They are the ones that decide who gets in rather than what happens once they are in: account checking, the whitelist and its enforcement, the remote console and its port, the query listener, the address and port the server binds to, and the permission levels. For those it names the tab where you do it yourself, in one place, deliberately. It is the only part of the panel where we made the assistant less capable on purpose. The security check goes through the same list and reports what it finds without changing any of it.

Questions about server.properties

Where is the server.properties file?

In the root of your server, next to the world folder, and the game writes it the first time the server starts. On a hosted server you almost never open it by hand: the Settings tab shows the same keys as labelled fields with their allowed values, which is the difference between typing true in the wrong place and picking it from a list.

Do I have to restart after changing something?

Yes, for all 63 of them. The file is read once when the server starts, so an edit sits there doing nothing until the next boot. A few plugins can change some of the same values at runtime, but the file itself only ever takes effect on a restart, and anything that says otherwise is talking about a plugin and not about this file.

Which settings actually fix lag?

View distance and simulation distance, in that order, and it is not close. View distance decides how many chunks get sent to each player and simulation distance how many of them actually tick, so both scale with the square of the number and with the number of players at the same time. Dropping view distance from 10 to 8 removes about a third of the chunk work per player. Nothing else in this file comes near that.

Why are 20 of them marked Security?

Because they decide who reaches your server rather than what happens inside it: account checking, the whitelist, the remote console and its port, the query port, the bind address and the permission levels. Our AI Copilot reads and explains all 20, and it is not allowed to change any of them, in any mode, however you ask. A chatbot that turns account checking off by accident turns a private server into an open door, and that is not something an undo button repairs.

What does online-mode actually do?

It decides whether the server checks each joining player against Mojang, which is what ties a player to an account and gives them a stable identity. With it off, anyone can connect claiming any username, so bans, permissions, homes, land claims and inventories all hang on a name that nobody verified. It exists for servers behind a proxy that does the checking instead. If you are not running that proxy, leave it on.

Why does my file not have all of these lines?

Because 11 of them arrived with a particular release. A 1.16.5 server knows 52 of these keys and a 1.21.4 server knows 63. Adding a line the server does not recognise does nothing at all: it stays in the file and the game ignores it. Missing lines are the same story in reverse, and the server writes in whatever it expects the next time it starts.

What happens if I change level-name or level-seed?

Nothing is deleted, and that is the part people get wrong in both directions. These 4 keys pick which world loads, so changing one starts a different world and leaves the old one sitting on the disk under its old folder name. Change it back and your world is exactly where you left it. Changing level-seed on a world that already exists does nothing to the terrain that has been generated, only to whatever gets generated after it.

Can I break my server by editing this file?

You can stop it from starting, and you cannot lose a world with it. A value outside its range or a misspelled key usually gets replaced by the default on the next boot, but a bad port or bind address will keep the server from coming up at all, which reads as a crash and is not one. Take a backup first anyway: it costs one click and it is the only thing on this page that undoes everything at once.

Where to go from here

The panel these settings live in All 510 plugins we install in one click Fixing a server that runs badly How much RAM you actually need Changing the Minecraft version Rights for your staff The AI security check Backups, before you change anything What a server costs

Every row on this page is read from the same list our panel and our AI assistant use, so the defaults, the ranges and the version limits here are the ones the product actually enforces rather than a second copy that can drift. Written 1 September 2026, covering all 63 keys.