Short answer
Everything vanilla is set in server.properties: view and simulation distance, whitelist, difficulty, gamemode, the port and the world name. Change it with the server stopped, restart, and read the console, which lists any key it had to reset.
Vanilla gives you one settings file and no configuration layer above it. That is its appeal and its limit: the settings that forks spend pages documenting do not exist here, so what you can tune is what Mojang exposed, and knowing which keys matter is the whole job.
This guide walks server.properties key by key in the order you are likely to need it, covers the other files Mojang writes beside it, and explains the one behaviour of the file that surprises people: it is regenerated on every start.
Before you start
- File access to the server folder
- The server stopped while you edit
- A backup of the world before changing
level-name
1. Understand how server.properties behaves
The file is written the first time the server starts, and rewritten on every start afterwards. Existing values are copied across; missing keys and unparseable values are replaced with defaults. Comments are dropped when it is rewritten.
That means a typo in a key name does nothing, silently, and a value the server cannot parse is quietly reset. The console prints the settings it loaded at startup, so check that line rather than assuming your edit took.
#Minecraft server properties
#Thu Oct 15 12:31:04 UTC 2026
accepts-transfers=false
allow-flight=false
...2. Set the keys that change how the server feels
view-distance and simulation-distance both default to 10 and both range from 3 to 32. View distance decides how much world the server sends; simulation distance decides how far away entities keep moving. On a small server, 6 or 8 is the difference between comfortable and not, and players rarely notice.
The rest of the keys you will touch: difficulty (peaceful, easy, normal, hard), gamemode, max-players, pvp, spawn-protection, motd and white-list. Set white-list=true for a private server so strangers cannot join while you decide.
view-distance=6
simulation-distance=6
difficulty=normal
gamemode=survival
max-players=10
spawn-protection=16
white-list=false
motd=A Minecraft Serverview-distanceandsimulation-distanceaccept 3 to 32. The wiki recommends reducingsimulation-distanceif players report lag.spawn-protectionis the side length of the protected square as2x+1, so 16 protects a 33-block square. It is not written to the file until the first player joins.pvp=falsedisables player damage, which is the setting most event servers change.max-playersis a limit, not a reservation. Values far above what your hardware can run produce a server nobody can play on.
3. Set the network keys, and leave server-ip alone
server-port is the TCP port the server listens on, defaulting to 25565, and it must be forwarded if the server is behind a home router. enable-query and enable-rcon expose extra interfaces; both default to off and both should stay off unless something needs them, since query carries no authentication.
server-ip should stay empty. An empty value means the server listens on every interface, which is what you want. Setting it to a specific address is a common way to break a working server.
online-mode defaults to true and should stay true: it checks every joining player against the account database. Turning it off is what "cracked" means, and it lets anyone with any name join as that name.
server-port=25565
server-ip=
online-mode=true
enable-query=false
enable-rcon=false
sync-chunk-writes=true4. Know the other files Mojang writes
Three files beside server.properties matter to an administrator. ops.json lists operators, whitelist.json lists allowed players, and banned-players.json and banned-ips.json hold bans. All four are JSON, all four are read at startup, and all four are better edited through the commands that manage them, because the commands keep the in-game state and the file in step.
The world folder is the world itself: level.dat for the metadata, region for chunks, playerdata for inventories and positions, datapacks for data packs and stats for player statistics. Back it up as one piece. Backing up covers what a usable backup contains.
/whitelist add SomePlayer
/op SomePlayer
/ban SomePlayer Griefing5. Restart and read what the server loaded
Start the server and read the console. It lists the settings it parsed, and any value it had to replace appears with its default. If a change you made is not reflected there, the key name or the value format is wrong.
Then join and check the three things players notice first: how far they can see, whether they spawn somewhere sensible, and whether the rules match what you intended. Configuration errors are cheap to fix on day one and expensive to discover later.
Good to know
- Vanilla has no per-world configuration. Every setting in this file applies to every world on the server, which is one of the reasons forks exist.
pause-when-empty-seconds(default 60) pauses the server when nobody is online. It saves CPU on a machine you share with other work, and on a hosting panel it may already be handled for you.- Mods that require a loader are a different configuration surface entirely. The settings here are the vanilla ones and do not describe a Forge, Fabric or NeoForge server.
- Vanilla vs Paper covers what you give up by staying on the stock server, and fixing vanilla lag covers the problems you cannot tune away.
Common questions
Where is the vanilla server configuration file?
server.properties, in the folder the server JAR runs from. Mojang writes it on first start and rewrites it on every start, keeping your values and resetting anything it cannot parse.
Why did my server.properties changes disappear?
You edited it while the server was running and it was rewritten on shutdown or restart. Stop the server, edit, and start it again. Also check the console line listing loaded settings to confirm the key name is exactly right.
What view distance should a small server use?
Six to eight. Both view and simulation distance default to 10 and accept 3 to 32; on one core the difference is visible and most players do not notice the lower value once fog and their own render settings are in play.
Can I use Paper plugins on a vanilla server?
No. Plugins need the Bukkit, Spigot or Paper API, which the vanilla server does not implement. Switch the server software to Paper, which reads your existing world unchanged.
Sources
Official documentation this guide was checked against.
Rather not run this on your own machine? PufferHost gives every player a free Minecraft server with 3 GB of RAM and 10 slots. Create a free server.