A well-optimized Minecraft server can handle 2-3x more players than a default-configured one on the same hardware. This guide covers every optimization layer — from JVM flags to Paper YAML settings to plugin management — so you squeeze maximum performance from your server.
JVM Flags — Start Here
The right Java arguments make an immediate difference. Use Aikar's flags (the community standard): -Xms and -Xmx set to the same value (e.g., -Xms4G -Xmx4G) to prevent GC resizing; -XX:+UseG1GC for modern garbage collection; -XX:MaxGCPauseMillis=50 to minimize lag spikes; -XX:+ParallelRefProcEnabled to speed up reference processing; -XX:+UnlockExperimentalVMOptions and -XX:G1NewSizePercent=30 for tuning. For modded servers, add -XX:+UseStringDeduplication to reduce RAM usage. These flags give you an immediate 10-15% TPS improvement on any server.
Paper YAML Configuration
In paper-global.yml: set 'max-joins-per-second: 10' to prevent login flooding. 'entity-activation-range' controls how far entities activate — reduce from 32 to 16 for mobs, 8 to 4 for animals to reduce CPU load. 'per-player-mob-spawns: true' distributes mob cap fairly. In paper-world.yml: 'delay-chunk-unloads-by: 10s' prevents rapid chunk load/unload. 'max-auto-save-chunks-per-tick: 8' spreads save load. 'optimize-explosions: true' reduces explosion calculation overhead. These settings are safe for most servers.
Spigot YAML Configuration
In spigot.yml: 'moved-wrongly-threshold: 0.0625' (default 0.15625) improves anticheat without false bans. 'moved-too-quickly-multiplier: 10.0' (default 2.0) prevents movement timeout. 'entity-activation-range' mirrors Paper settings. 'merge-radius.item: 3.5' and 'merge-radius.exp: 4.0' reduce item merge calculations. 'save-player-count: false' reduces disk I/O. These are safe defaults that improve performance without changing gameplay feel.
View Distance and Simulation Distance
View distance is the biggest performance lever you control. Each chunk increase adds ~15% more CPU load. Default is 10 — we recommend 6-8 for most servers. Simulation distance controls which chunks process entities and redstone. Set simulation-distance to 4-6 (default is equal to view distance). On a 4GB server, reducing view distance from 10 to 6 frees enough CPU to handle 10-15 more players. Players won't notice the difference due to our low-latency infrastructure and fast NVMe chunk loading.
Plugin Optimization
Plugins are the #1 cause of lag on most servers. Use Spark profiler to identify heavy plugins: '/spark profiler start' then '/spark profiler stop' after 5 minutes of play. Replace heavy plugins with lighter alternatives: Replace EssentialsX with CMI (lighter permissions handling). Use CommandPanels instead of DeluxeMenus for GUI menus. Replace CustomEnchants+ with EcoEnchants (better performance). Avoid these resource hogs: ClearLag can cause lag spikes — use built-in item merging instead any MOTD plugin that queries external APIs every tick player stat tracking plugins that query databases per-event
Ongoing Maintenance
Optimization isn't a one-time task. Schedule these: weekly Spark profile review to catch new plugin performance issues. monthly YAML audit to check for reset-to-default values after updates. quarterly hardware review — upgrade if player count has grown. Always test optimization changes on a staging server first. Our CyberNex control panel lets you clone your server for testing before applying changes to production.
A properly optimized server handles 2x the players on the same hardware. Start with JVM flags (Aikar's flags), configure Paper YAML for your player count, reduce view distance, monitor plugins with Spark, and upgrade hardware as your community grows. CyberNex's infrastructure gives you a strong foundation — optimization multiplies that advantage.
More in minecraft
Minecraft Server Hosting
Deploy your Minecraft server in under 60 seconds. Paper, Forge, Fabric — Singapore nodes with 40ms to Sri Lanka.




