Minecraft server mods and optimization for performance
Complete Minecraft server performance guide: optimization mods, JVM flags, view-distance, entity limits, Spark profiler and practices to keep TPS stable on vanilla, Paper and modpacks.

Low TPS comes from high view-distance, uncontrolled farms, heavy plugins or a weak CPU. This guide collects settings that work on Paper, Purpur and Forge/NeoForge modpacks.
TPS and MSPT
| Metric | Ideal | Warning |
|---|---|---|
| TPS | 20 | Below 18 |
| MSPT | < 45 ms | Above 55 ms |
| RAM | 60-80% | Above 90% constantly |
Paper and Purpur
Paper already optimizes on top of Spigot. Purpur inherits that and adds options in purpur.yml. Lower simulation-distance separately from view-distance: players see far, the server simulates less.
entities:
spawning:
alt-item-despawn-rate:
enabled: true
items:
cobblestone: 300
despawn-ranges:
monster:
hard: 56- view-distance: 8-10 · simulation-distance: 6-8
- Pre-generate chunks with Chunky before opening to the public
- Monitor with /tps or the Spark plugin
Forge and NeoForge mods
| Mod | Role |
|---|---|
| ModernFix | Faster boot and less RAM |
| FerriteCore | Memory compression |
| AI Improvements | Optimized mob pathfinding |
| Clumps | Groups XP orbs |
| Chunky | Chunk pre-generation |
JVM flags
java -Xms4G -Xmx4G \
-XX:+UseG1GC \
-XX:+ParallelRefProcEnabled \
-XX:MaxGCPauseMillis=200 \
-XX:+DisableExplicitGC \
-jar paper.jar noguiUse Java 21 LTS for Minecraft 1.20.5+. G1GC is the default for a 4 GB+ heap. Do not allocate 100% of RAM to Java.
Spark profiler
- Install Spark (plugin on Paper/Purpur, mod on Forge/NeoForge).
- Reproduce the lag with an active farm or many players.
- /spark profiler start → wait 2-5 min → /spark profiler stop.
- Read the link: plugins, mods or entities at the top are the culprit.
World and entities
- Limit giant automatic farms with staff rules.
- Turn off excessive random_tick_speed if it was changed via gamerule.
- Use WorldBorder to contain infinite exploration.
- Clear-lag plugins or Paper configs for distant items/mobs.
- Scheduled restarts clean plugin memory leaks.
High-clock CPU and NVMe SSD matter as much as config. Minecraft depends on single-core. Measure, change incrementally and take a backup before drastic changes.
Frequently asked questions
Straight answers before you order
You may also like
Paper, Spigot or Purpur: which one should you pick?
Want plugins? Install Paper. Want mods? That is Forge, not Paper. Leave Spigot behind.
Samuel Akires
VPS vs dedicated server
A VPS is an isolated share of a machine. Dedicated is the whole machine. The difference and when each one makes sense.
Samuel Akires
How to create a Cobbleverse server on RoxyCloud
Hire a Cobbleverse server already installed on RoxyCloud, get a panel, IP and port, and start playing Cobblemon with friends in a few minutes.
Samuel Akires
How to create an ATM10 server on RoxyCloud
Hire an All The Mods 10 server already installed on RoxyCloud, get a panel, IP and port, and start playing ATM10 with friends in a few minutes.
Samuel Akires
