Most Minecraft lag comes from three things: too little RAM for your mods, a view distance that’s too high, and too many mobs or machines in loaded chunks. Start with the right plan, run Paper if you don’t need mods, and lower the view and simulation distance when the server struggles.
How much RAM you need
RAM is the server’s memory. These are good starting points:
| Players | Java, Vanilla or Paper | Java with mods | Bedrock |
|---|---|---|---|
| 2 to 4 | 2 GB | 6 GB | 2 GB |
| Up to 6 | 4 GB | 6 to 8 GB | 2 GB |
| Up to 8 | 5 GB | 8 GB | 2 to 4 GB |
| 10 to 16 | 6 to 8 GB | 8 to 10 GB | 4 GB |
| 20 or more | 8 GB or more | 10 GB or more | 4 GB or more |
Big modpacks need more no matter how few players you have. The modpack guide has a table per pack size. You can move to a bigger plan at any time.
The settings that cost the most
| Setting | Edition | Default | Try this when it lags |
|---|---|---|---|
view-distance |
Java | 10 |
8 |
simulation-distance |
Java | 10 |
6 to 8 |
entity-broadcast-range-percentage |
Java | 100 |
75 |
view-distance |
Bedrock | 32 |
12 to 16 |
tick-distance |
Bedrock | 4 |
Keep 4 |
max-players |
Both | 20 Java, 10 Bedrock |
What your group really needs |
Each player keeps every chunk within the view distance loaded around them. Going from 10 to 8 cuts that area by about a third. The simulation distance decides how much of that area keeps running (mobs, crops, redstone), and each of those chunks costs more than one that is only visible.
Change these in Settings, or in server.properties under Advanced, then restart. The config reference explains each one.
Things in the world that cause lag
- Exploring new land. Making new chunks is the heaviest thing a server does. Pre-generate the world before your friends spread out (see below).
- Too many mobs. Big animal pens and mob farms that never get cleared. Keep pens small, and kill off what you don’t need.
- Items on the ground. Farms that drop items nobody picks up.
- Redstone clocks that run all the time, and many hoppers.
- Mods. Every mod adds work. Machine and automation mods add the most.
Use a world border to stop the world growing without end. For example, worldborder set 10000 in Console makes the world 10,000 blocks wide, centred on 0, 0.
Pre-generate the world
The Chunky plugin (Paper and Purpur) or mod (Fabric and NeoForge) builds chunks ahead of time, so nobody waits for them later. Install it from Mods, then in Console:
chunky radius 3000
chunky startIt can take an hour or more. The server needs to stay awake for it, so turn sleep off in Settings > Sleep until it’s done, then turn it back on. If the server naps first, type chunky continue after it wakes.
Pick a faster server type
- Paper runs plugins and is much faster than Vanilla for the same world. It’s our default for good reason.
- Fabric with performance mods such as Lithium and FerriteCore is a good choice when you want mods. Friends don’t need these two mods themselves.
- Bedrock servers are light. Most of their load comes from the view distance and the number of players.
See server types to compare them.
Restarts
A Paper or Vanilla server can run for days without trouble. Big modpacks are happier with a daily restart, because some mods slowly use more memory. Open Schedules and use the Daily restart with warnings preset. It warns players in chat before it restarts, and it can skip the restart while anyone is online.
Pick the right region
Choose the region closest to most of your players: EU or US East. Distance adds delay to every block you break, and no setting can fix a server that’s too far away.
Read the graphs on Overview
Overview shows CPU, RAM, players and network over the last 24 hours and 7 days.
- RAM: Java keeps the memory it reserves, so a Java server often sits near the top of the graph. That’s normal. It’s a problem only if the server crashes with an out of memory error.
- CPU: high CPU while players explore is normal. High CPU while everyone stays at home points to a big farm, a redstone clock or a heavy mod.
- Tick health (TPS): on Paper and Purpur, Overview also shows ticks per second. Minecraft runs 20 ticks a second, so 20 is perfect. Below about 18, players notice lag.
Find out what’s slow
Paper and Purpur come with spark, a profiler. In Console:
spark tpsshows ticks per second and how long each tick takes. Under 50 ms per tick keeps the server at a full 20 TPS.spark profiler start --timeout 600records for 10 minutes, then gives you a link to a report. It shows which plugin, mob or block takes the most time.
Fabric and NeoForge: install spark from Mods, then use the same commands.
Vanilla 1.20.3 and later: tick query shows the tick rate and how long ticks take.
When you ask a plugin or mod maker for help with lag, send them the spark report link. It shows them exactly where the time goes.
Questions
How much RAM does a Minecraft server need for 10 players?
About 5 to 6 GB on Paper for 10 players with no mods, and 8 GB or more with a modpack. A Bedrock server for 10 players usually runs well on 2 to 4 GB.
What is a good TPS for a Minecraft server?
20 TPS is perfect, because Minecraft runs 20 ticks a second. A little under 20 is fine. Below about 18, players start to notice lag.
Why does my Minecraft server use almost all its RAM?
Java keeps the memory it reserves, so a Java server often sits near the top of its RAM graph. That is normal. It only matters if the server crashes with an out of memory error or lags.
Does a lower view distance reduce lag?
Yes. View distance and simulation distance are the biggest levers. Dropping them from 10 to 8 cuts the chunks the server handles per player by about a third.
Sources we checked
- ProfilingPaperMC
- Server.propertiesMinecraft Wiki
- Commands/tickMinecraft Wiki
- Bedrock Dedicated Server propertiesMicrosoft
