> ## Content Index
> Fetch the complete content index at: https://dedicatedmc.io/blog/llms.txt
> Use this file to discover other available public pages before exploring further.

# What actually causes Minecraft server lag: TPS and MSPT explained
- URL: https://dedicatedmc.io/blog/what-causes-minecraft-server-lag/
- Published: 2026-09-01T10:00:00.000Z
- Updated: 2026-10-30T13:39:36.000Z
- Description: The 50ms tick budget, what eats it, and how to tell apart the three different problems people all call lag, so you can measure and fix the right one.
- Author: Mark E
- Tags: Guide, Minecraft, Performance

"Lag" is one word doing three different jobs, and that's why it's so hard to fix. Sometimes the whole server has slowed down. Sometimes your connection is bad but the server is fine. Sometimes both are healthy and your own machine is struggling to draw the frames. These have different causes and different fixes, and telling them apart is most of the work. This post explains the 50ms tick budget, what eats it, and how to measure what's going on.

## The 50ms budget

A Minecraft server aims to run at 20 ticks per second. A tick is one step of the simulation: every mob moves, every hopper checks itself, every bit of redstone updates, chunks load and save. Twenty ticks a second gives the server 50 milliseconds to finish each one, because a second divided by twenty is 50ms. That's the budget.

Two numbers describe how it's doing against that budget.

TPS (ticks per second) is the rate the server is actually managing. 20 is the ceiling and the target. You cannot go above it; the server just waits out the budget when it finishes early.

MSPT (milliseconds per tick) is how long each tick is actually taking. As long as MSPT stays under 50, the server holds a full 20 TPS with time to spare. The moment a tick takes longer than 50ms, TPS falls below 20\. Everything in the game is timed off ticks, so when TPS drops the whole world slows: mobs move in slow motion, crops grow slower, hoppers crawl. MSPT is the number to watch, because it tells you how close to the edge you are before TPS ever moves.

## What eats the budget

A few things do most of the damage, and it's almost always one of these.

Entities and mob farms. Every mob, item, minecart and armour stand is ticked. A big mob farm or a floor covered in dropped items can put thousands of entities in the tick, and each one costs time. This is the single most common cause of a heavy tick.

Redstone and hoppers. Redstone updates and hopper item checks are surprisingly expensive at scale. A large contraption, or a wall of hoppers all polling for items, adds real milliseconds every tick, whether or not anything is moving through them.

Chunk loading. Loading and generating chunks is heavy work that happens on the tick when players explore into new terrain, when chunk loaders keep distant areas active, or when view distance is set high. A player flying into fresh terrain can spike MSPT on its own.

Heavy or badly-behaved plugins. A plugin doing expensive work on the main thread, scanning chunks, hitting a database synchronously, looping every tick, takes its time straight out of your 50ms. One poorly-written plugin can dominate the whole budget.

## Three different problems called "lag"

This is the part that saves you hours.

Low TPS is a server problem. The server can't finish its ticks inside the budget, so the whole simulation slows down for everyone at once. If mobs are stuttering and blocks break with a delay for every player, that's low TPS, and the fix is on the server: reduce what the tick has to do, or run on hardware that finishes it faster.

High ping is a network problem, and only you feel it. Ping is the round-trip time for data between your machine and the server. If it's high, the server is ticking along fine at 20 TPS, but your inputs take too long to arrive and its responses too long to come back, so the game feels rubber-bandy for you specifically. Other players may be perfectly smooth. The fix is about the connection, and switch latency inside a datacentre has nothing to do with it, because your ping is milliseconds of internet distance while switching is nanoseconds.

Client-side FPS is a third, separate thing. Frames per second is how fast your own computer draws the game. Low FPS makes the picture stutter even when the server is at a healthy 20 TPS and your ping is fine. That's your graphics settings, render distance and hardware, and no server tuning changes it. Worth ruling out first, because it's easy to blame the server for a problem on your own machine.

Ask one question: is it happening to everyone (server, low TPS), just me over the wire (network, high ping), or just me on screen (client, low FPS)? The answer points straight at where to look.

## How to measure it

The tools are good, so guessing is optional.

/tps in-game gives a quick read of the current ticks per second on most server software. At or near 20, the server is keeping up. Dropping into the teens, the tick is over budget.

MSPT is the more useful number, and most modern server software shows it, often alongside /tps or in the timings output. Watch the average and the peaks. A low average with nasty spikes usually points at chunk loading or a periodic plugin task, while a steadily high average points at a constant cost like entities or redstone.

spark is the profiler to reach for when you want to know what specifically is eating the budget. It samples the server and shows where the tick's time is actually going, down to the plugin or the type of work. When /tps says there's a problem and you want the cause rather than a guess, spark is how you find it. It runs on Paper, Purpur, Fabric, Forge and NeoForge, so it covers plugin and modded servers alike, and Paper-family servers from 1.21 onwards ship it built in.

Once you know which of the three problems you have and where the time is going, the fix is usually obvious. For a heavy tick, our [Minecraft lag checklist](https://dedicatedmc.io/blog/minecraft-lag-checklist) walks through the steps in order. If the hardware can't finish the tick fast enough, [choosing a CPU for Minecraft](https://dedicatedmc.io/blog/choosing-a-cpu-for-minecraft) explains why per-core speed and cache are what move MSPT.

Worth saying plainly: host tuning only ever addresses the third of those three problems, and for most servers it is overkill even there. We do it because a host that is demonstrably not the cause makes the other two far easier to find.

If you'd like to run on hardware picked for a low, flat MSPT, that's what our [Minecraft hosting](https://dedicatedmc.io/minecraft-server-hosting?ref=dedicatedmc.io) is built for.