---
title: "server.properties Explained: Every Minecraft Server Setting"
description: "Every important server.properties setting explained: port, motd, gamemode, difficulty, view distance, whitelist, online-mode, RCON, resource packs and more."
url: "https://www.zcraftstudios.com/blog/minecraft-server-properties-explained"
updated: "2026-10-29T01:53:09.929688+00:00"
source: "ZCraft Studios"
---

> Site index for AI agents: https://www.zcraftstudios.com/llms.txt (full reference: https://www.zcraftstudios.com/llms-full.txt). Every page is available as Markdown by adding `.md` to its URL or sending `Accept: text/markdown`.

1. [Home](https://www.zcraftstudios.com/)
2. [Blog](https://www.zcraftstudios.com/blog)
3. server.properties Explained: Every Minecraft Server Setting

[ All posts](https://www.zcraftstudios.com/blog)

# server.properties Explained: Every Minecraft Server Setting

ZCraft StudiosOct 29, 2026

Every important server.properties setting explained: port, motd, gamemode, difficulty, view distance, whitelist, online-mode, RCON, resource packs and more.

## In this guide

- [How to edit server.properties](#how-to-edit-serverproperties)
- [Connection and access](#connection-and-access)
- [Gameplay](#gameplay)
- [World generation](#world-generation)
- [Performance](#performance)
- [Admin, RCON and queries](#admin-rcon-and-queries)
- [Resource packs and data packs](#resource-packs-and-data-packs)
- [Security and chat](#security-and-chat)
- [Common mistakes](#common-mistakes)
- [Frequently asked questions](#frequently-asked-questions)
- [Related reading](#related-reading)

## server.properties Explained: Every Minecraft Server Setting

**Quick answer:** `server.properties` is the main settings file of a Minecraft Java server. It sits in the server folder, is created on first start, and is read when the server starts. Stop the server, edit the file, then start it again. The most important settings are `server-port`, `motd`, `max-players`, `gamemode`, `difficulty`, `white-list`, `online-mode`, `view-distance` and `simulation-distance`.

_Defaults below are the usual vanilla defaults and can change between versions. For the current list on Paper, see the [Paper server.properties reference](https://docs.papermc.io/paper/reference/server-properties/)._

## How to edit server.properties

1. Stop the server with `stop`, so it does not overwrite your changes on exit.
2. Open `server.properties` in a plain text editor. Do not use a word processor.
3. Change one setting per line, in the form `key=value`, with no spaces around the `=`.
4. Save the file and start the server.
5. Check the console for warnings and test the change.

On a hosting panel, use the file manager or a config editor. See [Minecraft Server Files Explained](https://www.zcraftstudios.com/blog/minecraft-server-files-folders-explained) for the other files in the folder.

## Connection and access

| Setting                   | Default            | What it does                                                                                              |
| ------------------------- | ------------------ | --------------------------------------------------------------------------------------------------------- |
| server-port               | 25565              | The port players connect to. See [Port 25565 Not Working](https://www.zcraftstudios.com/blog/minecraft-server-port-25565-not-working)  |
| server-ip                 | empty              | Binds the server to one IP. Leave empty unless you know why                                               |
| max-players               | 20                 | Player limit                                                                                              |
| motd                      | A Minecraft Server | The text in the server list. See [MOTD and Icon Setup](https://www.zcraftstudios.com/blog/minecraft-server-motd-icon-setup)            |
| online-mode               | true               | Verifies accounts with Mojang. See [Authentication Models](https://www.zcraftstudios.com/blog/minecraft-server-authentication-methods) |
| white-list                | false              | Only listed players can join. See [Whitelist Not Working?](https://www.zcraftstudios.com/blog/minecraft-server-whitelist-not-working)  |
| enforce-whitelist         | false              | Kicks non-whitelisted players when the whitelist reloads                                                  |
| hide-online-players       | false              | Hides the player list in the server list                                                                  |
| enable-status             | true               | Lets the server appear in the multiplayer list                                                            |
| prevent-proxy-connections | false              | Blocks players connecting through some proxies or VPNs                                                    |
| accept-transfers          | false              | Allows transfer packets from other servers                                                                |

On a proxy network, backends usually use `online-mode=false` behind a secured proxy. Read [Velocity Modern Forwarding Setup](https://www.zcraftstudios.com/blog/velocity-modern-forwarding-setup-checklist) before changing it.

## Gameplay

| Setting                   | Default  | What it does                                                          |
| ------------------------- | -------- | --------------------------------------------------------------------- |
| gamemode                  | survival | Default game mode for new players                                     |
| force-gamemode            | false    | Resets players to the default mode on join                            |
| difficulty                | easy     | peaceful, easy, normal or hard                                        |
| hardcore                  | false    | One life, with bans on death                                          |
| pvp                       | true     | Player vs player damage                                               |
| allow-flight              | false    | Allows flying clients. Anti-cheat usually needs this on for some mods |
| spawn-protection          | 16       | Radius around spawn that non-operators cannot edit                    |
| allow-nether              | true     | Enables the Nether                                                    |
| enable-command-block      | false    | Enables command blocks                                                |
| player-idle-timeout       | 0        | Minutes before idle players are kicked, 0 disables                    |
| op-permission-level       | 4        | Permission level given to operators                                   |
| function-permission-level | 2        | Level used by datapack functions                                      |

`op-permission-level` ranges from 1 to 4, with 4 giving full control. For ranks and permissions, use a plugin instead of making everyone an operator. See [LuckPerms Setup Guide](https://www.zcraftstudios.com/blog/luckperms-ranks-setup-guide).

## World generation

| Setting                                   | Default           | What it does                                                                                                               |
| ----------------------------------------- | ----------------- | -------------------------------------------------------------------------------------------------------------------------- |
| level-name                                | world             | Name of the world folder                                                                                                   |
| level-seed                                | empty             | Seed, used only when the world is first created. See [Can You Change a Seed?](https://www.zcraftstudios.com/blog/minecraft-seed-existing-server-change) |
| level-type                                | minecraft:normal  | World type. See [level-type and World Types](https://www.zcraftstudios.com/blog/minecraft-level-type-world-types-server)                                |
| generator-settings                        | {}                | Extra settings, mainly for superflat                                                                                       |
| generate-structures                       | true              | Villages, temples and other structures                                                                                     |
| max-world-size                            | 29999984          | Maximum radius of the world border                                                                                         |
| spawn-monsters, spawn-animals, spawn-npcs | varies by version | Older toggles, now controlled mostly by gamerules and Paper config                                                         |

Changing world generation settings after the world exists does not regenerate existing chunks. On Minecraft 26.1 and newer the world storage layout changed. See [Update a Minecraft Server to 26.1+](https://www.zcraftstudios.com/blog/minecraft-26-1-server-update-guide).

## Performance

| Setting                           | Default | What it does                                                                                 |
| --------------------------------- | ------- | -------------------------------------------------------------------------------------------- |
| view-distance                     | 10      | How many chunks players receive around them                                                  |
| simulation-distance               | 10      | How far from players the world is simulated                                                  |
| entity-broadcast-range-percentage | 100     | How far entities are sent to players                                                         |
| network-compression-threshold     | 256     | Packet size at which compression starts                                                      |
| max-tick-time                     | 60000   | Milliseconds before the watchdog stops a frozen server, \-1 disables                         |
| sync-chunk-writes                 | true    | Synchronous chunk writes. See [sync-chunk-writes](https://www.zcraftstudios.com/blog/sync-chunk-writes-server-properties) |
| max-chained-neighbor-updates      | 1000000 | Limits chains of block updates                                                               |
| use-native-transport              | true    | Uses optimized networking on Linux                                                           |
| pause-when-empty-seconds          | 60      | Pauses the server when no players are online, on versions that have it                       |

Lowering `view-distance` and `simulation-distance` is the fastest way to cut load. See [Fix Minecraft Server Lag](https://www.zcraftstudios.com/blog/reduce-minecraft-server-lag) and [TPS vs Ping vs FPS](https://www.zcraftstudios.com/blog/minecraft-server-tps-vs-ping-vs-fps). Paper has its own per-world options. See [PaperMC Config Files Explained](https://www.zcraftstudios.com/blog/minecraft-paper-configuration-files-explained).

## Admin, RCON and queries

| Setting                  | Default | What it does                            |
| ------------------------ | ------- | --------------------------------------- |
| enable-rcon              | false   | Enables remote console                  |
| rcon.port                | 25575   | RCON port                               |
| rcon.password            | empty   | RCON password. Use a long, unique value |
| broadcast-rcon-to-ops    | true    | Shows RCON commands to operators        |
| broadcast-console-to-ops | true    | Shows console commands to operators     |
| enable-query             | false   | Enables the GameSpy4 query protocol     |
| query.port               | 25565   | Query port                              |
| log-ips                  | true    | Logs player IP addresses                |
| enable-jmx-monitoring    | false   | Exposes JMX monitoring                  |

Never expose RCON to the internet. See [RCON Security](https://www.zcraftstudios.com/blog/minecraft-server-rcon-security-guide) and [Firewall Hardening](https://www.zcraftstudios.com/blog/minecraft-server-firewall-hardening).

## Resource packs and data packs

| Setting                | What it does                                                  |
| ---------------------- | ------------------------------------------------------------- |
| resource-pack          | URL of the resource pack                                      |
| resource-pack-sha1     | SHA-1 hash used to verify the download                        |
| resource-pack-id       | UUID of the pack, on versions that support it                 |
| resource-pack-prompt   | Message shown when the client is asked to download            |
| require-resource-pack  | Kicks players who refuse                                      |
| initial-enabled-packs  | Data packs enabled when the world is created, default vanilla |
| initial-disabled-packs | Data packs disabled when the world is created                 |

If the pack does not download, see [Resource Pack Download Failed](https://www.zcraftstudios.com/blog/minecraft-resource-pack-download-failed-fix) and [Resource Pack Hosting](https://www.zcraftstudios.com/blog/custom-resource-pack-hosting-setup). `initial-enabled-packs` only matters when the world is created, so change data packs later with the `datapack` command.

## Security and chat

| Setting                | Default | What it does                                         |
| ---------------------- | ------- | ---------------------------------------------------- |
| enforce-secure-profile | true    | Requires signed chat messages from verified profiles |
| text-filtering-config  | empty   | Chat filtering configuration                         |
| rate-limit             | 0       | Packets per second limit, 0 disables                 |
| require-resource-pack  | false   | See above                                            |

## Common mistakes

| Mistake                                          | Fix                                                                   |
| ------------------------------------------------ | --------------------------------------------------------------------- |
| Editing while the server runs                    | The server overwrites changes on exit. Stop it first                  |
| Spaces around \=                                 | Use key=value                                                         |
| Setting online-mode=false to fix an error        | This changes identity checks and can open the server to impersonation |
| Expecting level-seed to change an existing world | It applies only at world creation                                     |
| Huge view-distance                               | Raises CPU and bandwidth use for everyone                             |
| Exposing RCON                                    | Keep it on a private network                                          |

## Frequently asked questions

**Where is server.properties?** In the server's root folder, next to the server jar.

**Do I need to restart after editing?** Yes. The file is read at startup.

**How do I change the server port?** Set `server-port`, restart, and open the new port in your firewall or host panel.

**How do I make my server cracked?** Setting `online-mode=false` allows unverified accounts, which has real security risks. Read [Authentication Models](https://www.zcraftstudios.com/blog/minecraft-server-authentication-methods) first.

**What is the best view-distance for a server?** Start at 8 to 10 and lower it if TPS drops. Measure with [spark](https://www.zcraftstudios.com/blog/how-to-read-spark-profiler-minecraft).

## Related reading

- [How to Start a Minecraft Server](https://www.zcraftstudios.com/blog/start-minecraft-server)
- [Minecraft Server Commands List](https://www.zcraftstudios.com/blog/minecraft-server-commands-list)
- [Minecraft Server Mistakes](https://www.zcraftstudios.com/blog/minecraft-server-mistakes)

## Continue reading

- [server.properties Explained: Every Setting and What It Does](https://www.zcraftstudios.com/blog/server-properties-explained-every-setting)
- [Minecraft Server Files Explained: Properties and Logs](https://www.zcraftstudios.com/blog/minecraft-server-files-folders-explained)
- [level-type in server.properties: Minecraft World Types](https://www.zcraftstudios.com/blog/minecraft-level-type-world-types-server)
- [Hostinger Minecraft Hosting: VPS Game Panel Explained](https://www.zcraftstudios.com/blog/hostinger-minecraft-hosting-vps-game-panel)

[ Previous guide Minecraft Server Ideas: 25 Concepts That Work in 2026](https://www.zcraftstudios.com/blog/minecraft-server-ideas-types-concepts)[ Next guide Bots for Minecraft Servers: Test Players, NPCs and Defense](https://www.zcraftstudios.com/blog/bots-for-minecraft-servers-test-players-npcs-defense)

<script type="application/ld+json">{"@context":"https://schema.org","@type":"Organization","@id":"https://www.zcraftstudios.com/#organization","name":"ZCraft Studios","alternateName":["ZCS","ZCraft","ZCraftStudios"],"logo":{"@type":"ImageObject","url":"https://www.zcraftstudios.com/favicon-192.png","width":192,"height":192},"image":{"@type":"ImageObject","url":"https://www.zcraftstudios.com/favicon-192.png","width":192,"height":192},"url":"https://www.zcraftstudios.com","description":"ZCraft Studios (ZCS) creates Minecraft plugins, server configs and tools. Browse resources, compatibility details and setup guides.","email":"Support@zcraftstudios.com","slogan":"Minecraft resources, configurations and custom server development.","knowsAbout":["Minecraft plugins","Minecraft server configuration","Java plugin development","Minecraft server optimization"],"sameAs":["https://dsc.gg/zcraftstudios","https://x.com/ZCraftNetwork","https://www.youtube.com/@zcraft_studios","https://www.instagram.com/ZCraftStudios"],"contactPoint":[{"@type":"ContactPoint","contactType":"customer support","email":"Support@zcraftstudios.com","availableLanguage":["English"],"areaServed":"Worldwide"}]}</script>
<script type="application/ld+json">{"@context":"https://schema.org","@type":"WebSite","@id":"https://www.zcraftstudios.com/#website","url":"https://www.zcraftstudios.com","name":"ZCraft Studios","alternateName":["ZCS","ZCraft"],"description":"ZCraft Studios (ZCS) creates Minecraft plugins, server configs and tools. Browse resources, compatibility details and setup guides.","inLanguage":"en","publisher":{"@type":"Organization","@id":"https://www.zcraftstudios.com/#organization","name":"ZCraft Studios","url":"https://www.zcraftstudios.com"}}</script>
<script type="application/ld+json">{"@context":"https://schema.org","@type":"BlogPosting","@id":"https://www.zcraftstudios.com/blog/minecraft-server-properties-explained#article","headline":"server.properties Explained: Every Minecraft Server Setting","url":"https://www.zcraftstudios.com/blog/minecraft-server-properties-explained","mainEntityOfPage":"https://www.zcraftstudios.com/blog/minecraft-server-properties-explained","isPartOf":{"@type":"WebSite","@id":"https://www.zcraftstudios.com/#website","name":"ZCraft Studios","url":"https://www.zcraftstudios.com"},"speakable":{"@type":"SpeakableSpecification","cssSelector":["h1","main"]},"description":"Every important server.properties setting explained: port, motd, gamemode, difficulty, view distance, whitelist, online-mode, RCON, resource packs and more.","datePublished":"2026-10-29T01:53:09.929688+00:00","dateModified":"2026-10-29T01:53:09.929688+00:00","author":{"@type":"Organization","@id":"https://www.zcraftstudios.com/#organization","name":"ZCraft Studios","url":"https://www.zcraftstudios.com/about"},"publisher":{"@type":"Organization","@id":"https://www.zcraftstudios.com/#organization","name":"ZCraft Studios","url":"https://www.zcraftstudios.com","logo":{"@type":"ImageObject","url":"https://www.zcraftstudios.com/favicon-192.png","width":192,"height":192}},"inLanguage":"en","image":"https://www.zcraftstudios.com/api/og/blog/minecraft-server-properties-explained?v=p6bpvv"}</script>
<script type="application/ld+json">{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://www.zcraftstudios.com/"},{"@type":"ListItem","position":2,"name":"Blog","item":"https://www.zcraftstudios.com/blog"},{"@type":"ListItem","position":3,"name":"server.properties Explained: Every Minecraft Server Setting","item":"https://www.zcraftstudios.com/blog/minecraft-server-properties-explained"}]}</script>
