Limited Offer: Get 20% off your first month: code WELCOME20

Claim Offer
Back to blog
Guides

How to Host a Lag-Free Modded Minecraft Server: Performance Tuning & Best Settings

Expert guide to running a heavily modded Minecraft server with high TPS, fast chunk generation, and zero lag - using VPSLab's NVMe Minecraft hosting.

VPSLab Team May 19, 2026 3 min read
How to Host a Lag-Free Modded Minecraft Server: Performance Tuning & Best Settings

A modded Minecraft server can turn into a lag-filled nightmare the moment a few players start chunk-loading or automation kicks in. The difference between a smooth 20 TPS experience and a stuttering mess often comes down to how you configure the server - and the hardware underneath.

VPSLab's Minecraft server hosting runs on NVMe SSD storage with dedicated CPU cores and free DDoS protection, giving you a solid foundation. This guide shows you how to tune the server software side to squeeze out every last bit of performance.

#1. Choose the right plan and server software

#RAM and CPU sizing

Players Mods/Plugins Recommended RAM CPU Threads
2-5 Light (<30) 4 GB 2
5-10 Medium (30-80) 8 GB 3-4
10-20 Heavy (80+) 12-16 GB 4-6

Because VPSLab uses dedicated vCPU threads (not shared, oversold cores), the CPU allocation you pick is what you actually get.

#Server jar selection

  • For mods: Forge or Fabric (with performance mods like Lithium, Phosphor, and Sodium if the client also uses Fabric). Fabric often runs lighter for purely server-side modpacks.
  • For plugins (and some mods): Paper or Purpur are excellent, especially if you combine mods with plugins via a hybrid loader like Magma or Mohist. Be ready for a bit more CPU overhead with hybrids.

Start with the jar your chosen modpack recommends, then tweak.

#2. Configure server.properties for performance

Edit server.properties in your server's root directory. The following settings have the biggest impact on lag:

network-compression-threshold=256
simulation-distance=6
view-distance=8
max-tick-time=60000
max-players= (set to your expected peak, not max theoretical)
allow-flight=true
enable-jmx-monitoring=false
  • view-distance=8 (or lower) drastically reduces the number of chunks the server sends to players, lowering CPU and bandwidth usage.
  • simulation-distance=6 limits the distance at which entities and redstone are processed. For modded worlds with heavy automation, dropping this to 4 can save massive CPU cycles.
  • max-tick-time=60000 prevents the watchdog from killing the server if a single tick takes too long (common with world-generating mods). This setting is safe on dedicated resources like VPSLab's.

#3. Tune the JVM flags

Don't use the default java -jar command. Pass optimised JVM arguments in your start script:

java -Xms4G -Xmx8G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 \
     -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch \
     -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M \
     -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 \
     -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 \
     -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem \
     -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs \
     -Daikars.new.flags=true -jar server.jar nogui

Replace -Xms4G and -Xmx8G with your actual allocated RAM (Xms = minimum, Xmx = maximum). Using G1GC with Aikar's flags is the industry standard for Minecraft servers and keeps garbage-collection pauses short.

#4. Install performance-boosting mods & plugins

#Forge / Fabric mods (server-side)

  • Lithium (Fabric) - improves mob AI, physics, and block ticking.
  • Phosphor / Starlight (Fabric) - rewrites the lighting engine for huge speed gains.
  • FerriteCore (Forge/Fabric) - reduces memory usage.
  • LazyDFU (Forge/Fabric) - delays DataFixerUpper initialisation, cutting startup time and memory.

#Paper / Purpur plugins

  • ClearLag - removes ground items and entities on a configurable schedule.
  • Chunky - pre-generates chunks so players don't generate new terrain on the fly.
  • Spark - profiles CPU and memory usage in real time to spot lag sources.

#5. Pre-generate the world

One of the biggest lag spikes comes from new chunk generation. Use a plugin like Chunky or the /forge generate command to pre-generate a radius of at least 5,000 blocks before opening the server to players. Your NVMe storage makes this process significantly faster than traditional HDD-based hosts.

#6. Schedule automatic restarts

Modded servers leak memory over time. A daily restart at off-peak hours clears caches and prevents memory creep. On Linux you can use a simple cron job or screen with a restart script; VPSLab's game server panel includes built-in scheduled tasks once the feature rolls out for all titles.

#Why VPSLab works for modded Minecraft

  • NVMe SSDs - fast chunk loading and world saves, even with huge modpacks.
  • Dedicated vCPU threads - no noisy neighbours stealing your tick time.
  • DDoS protection - keeps your server online, even if someone tries to knock it offline.
  • Instant setup - deploy a Minecraft server in minutes and start tweaking immediately.

Ready to build a lag-free modded world? Deploy your Minecraft server now and put these settings to work on enterprise NVMe hardware.

#minecraft#modded#game servers#performance#hosting

Ready to deploy your own VPS?

Privacy-first hosting with crypto payments and instant setup.

Related articles