Running a Minecraft server for 10 friends is straightforward — a single Paper instance on a 4-core box does the job. Running for 200 concurrent players on a single machine requires careful engineering, and beyond 200 you need a multi-server proxy network. This guide covers the progression from a single instance to a full proxy network, with hardware specs and configuration for each scale level.
Start with the right hardware. Compare dedicated server plans that offer the high-clock CPUs and NVMe storage Minecraft needs at scale.
Scale Level 1: Up to 50 Players — Single Paper Instance
For a single server with 10–50 concurrent players, one Paper instance on dedicated hardware is sufficient. The key specs:
| Player Count | CPU | RAM | Storage |
|---|---|---|---|
| 10–20 players | 4 cores @ 4.0+ GHz | 6–8 GB | 50 GB NVMe |
| 20–35 players | 6 cores @ 4.5+ GHz | 10–12 GB | 100 GB NVMe |
| 35–50 players | 8 cores @ 4.5+ GHz | 12–16 GB | 150 GB NVMe |
Use Aikar’s JVM flags, set -Xms equal to -Xmx, and enable G1GC. Pre-generate chunks with Chunky to avoid generation lag when players explore. Set view-distance to 6–8 and simulation-distance to 6 for the best balance of performance and gameplay.
Scale Level 2: 50–150 Players — Single Instance with Tuning
At 50+ players, a single Paper instance needs aggressive tuning. Start with a 12–16 core CPU at 4.5+ GHz and 24–32 GB of RAM. Beyond hardware, these configuration changes make the biggest difference:
- Enable chunk loading limiting: Set
chunk-loadingandchunk-tick-limitin Paper’s config to prevent one player’s exploration from tanking TPS for everyone. - Entity activation range: Reduce
entity-activation-rangeto limit tick processing on distant mobs. Drop monsters from 32 to 16 blocks, animals from 32 to 12. - Use a dedicated world border: Set a world border at 10,000–20,000 blocks radius. Unbounded worlds accumulate entities and chunks indefinitely.
- Schedule restarts: Restart every 12–24 hours. Minecraft servers accumulate memory fragmentation and orphan entities over time. A scheduled restart clears the slate.
Scale Level 3: 150–500 Players — Proxy Network with Velocity
Beyond 150 players, a single Minecraft server instance cannot maintain 20.0 TPS regardless of hardware. The solution is a proxy network: a Velocity proxy distributes players across multiple backend Paper servers, each handling a different game world or game mode.
Architecture Overview
| Component | Role | Hardware |
|---|---|---|
| Velocity Proxy | Routes players, handles auth, manages handshake | 2–4 cores, 4 GB RAM, any SSD |
| Lobby Server | Player hub, minigame selection, social space | 4 cores, 6 GB RAM, NVMe |
| Survival World (Paper) | Main survival gameplay world | 8–12 cores, 16 GB RAM, NVMe |
| Creative / Resource World | Secondary worlds for building or resource gathering | 6–8 cores, 10 GB RAM, NVMe |
| Minigame Servers | Skyblock, KitPVP, BedWars instances | 4–6 cores each, 6–8 GB RAM each |
Setting Up Velocity
Velocity is the modern replacement for BungeeCord — it handles player authentication more securely, has better performance, and supports modern Minecraft versions out of the box.
# Download Velocity
wget https://api.papermc.io/v2/projects/velocity/versions/3.3.0/builds/latest/downloads/velocity-3.3.0-latest.jar
# Create velocity.toml with backend servers
# [servers]
# lobby = "127.0.0.1:25566"
# survival = "127.0.0.1:25567"
# creative = "127.0.0.1:25568"
# Run with 4 GB heap
java -Xms4G -Xmx4G -jar velocity.jar
Each backend Paper server needs online-mode=false in server.properties (Velocity handles auth upstream) and velocity-secret configured in both Velocity’s velocity.toml and each Paper server’s paper-global.yml for secure forwarding.
Scale Level 4: 500+ Players — Multi-Machine Proxy Network
At 500+ concurrent players, a single dedicated machine cannot handle the combined load. The architecture expands to multiple dedicated servers, each running several backend instances, with a load-balanced Velocity proxy layer.
- Dedicated proxy machines: 2–4 small dedicated servers running Velocity behind a TCP load balancer (HAProxy or Nginx Stream). Each proxy handles 200–300 concurrent connections.
- Backend server machines: Each machine runs 2–4 Paper instances, pinned to dedicated CPU cores via
tasksetorcset shieldto prevent CPU contention between instances. - Shared world storage: Use a network NVMe volume (or a dedicated storage server with NFS over RDMA) for world data so any backend can access the survival world. This is the most complex part — Minecraft’s world format is not designed for concurrent access, so only one backend should mount each world at a time.
- Redis for synchronization: Use Redis to share player data, bans, and permissions across backend servers. Velocity’s built-in forwarding handles the connection routing.
Common Scaling Mistakes
- Throwing CPU cores at the problem: A single Minecraft instance cannot use more than 4–6 cores effectively. More cores do not help a single instance — use a proxy to split the load.
- Shared hosting for proxy and backend: Running Velocity on the same machine as a busy Paper server causes CPU contention. Give the proxy its own dedicated machine or at least its own isolated cores.
- No world pre-generation: Without pre-generated chunks, the first player to explore a new direction triggers chunk generation, which pegs one CPU core at 100% and drops TPS for everyone.
- Overloading a single server with game modes: Running survival, creative, and minigames on one instance degrades all three. Separate them into distinct backend servers.
Summary
Scaling Minecraft from 10 to 500+ players requires shifting from “bigger single machine” to “multi-instance proxy architecture.” Up to 50 players, a tuned Paper instance on a high-clock CPU works. From 50 to 150, tuning and hardware upgrades extend the single-instance ceiling. Beyond 150, Velocity with multiple backend servers is the only viable path. At 500+, the architecture becomes a distributed network of dedicated machines, each running isolated instances behind a proxy layer.
Find the right hardware for every scale level on our dedicated server comparison table — high-clock CPUs, NVMe storage, and enough RAM for your player count.


Leave a Reply
You must be logged in to post a comment.