FreeGameHost.xyz

What is TPS in Minecraft? (And How to Fix Low TPS)

By FreeGameHost Team  •  Updated May 2026  •  7 min read
Beginner-friendly Fixes included Common causes explained

If you've ever noticed mobs rubber-banding, redstone behaving strangely, or players complaining about lag even though the server RAM looks fine — TPS is almost certainly the culprit. Understanding what TPS means and how to fix it is the single most valuable skill for any Minecraft server owner.

What does TPS mean?

TPS stands for Ticks Per Second. Minecraft doesn't run as a continuous simulation — it updates in discrete steps called ticks. Everything that happens in the game — mob AI decisions, redstone signals, crop growth, block physics, player movement processing, hopper transfers — all of it happens once per tick.

The target is 20 ticks per second. That means the game processes one tick every 50 milliseconds. At 20 TPS, the game runs at full speed and everything feels smooth.

When the server can't process each tick in under 50ms — because there's too much to compute — ticks start taking longer. Instead of 20 per second, you get 18, or 15, or 10. This is a TPS drop, and it makes the entire game slow down — not just for one player, but for everyone on the server simultaneously.

Key difference from RAM lag: TPS is a CPU/processing problem, not a memory problem. You can have 8GB of RAM free and still have terrible TPS if the server is trying to compute too much per tick. Checking RAM alone will not diagnose TPS lag.

What is MSPT?

MSPT stands for Milliseconds Per Tick — it's the flip side of TPS. Each tick has a 50ms budget (since 1000ms ÷ 20 ticks = 50ms per tick).

MSPT tells you how much of that budget each tick is consuming:

Modern profilers like Spark report both TPS and MSPT, and MSPT is often the more useful number because it gives you a continuous warning before TPS actually drops.

TPS values explained

TPS
Status
What players experience
20 TPS
Perfect
Smooth gameplay, no lag. Full-speed redstone, mob AI, and crop growth.
18–19 TPS
Good
Barely noticeable. Experienced players may notice very slight delay on fast redstone.
15–17 TPS
Moderate lag
Noticeable lag. Mobs feel sluggish, block interactions delayed, redstone may misfire.
10–14 TPS
Severe lag
Obvious and frustrating. Mobs teleport, inventories lag on open, players may disconnect.
Under 10 TPS
Server in distress
Nearly unplayable. Mass disconnections likely. Immediate investigation required.

How to check TPS on your server

On Paper / Purpur servers (recommended)

Paper adds a built-in /tps command. Run it from the console or as an op in-game:

TPS from last 1m, 5m, 15m: 19.98, 19.91, 18.42 Milliseconds per tick from last 1m, 5m, 15m: 12.45, 13.02, 18.87

The three numbers are averages over the last 1 minute, 5 minutes, and 15 minutes. A brief 1-minute spike is less concerning than a sustained 15-minute average drop.

Using Spark (the best option)

Spark is a free performance profiler plugin that gives you far more detail than /tps alone. Install it like any other Paper plugin, then:

/spark tps — Live TPS and MSPT readout /spark profiler start — Begin recording a performance profile /spark profiler stop — Stop and generate a shareable report URL

The profiler report shows exactly which operations are consuming the most tick time — specific plugins, entity types, chunk loading — so you know precisely where to focus. It's the difference between knowing that you have a problem and knowing why.

On vanilla servers

Vanilla Minecraft has no built-in /tps command. Your only option is to install EssentialsX (which adds /tps) or switch to Paper — which is recommended for any server with more than 2–3 players regardless of TPS concerns.

What causes TPS to drop?

In order of how often they're the actual culprit:

Too many entities
⬤ High impact

Every loaded mob, animal, item drop, arrow, and minecart requires processing every tick. A single AFK fish farm running for hours can generate thousands of dropped items. Unmanaged mob farms stack hundreds of mobs in a small space. Spark will flag this as "entity tick" consuming excessive MSPT. Fix: kill excess entities with /killall or entity-culling plugins; set mob caps in Paper config; install RoseStacker for stacking.

Hopper networks
⬤ High impact

Hoppers check for items to transfer every tick — even when there's nothing to move. A large hopper sorting system with dozens of hoppers is doing thousands of item checks per second. Fix: use Paper's disable-move-event in the config, set hopper cooldown higher, or replace hopper sorters with more efficient designs using comparators to only activate hoppers when full.

Lag-inducing plugins
⬤ High impact

A poorly written plugin that runs a task every tick (or worse, a database query every tick) can alone tank TPS. Spark's profiler will show plugin-specific processing times in its report. Fix: run Spark, identify the offending plugin by name in the report, then update it, replace it, or remove it. Common culprits: old versions of WorldGuard, economy plugins with per-tick balance lookups, and anti-cheat plugins misconfigured with too-aggressive checks.

Complex redstone
⬤ Medium impact

Large redstone clocks, massive flying machine arrays, and complex contraptions generating hundreds of block updates per second consume significant tick time. Paper includes optimisations for redstone, but there are limits. Fix: throttle redstone clocks, limit the area they affect, or replace redstone-heavy designs with plugin-based alternatives where possible.

Chunk loading — too many loaded chunks
⬤ Medium impact

Every loaded chunk has to be simulated each tick. View distance controls how many chunks around each player are loaded. At view-distance=16 with 10 players, you're simulating thousands of chunks simultaneously. Fix: reduce view-distance to 8–10 and simulation-distance to 4–6 in server.properties. Players rarely notice the difference below 10 chunks.

World generation on the fly
⬤ Lower impact (spikes only)

When players explore new areas, the server has to generate terrain in real time. This causes temporary TPS spikes rather than sustained drops. Fix: pre-generate your world using the Chunky plugin before opening the server to players. Define a world border and pre-generate everything within it — players will never trigger on-the-fly generation within that area.

How to fix low TPS — step by step

Step 1: Install Spark and take a profile

Download Spark from spark.lucko.me and install it as a plugin. Run /spark profiler start, let it run for 3–5 minutes while the lag is occurring, then /spark profiler stop. Open the generated report URL. The top entries in the flame graph are your biggest tick-time consumers — start there.

Step 2: Kill excess entities

If Spark shows "entity tick" as a top consumer, run /paper entity or install ClearLag to see your entity counts per chunk. Kill excess mobs with /kill @e[type=!player] carefully, or use ClearLag's warnings + auto-clear on a schedule. Set Paper's per-world mob caps lower in paper-world-defaults.yml.

Step 3: Reduce view and simulation distance

In server.properties, set view-distance=8 and simulation-distance=5. Restart the server. This is the fastest single change to improve TPS on an overloaded server. Fine-tune upward from there based on what your hardware handles.

Step 4: Pre-generate your world with Chunky

Install the Chunky plugin and set a world border: /chunky radius 5000 then /chunky start. This pre-generates a 5000-block radius around spawn. Generation runs in the background and takes 10–30 minutes depending on server speed. After this, no new terrain generates within that radius — eliminating generation-spike lag entirely.

Step 5: Optimise Paper's config

Paper exposes many performance knobs not available in vanilla. Key settings in paper-world-defaults.yml: reduce max-entity-collisions from 8 to 2, set disable-chest-cat-detection to true, enable armor-stands-tick false if you use decorative stands, and increase hopper cooldown. The full recommended config is documented at docs.papermc.io.

Step 6: Profile and remove or update problem plugins

If Spark names a specific plugin as consuming significant tick time, check its SpigotMC or Modrinth page for recent updates. Outdated plugins are a common TPS killer. If no update exists, consider alternatives — for example, older versions of ShopGUI+ had per-tick economy sync issues that killed TPS on busy economy servers.

TPS vs. ping — what's the difference?

Players often confuse TPS lag with ping lag — they both feel like "lag" but have completely different causes and solutions.

If one player is lagging and everyone else is fine: ping problem. If everyone is lagging at once: TPS problem. This distinction saves hours of debugging in the wrong place.

Important: Your server's RAM usage has almost no direct effect on TPS. Low TPS with high RAM usage usually means entities or plugin overhead. Low TPS with low RAM usage usually means CPU is the bottleneck. Check Spark before assuming anything — guessing is almost always wrong.

Frequently asked questions

Can too many players cause TPS to drop?
Players themselves don't consume much tick time — it's what they do that causes drops. A server with 50 players doing nothing lags less than a server with 5 players each running a massive mob farm. That said, more players means more chunks loaded and more entities active, which indirectly leads to TPS drops as the server scales.
Why does my TPS drop at the same time every day?
Scheduled tasks are a common cause — server backups, ClearLag sweeps, plugin data saves, or Minecraft's own autosave (which runs every 5 minutes by default). Check if the timing matches your backup schedule. Stagger heavy tasks so they don't all run simultaneously.
Does adding more RAM fix TPS?
Rarely. TPS is primarily limited by CPU processing speed (single-core performance specifically — Minecraft is largely single-threaded). RAM helps if the server is swapping to disk due to insufficient memory, but above 4–6GB for a standard server, adding more RAM typically does nothing for TPS. Optimise entities, plugins, and chunk loading instead.
What's the difference between TPS and FPS in Minecraft?
FPS (Frames Per Second) is client-side — it measures how fast your own computer renders the game visually. TPS is server-side — it measures how fast the server processes the game. You can have 144 FPS on your screen while the server is running at 10 TPS (it just updates slowly). You can also have 8 FPS on your PC while the server runs perfectly at 20 TPS. They're completely independent metrics.

Want a Minecraft server that starts at 20 TPS and stays there? Paper is pre-installed on FreeGameHost.

Create Free Minecraft Server →

Related: How to fix Minecraft server lag  •  Best Minecraft server plugins  •  What is server CPU usage?