server.properties Explained: The Settings That Matter

Server Guides

The server.properties settings you will actually change, with defaults for Minecraft 26.3, what each one does, sensible values and the settings that became game rules.

server.properties is the main settings file of every Java Edition server. It decides who can join, how hard the game is, how far players can see and a lot more.

It has dozens of settings, but most owners only ever touch a handful. In this guide, we will cover the settings people actually change, with the default value, what each one does and a sensible value to start with. We will also cover the settings that moved out of the file into game rules, and a few traps.

By the end of this guide, you will know which lines to change for your server and which ones to leave alone.

How to Edit server.properties

  • The file is in your server's main folder. It is created the first time the server starts.
  • Each line is setting=value, for example max-players=10. Lines starting with # are comments.
  • The server reads the file when it starts, so edit it while the server is stopped, or restart after saving.
  • Some settings only affect new worlds or new chunks: level-seed, level-type, generate-structures and hardcore.

The defaults below are for Java Edition 26.3, taken from the Minecraft Wiki. The "recommended" column is a common starting point, not a rule. Bedrock Dedicated Server has its own server.properties with different settings (it calls the whitelist allow-list, for example). See Bedrock or Java if you are not sure which you run.

Players and Access

SettingDefaultWhat it doesRecommended
motdA Minecraft ServerThe text under your server's name in the server listYour server name and one short line about it
max-players20How many players can be online at onceWhat your RAM and CPU can handle
white-listtrue (26.3+), false beforeOnly players on the whitelist (and ops) can jointrue for private servers
enforce-whitelistfalseKicks online players who are not on the list when the whitelist reloadstrue with the whitelist on
online-modetrueChecks every player's account with Mojangtrue
op-permission-level4The level /op gives (1 to 4)4, and op only yourself

For max-players, read How Much RAM Does a Minecraft Server Need? before picking a big number.

The white-list default changed in 26.3 (source). It only applies when a new file is created. An existing server keeps the value already in its file.

Turning online-mode off lets anyone join with any name, including yours. The only normal reason to turn it off is a backend server behind a Velocity proxy, which checks accounts itself (source). See What Is Velocity? and How to Protect Your Minecraft Server. For whitelists and op levels in detail, read Whitelist, Ops and Permissions.

Gameplay

SettingDefaultWhat it doesRecommended
difficultyeasypeaceful, easy, normal or hardnormal or hard for survival
gamemodesurvivalThe game mode new players start insurvival
force-gamemodefalsePuts players back in the default mode every time they jointrue for creative or adventure servers
hardcorefalseHardcore mode for newly created worldsfalse, unless every player agrees
allow-flightfalseAllows flying in survival with mods or plugins. When off, players floating for 5 seconds or more get kicked.true on modded servers with jetpacks or flying items
spawn-protection16Non-ops can't build near spawn. 0 turns it off.16, or 0 if a plugin protects spawn

Spawn protection covers a square with sides of 2 × value + 1 blocks, so the default 16 protects 33 by 33 blocks. It is turned off automatically if your server has no ops at all.

World Generation

SettingDefaultWhat it doesRecommended
level-nameworldThe world folder to load or createChange only on purpose
level-seed(blank)The seed for a new world. Blank means random.Blank, or a seed you like
level-typeminecraft:normalThe world preset: normal, flat, large_biomes, amplified or single_biome_surfaceminecraft:normal
generate-structurestrueVillages, temples and other structures in new chunkstrue

Changing level-name doesn't delete your old world. The server simply loads, or creates, a different folder. Change it back and your old world returns.

Performance

SettingDefaultWhat it doesRecommended
view-distance10How many chunks around each player are sent to their game (3 to 32)7 on small servers
simulation-distance10How many chunks around each player are ticked: mobs, crops, furnaces (3 to 32)4 to 6 on small servers
network-compression-threshold256Packets bigger than this (in bytes) are compressed. -1 turns it off.256
max-tick-time60000Milliseconds one tick may take before the watchdog stops a frozen server60000
pause-when-empty-seconds60Seconds without players before the server pauses60, or -1 while pre-generating

View and simulation distance have the biggest effect on performance. The suggested values come from a popular community optimization guide, which suggests 7 and 4 as starting points. Players still see 7 chunks of terrain, but the server only runs mobs and farms in the closest few. For more, read How to Fix Minecraft Server Lag.

For pre-generating with Chunky, set pause-when-empty-seconds to -1, as covered in How to Pre-Generate Your Minecraft World.

Paper logo Paper ignores max-tick-time

Paper and Spigot turn off the vanilla watchdog and use their own. On those servers, max-tick-time does nothing. The timeout is settings.timeout-time in spigot.yml, in seconds (source, spigot.yml docs).

Network

SettingDefaultWhat it doesRecommended
server-port25565The TCP port players connect to25565 at home. On a host, leave the port it gave you.
enable-rconfalseRemote console access with a passwordfalse unless you need it

RCON traffic is not encrypted, and anyone with the password can run any command. If you turn it on, use a long random rcon.password.

Settings That Moved to Game Rules

Older guides still tell you to set pvp or enable-command-block in this file. Since Minecraft 1.21.9, four settings are game rules instead (source), and the rules were renamed in 1.21.11 (source).

Old settingGame rule on 26.xDefault
pvppvptrue
enable-command-blockcommand_blocks_worktrue
spawn-monstersspawn_monsterstrue
allow-netherallow_entering_nether_using_portalstrue

Change them in the console (or in game as an op with level 2), and they are saved with the world:

gamerule pvp false
gamerule command_blocks_work false

On Paper, game rules are kept per world (source), so set them in the Nether and the End too, for example execute in minecraft:the_nether run gamerule pvp false.

Note that command blocks now work by default. Only ops with level 2 or higher can place or edit them, but if you don't use them, turning the rule off removes the risk. On 1.21.8 and older, these four are still in server.properties.

Example: A Small Private Survival Server

motd=Steve and friends survival
max-players=10
difficulty=normal
gamemode=survival
white-list=true
enforce-whitelist=true
online-mode=true
view-distance=7
simulation-distance=5
spawn-protection=16

Editing It on EternalZero

On EternalZero, the Properties Editor lists every setting with a short explanation, warns you before you change risky ones like online-mode or server-port, and saves the file for you. Restart the server after saving so the changes apply.

Wrapping Up

Most servers only need a few changes: a clear motd, the right max-players, the whitelist for private servers, and lower view and simulation distances on small plans. Leave online-mode and server-port alone, and use game rules for PvP and command blocks.

Change one thing at a time and restart, so you always know which setting made the difference.