How to Reduce Lag on Minecraft Server: Complete 2026 Fix Guide

Published on

Fix Minecraft server lag with CPU optimization, chunk pre-generation, plugin management, and network tweaks. Reduce TPS drops from 20 to stable performance.

Written by Space-Node Team – Infrastructure Team – 15+ years combined experience in game server hosting, VPS infrastructure, and 24/7 streaming solutions. Read author bio →

How to Reduce Lag on Minecraft Server: Complete 2026 Fix Guide

how to reduce minecraft server lag 2026

Quick Answer: Minecraft server lag stems from 5 main causes: insufficient RAM allocation (allocate 2GB minimum), CPU bottlenecks (upgrade to Ryzen 9 CPUs), excessive entity counts (use ClearLag plugin), unoptimized plugins (audit with Timings), and poor network routing (choose Netherlands hosting for 5-30ms EU latency). Most lag is fixable through server.properties tweaks and plugin optimization.

Server lag ruins the Minecraft experience. Players complain about rubber-banding, block lag, mob freezing, and inventory delays. In 2026, with modpacks getting heavier and player counts growing, lag optimization is critical.

This guide covers every lag source and fix—from basic server.properties tweaks to advanced CPU/RAM optimization.

Minecraft Server Performance

Table of Contents

  1. Understanding Server TPS vs Client FPS
  2. RAM Allocation and Garbage Collection
  3. CPU Performance Optimization
  4. View Distance and Chunk Loading
  5. Entity and Mob Management
  6. Plugin and Mod Audit
  7. Network Latency Fixes
  8. Server.properties Optimization
  9. Common Questions

1. Understanding Server TPS vs Client FPS

What is TPS?

TPS (Ticks Per Second) measures server performance. Minecraft runs at 20 TPS ideal—meaning 20 game ticks per second (50ms per tick).

  • 20 TPS: Perfect performance, no lag
  • 15-19 TPS: Slight lag, noticeable delays
  • 10-14 TPS: Moderate lag, block delays, mob stuttering
  • < 10 TPS: Severe lag, unplayable

TPS vs FPS

  • FPS (Frames Per Second): Client-side rendering speed (player's computer)
  • TPS (Ticks Per Second): Server-side game logic speed

Low TPS affects everyone. Even players with 300 FPS experience lag when server TPS drops below 20.

Check Server TPS

Install Spark plugin or use /tps command (requires permissions).

/tps

Output example:

TPS: 19.8, 19.5, 18.9 (1m, 5m, 15m average)

Anything below 19.5 indicates performance issues.


2. RAM Allocation and Garbage Collection

How Much RAM Does Your Server Need?

| Server Type | Players | RAM Required |

|-------------|---------|--------------|

| Vanilla 1.20+ | 5-10 | 2-4GB |

| Vanilla 1.20+ | 20-50 | 6-8GB |

| Light plugins (10-15) | 10-20 | 4-6GB |

| Heavy plugins (20+) | 20-50 | 8-12GB |

| Modpacks (ATM10, Better MC) | 10-20 | 12-16GB |

| Large modpacks (200+ mods) | 10-20 | 16-24GB |

Optimize Java Startup Flags

Use Aikars flags for better garbage collection:

java -Xms8G -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

Key points:

  • -Xms8G -Xmx8G: Set min and max RAM to same value (prevents resizing lag)
  • -XX:+UseG1GC: Use G1 garbage collector (better than default)
  • -XX:MaxGCPauseMillis=200: Limit GC pauses to 200ms

Avoid Common RAM Mistakes

Don't: Allocate all server RAM to Minecraft (leave 1-2GB for OS)
Don't: Use 32GB+ RAM (diminishing returns, GC overhead)
Do: Match RAM to actual need (monitor with /spark heapsummary)


3. CPU Performance Optimization

CPU Matters More Than RAM

Minecraft is single-threaded—it primarily uses 1 CPU core for main game loop. Fast single-core speed is critical.

Best CPUs for Minecraft servers:

  • AMD Ryzen 9 7950X (5.7GHz boost) – Excellent
  • AMD Ryzen 7 5800X (4.7GHz boost) – Great
  • Intel i9-12900K (5.2GHz boost) – Great
  • Budget: AMD Ryzen 5 5600X (4.6GHz boost) – Good

Avoid: Old Intel Xeons (2.4GHz), budget Celerons, ARM processors.

Paper/Purpur for Multi-Threading

Vanilla Minecraft doesn't multi-thread well. Use Paper or Purpur server software:

  • Paper: Optimizes redstone, entity AI, lighting (20-40% better performance)
  • Purpur: Adds multi-threading for tasks like mob AI, chunk loading

Download from PaperMC.io or PurpurMC.org.


4. View Distance and Chunk Loading

Reduce View Distance

server.properties:

view-distance=6
simulation-distance=4
  • view-distance: How far players can see (default 10, reduce to 6-8)
  • simulation-distance: How far mobs/crops/redstone work (default 10, reduce to 4-6)

Impact: Reducing from 10 → 6 cuts chunk processing by ~40%.

Pre-Generate Chunks

Use Chunky plugin to pre-generate world before players join:

/chunky world world
/chunky radius 5000
/chunky start

This prevents chunk generation lag during gameplay.


5. Entity and Mob Management

Limit Entity Counts

spigot.yml:

entity-activation-range:
  animals: 16
  monsters: 24
  raiders: 32
  misc: 8
  water: 8
  villagers: 16
  flying-monsters: 32

Reduces AI processing for distant entities.

Clear Lag Plugin

Install ClearLag to auto-remove dropped items, excess mobs:

/lagg clear - Remove ground items
/lagg killmobs - Kill excess mobs
/lagg area 20 - Check entities in 20-block radius

Configure auto-clear every 10 minutes in config.yml.

Limit Farms

Players build massive mob grinders, iron farms, villager breeders. Set limits:

paper.yml:

max-entity-collisions: 2

bukkit.yml:

spawn-limits:
  monsters: 50
  animals: 8
  water-animals: 5
  ambient: 1

6. Plugin and Mod Audit

Use Spark or Timings

Identify laggy plugins:

/spark profiler --timeout 300

Wait 5 minutes, then:

/spark profiler --stop

Upload results and check which plugins consume most CPU.

Common Laggy Plugins

Avoid: Old versions of EssentialsX, outdated permissions plugins, massive world editors
Use: LuckPerms (modern permissions), CoreProtect (optimized logging), Vault (lightweight economy)

Plugin Alternatives

| Laggy Plugin | Better Alternative |

|--------------|-------------------|

| WorldEdit (old) | FastAsyncWorldEdit (FAWE) |

| EssentialsX (outdated) | EssentialsX (latest version) |

| PermissionsEx | LuckPerms |

| Multiverse-Core (heavy) | Multiverse-Core (latest) |


7. Network Latency Fixes

Choose Better Server Location

Latency (ping) affects block placement, PvP, inventory actions.

European servers:

  • Netherlands (Amsterdam): 5-30ms for 70% of EU players
  • Germany (Frankfurt): 10-40ms
  • UK (London): 15-50ms

North American servers:

  • US East (New York): 20-60ms for East Coast, 70-120ms West Coast
  • US West (Los Angeles): 20-60ms for West Coast, 80-140ms East Coast

Space-Node Minecraft hosting uses Netherlands datacenters for optimal EU latency.

Optimize Netty Settings

server.properties:

network-compression-threshold=256

Lower values (256) reduce bandwidth but increase CPU usage. Default is 256.


8. Server.properties Optimization

Full Optimized Configuration

server.properties:

# View/Simulation Distance
view-distance=6
simulation-distance=4

# Network
network-compression-threshold=256
max-tick-time=60000

# Spawn Protection
spawn-protection=0

# World Settings
max-world-size=10000

spigot.yml:

# Mob Spawn Ranges
mob-spawn-range: 4

# Entity Activation Range
entity-activation-range:
  animals: 16
  monsters: 24
  raiders: 32
  misc: 8

# Merge Radius
merge-radius:
  item: 3.5
  exp: 4.0

# Tick Rate
item-despawn-rate: 3000
arrow-despawn-rate: 600

paper.yml:

# Performance
max-auto-save-chunks-per-tick: 8
optimize-explosions: true
treasure-maps-return-already-discovered: true

# Anti-Xray
anti-xray:
  enabled: true
  engine-mode: 2

Common Questions

"Why is my server lagging with only 5 players?"

Check these in order:

  1. TPS: Run /tps – if below 19, you have server-side lag
  2. RAM: Allocate at least 2GB for vanilla, 4GB for plugins
  3. CPU: Check single-core speed (need 3.5GHz+ boost clock)
  4. Plugins: Use /spark profiler to find laggy plugins
  5. Chunks: Reduce view-distance to 6 in server.properties

Most "5-player lag" comes from insufficient CPU or laggy plugins like old EssentialsX versions.

"What's the difference between server lag and client lag?"

Server lag (low TPS):

  • Affects everyone simultaneously
  • Mobs freeze, blocks delay, inventories slow
  • Check with /tps command
  • Fix: More RAM/CPU, optimize server.properties

Client lag (low FPS):

  • Only affects individual player
  • Stuttering graphics, choppy movement
  • Check with F3 debug screen (bottom right FPS counter)
  • Fix: Better GPU, lower render distance, install OptiFine

"Should I use Vanilla, Spigot, Paper, or Purpur?"

Performance ranking (best to worst):

  1. Purpur – Paper + multi-threading + extra optimizations (best for 20+ players)
  2. Paper – Spigot + async chunk loading + redstone optimizations (great for 10-50 players)
  3. Spigot – Vanilla + basic performance tweaks (good for 5-20 players)
  4. Vanilla – No optimizations (only for singleplayer or small 2-5 player servers)

Recommendation: Use Purpur for best performance with full plugin compatibility.

"How do I fix TPS drops during chunk generation?"

Pre-generate world with Chunky plugin before opening server:

/chunky world world
/chunky radius 5000
/chunky start

This generates 10,000x10,000 block area (5000 block radius from spawn). Wait 1-6 hours depending on CPU.

Alternative: Reduce view-distance to 4-6 to minimize new chunk generation during gameplay.

"Can I host 100+ players on one Minecraft server?"

Yes, but requires:

  • 24-32GB RAM
  • AMD Ryzen 9 or Intel i9 CPU (5.0GHz+ boost)
  • Purpur server with multi-threading
  • NVMe SSD for chunk I/O
  • Optimized plugins (avoid EssentialsX, use LuckPerms, CoreProtect)
  • Pre-generated world to prevent chunk gen lag

Most hosts cap at 50-100 players per server. For larger networks, use BungeeCord with multiple backend servers.

"Why does lag happen only at certain times?"

Scheduled events cause periodic lag:

  • Auto-save: Every 5 minutes (6000 ticks) – configure with save-interval in bukkit.yml
  • Plugin tasks: Some plugins run tasks every X minutes (check with /spark profiler)
  • Backups: If backup runs during peak hours, move to off-hours (3-6 AM)
  • ClearLag: Auto-removal of items every 10 minutes causes brief TPS drop

Use /spark profiler --timeout 600 during lag spike to identify cause.


Final Checklist: Lag Reduction Priority

  1. Allocate 2-4GB RAM minimum (use Aikars flags)
  2. Reduce view-distance to 6-8 (server.properties)
  3. Use Paper or Purpur (not vanilla)
  4. Pre-generate world with Chunky
  5. Audit plugins with Spark profiler
  6. Limit entities with ClearLag plugin
  7. Optimize spigot.yml and paper.yml (copy config above)
  8. Choose better hosting (Ryzen 9 CPU, NVMe SSD, Netherlands location)

Still lagging? Upgrade to Space-Node Minecraft hosting with AMD Ryzen 9 CPUs @ 5.4GHz, NVMe SSD, and optimized network routing for 5-30ms EU latency. Plans from €0.90/month.

Related guides:

Space-Node Team

About the Author

Space-Node Team – Infrastructure Team – Experts in game server hosting, VPS infrastructure, and 24/7 streaming solutions with 15+ years combined experience.

Since 2023
500+ servers hosted
4.8/5 avg rating

Our team specializes in Minecraft, FiveM, Rust, and 24/7 streaming infrastructure, operating enterprise-grade AMD Ryzen 9 hardware in Netherlands datacenters. We maintain GDPR compliance and ISO 27001-aligned security standards.

View Space-Node's full team bio and credentials →

Start Minecraft Server in Minutes

Join content creators worldwide who trust our minecraft infrastructure. Setup is instant and support is always available.

How to Reduce Lag on Minecraft Server: Complete 2026 Fix Guide