Identifying the Source of Lag
In the Minecraft ecosystem, “Lag” is a generalized term that frequently describes two distinct technical phenomena. To resolve performance issues effectively, you must first identify the root cause:- Server Lag (Low TPS): The server’s CPU cannot process world events (ticking) within the required 50ms window. This results in “rubber-banding” and delayed entity movements. A “Perfect” server operates at 20.0 TPS.
- Network Lag (High Ping): The physical latency between the player’s computer and the FREAKHOSTING data center. This results in delayed block-breaking and chat latency.
Difficulty
Intermediate
Time
12 Minutes
1. The Strategy of World Pre-Generation
Real-time terrain generation is the most CPU-intensive task a Minecraft server performs. When players fly into unexplored territory, the server must calculate biomes, structures, and block placement instantly, often causing massive TPS drops.- The Solution: use the Chunky plugin to programmatically render your world border during off-peak hours.
- Technical Goal: Pre-generating a 5,000 to 10,000 block radius ensures that the server only needs to “read” existing files from the high-speed NVMe storage rather than calculating them on the fly, eliminating 90% of explorer-related lag.
2. Technical Configuration Hardening
Tuning your core property files is the fastest method for reclaiming wasted CPU cycles.server.properties
view-distance: Set to6. The vanilla default (10) requires the server to track and process nearly 400% more chunks than a setting of 6.simulation-distance: Set to4. This restricts active entity AI and ticking logic to a tight radius around the player, preserving resources for core world events.
bukkit.yml
spawn-limits: Reducemonstersto 45 andanimalsto 8.ticks-per.monster-spawns: Set to 4. This instructs the engine to check for new spawns every 4 ticks rather than every single tick, reducing AI overhead by 75%.
spigot.yml
entity-activation-range: Setmonstersto 24 andanimalsto 16. Entities outside this range will “hibernate,” pausing their AI logic until a player approaches.
3. Advanced Diagnostic Profiling (Spark)
If lag persists after configuration hardening, a specific modification or entity farm is likely the culprit.1
Initialize the Profiler
Install the Spark plugin and execute:
/spark profiler start.2
Data Capture
Monitor the server during a period of active lag for approximately 10 minutes.
3
Generate Flame Graph
Execute:
/spark profiler stop.4
Technical Review
Open the generated URL. The hierarchical graph will pinpoint exactly which plugin, event, or entity type is consuming the highest percentage of your CPU’s “tick time.”
Need Extra Help?
If you encounter any issues, our support team is ready to assist:- Live Chat: Quick assistance via our website.
- Support Ticket: Open a Ticket
- Discord: Join our Community
- Email: support@freakhosting.com
Last Updated: January 2026 | Performance: 20.0 TPS achieved.