Articles
Explore some articles written by our team & fellow gamers!
Explore some articles written by our team & fellow gamers!
We use cookies to enhance your browsing experience, analyze site traffic, and personalize content. By clicking “Accept”, you consent to our use of cookies. Read our Privacy Policy to learn more.
Minecraft server lag is the silent killer of multiplayer fun. One moment you're building an epic base, the next you're watching blocks load in slow motion while mobs spawn in random places. If your Minecraft server is lagging, you're not alone—and more importantly, you're not stuck with it.
Server lag comes in many forms, from chunk loading delays to entity-related performance issues. The good news? Most lag problems are fixable. In this comprehensive troubleshooting guide, we'll walk through the common causes and proven solutions to get your server running smooth as butter.
Before we dive into fixes, let's understand what we're actually measuring. Minecraft servers run on ticks—16 ticks per second (TPS) is the target. When your server dips below 20 TPS, players notice lag.
TPS (Ticks Per Second): This is the heartbeat of your server. 20 TPS is perfect. 18-19 TPS is acceptable. Below 15 TPS, and players are definitely suffering.
MSPT (Milliseconds Per Tick): This measures how long each tick takes. At 20 TPS, each tick should complete in 50ms. If MSPT climbs to 75-100ms, you've got lag.
You can check TPS in-game with commands like /tps (on Paper servers) or by installing a monitoring plugin. For serious diagnostics, you'll need a timings report or Spark profiler—these tools break down where your server is actually spending time.
If you're running Paper (which you should be for optimization), run /timings paste in-game. This generates a link showing exactly which plugins and processes are eating up your tick time.
Spark is a lightweight profiler that's invaluable for finding lag sources. Install it as a plugin, run /spark profiler start, play for a minute, then /spark profiler stop. The resulting report pinpoints CPU-heavy tasks.
Use /tps command or install a server monitor. Real-time data beats guessing every time.
Chunks are 16x256x16 blocks of your world. When players explore new territory, your server must generate and load chunks. This process is CPU-intensive and causes lag spikes.
Signs: Lag spikes when exploring new areas, not at spawn.
Fixes:
view-distance in server.properties to 8-10 instead of 10-12. Lower view distance = fewer chunks loaded = less lag.simulation-distance controls which chunks actually process (mobs spawn, crops grow, etc.). Set this to 6-8 for most servers.Every mob, item, and arrow takes processing power. Too many entities = lag.
Signs: Lag increases when players aren't moving, especially around mob farms or spawn points.
Fixes:
merge-radius for items higher in server.properties.Even well-coded plugins consume resources. Too many plugins = death by a thousand cuts.
Signs: Timings report shows plugins taking significant tick time.
Fixes:
Complex redstone clocks and automatic farms can cause massive lag if not optimized.
Signs: Lag spikes in specific areas with redstone.
Fixes:
Corrupted chunks or problematic world data cause lag and sometimes crashes.
Signs: Consistent lag in specific areas, error messages in logs.
Fixes:
Now that you've identified lag sources, let's tune your server engine itself. JVM (Java Virtual Machine) flags control how Java runs, directly affecting performance.
Aikar's JVM flags are widely considered the best starting point for Minecraft servers. Here's the setup for a 6GB+ server:
-Xms6G -Xmx6G -XX:+UseG1GC -XX:MaxGCPauseMillis=130 -XX:+ParallelRefProcEnabled -XX:+AlwaysPreTouch -XX:+PerfDisableSharedMem -XX:G1NewCollectionHookWithSurvivorRatio=20 -XX:G1ReservePercent=20 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:MaxGCPauseMillis=200 -XX:G1SummarizeRSetStatsPeriod=1
What these do:
-Xms6G -Xmx6G: Allocates 6GB RAM. Adjust based on your server hardware.-XX:+UseG1GC: Uses the G1 garbage collector, best for Minecraft.-XX:MaxGCPauseMillis: Keeps garbage collection pauses under 130ms, preventing tick lag.Never allocate your entire server's RAM to Minecraft. If your server has 16GB:
Overallocation causes the system to page memory to disk, which murders performance.
Switch from vanilla or Spigot to Paper Server. Paper includes built-in optimizations:
In paper-global.yml, enable these optimizations:
settings:
async-chunks:
enable: true
use-faster-eigencraft-redstone: true
disable-end-credits: true
Your server.properties file controls many performance factors:
| Setting | Recommended Value | Why |
|---|---|---|
view-distance |
8-10 | Reduces chunk loading overhead |
simulation-distance |
6-8 | Limits active chunk processing |
max-players |
Your hardware limit (usually 20-100) | More players = more processing |
pvp |
true/false based on server type | PvP involves extra calculations |
difficulty |
Normal or Hard | Higher difficulty = more mob AI |
network-compression-threshold |
256 | Compresses data over 256 bytes |
online-mode |
true | Keep this true for security |
Lag doesn't always appear overnight. Sometimes it creeps up as your world grows.
Tell players about optimization:
/tps data, not just complaintsSometimes lag isn't your server config—it's your hardware. If you've optimized everything and lag persists, your host might be bottlenecking you.
Look for providers with:
EZ Game Host, for example, uses Ryzen 9 9950X processors—some of the fastest single-threaded CPUs available. This means your Minecraft server ticks faster, mobs respond instantly, and chunk loading happens without lag spikes. Whether you're running a vanilla server with 20 players or a modded server with plugins, the raw CPU power prevents tick drops from affecting gameplay.
Why is my Minecraft server lagging when I'm the only one online? If lag happens solo, it's likely chunk generation, a rogue plugin, or world issues. Run a timings report to diagnose. Single-player shouldn't lag on any reasonable hardware.
How do I check server TPS?
On Paper servers, run /tps. On vanilla servers, run /debug start for a 10-second profile. Install a monitoring plugin like CoreProtect or Server-Properties Monitor for real-time TPS display.
What causes chunk lag specifically?
Chunk generation, chunk loading, or blocks with complex redstone/entity data. Use pre-generation during setup to prevent this. Lower simulation-distance to reduce active chunk processing.
How do I optimize server performance for modded servers? Modded servers are harder to optimize because mods add complexity. Start with Aikar's flags and Paper's mod-compatible fork, ForgeFlower. Audit mods for lag (many are outdated). Use mods like Optifine or Lithium to reduce entity count and optimize rendering. Monitor with Spark—modded servers especially benefit from profiling.
What JVM flags should I use?
Start with Aikar's flags for most servers. If running large modded servers, adjust -Xms and -Xmx higher (16G+). Never use flags you don't understand—incorrect settings cause lag, not fix it.
Can I reduce lag by lowering the difficulty? Slightly. Lower difficulty means fewer mob spawns and simpler pathfinding. But the impact is usually small. Focus on the big three: view-distance, entity count, and plugins.
Is a VPS good enough for a Minecraft server? VPSes share hardware, which can introduce lag during peak times when other customers' load spikes. For dedicated performance, game server hosts are better. They allocate resources specifically for your server.
/tps and a timings report to identify lag sourcesview-distance and simulation-distance; set max-players appropriatelyMinecraft server lag is frustrating, but it's solvable. Most lag comes from misconfiguration, not insufficient hardware. Start by profiling with timings or Spark, then make targeted changes. Small adjustments to view-distance, entity limiting, and JVM flags often eliminate lag entirely.
If you've optimized everything and lag still strikes, it might be time to upgrade your hosting hardware. Servers powered by high-performance CPUs like the Ryzen 9 9950X—available through providers like EZ Game Host—eliminate CPU bottlenecks entirely, giving you the breathing room to run larger servers, more players, and more complex contraptions without lag.
The lag-free Minecraft server experience is within reach. Start troubleshooting today.
Looking to host your Minecraft server on hardware that won't lag? Check out EZ Game Host's Best Modded Minecraft Server Hosting and Best Minecraft Server Hosting options. Or learn how to Host a Minecraft Server on Your PC for complete control. Our Ryzen 9-powered servers deliver the performance you need for lag-free gaming.