Find lag on your Minecraft server with Spark
Published on 3 October 2026
Spark tells you whether your Minecraft server is really lagging and what’s causing it. Type spark tps in the console: if TPS stays at 20 and MSPT under 50, the server itself is fine. Paper has shipped with Spark built in since 1.21, so there’s nothing to install on your server.
Is it server lag or your connection?
- Server lag: everyone notices at the same moment. Broken blocks pop back, mobs freeze, then everything catches up.
- Connection: one player stutters and the rest don’t. On Java, hold Tab and look at the ping bars next to the names.
- Your own computer: the picture stutters but the world keeps going. On Java, press F3 and check your fps.
How do you measure TPS and MSPT with Spark?
- Open your server’s console in the game panel.
- Type
spark tpsand press Enter. - Look at the TPS over the last few minutes and at MSPT, the time per tick in milliseconds.
Minecraft updates the world 20 times a second, which is a TPS of 20, so each tick may take at most 50 milliseconds. Spark colours the numbers green, amber or red: green is good, red means your server is falling behind. spark health shows memory, CPU and disk in one go.
How do you run and read a profile?
- Wait until the server is busy or the lag is happening.
- Type
spark profiler start --timeout 600. Spark now records for 10 minutes what your server spends its time on. - When it’s done, Spark posts a link in the console. Open it in your browser.
- Expand the lines with the highest percentage in the tree. That’s where the time goes: a plugin, entities or generating new chunks.
Does the lag come in short spikes? Run spark tickmonitor, which reports every tick that takes much longer than usual.
What are the usual suspects?
| Cause | What to do |
|---|---|
| Too many animals or mobs in one spot, such as a big farm | Make the farm smaller, or add a switch so it only runs when you use it. |
| Redstone clocks and lots of hoppers | Turn clocks off when nobody uses them. Paper has settings for hoppers and redstone in config/paper-world-defaults.yml. |
| New chunks while players fly far out | Pre-generate the world with the Chunky plugin, for example chunky radius 3000 followed by chunky start. |
| A plugin at the top of the profile | Update it, find a lighter alternative or remove it. |
| A high view distance | Lower view-distance and simulation-distance in server.properties. |
When does a bigger plan actually help?
More memory helps when memory is full: the meter in the console sits at the limit for long stretches and spark health shows a full heap. If the profile points to a farm or a plugin, extra memory won’t help and fixing that is the better move. Not sure about the size? See how much RAM a Minecraft server needs or try the server size calculator. If raw processing power is the limit, read Standard or Premium.