Pirdel / Guides / Minecraft

“Can't keep up! Is the server overloaded?” What it means and what to do

This message means the server could not finish its ticks on time and has fallen behind by the number of milliseconds and ticks it reports. A one-off at start-up or while someone explores is usually harmless, but a message that keeps coming back means something is using too much of every tick, and a Spark profile will show what.

It appears in the server console and log, and looks like this, with different numbers each time: Can't keep up! Is the server overloaded? Running 5000ms or 100 ticks behind. The numbers are an example, not a limit.

What it looks like in a Spark report

The message is about time, so the numbers to open in your Spark report are the MSPT ones. Every tick has a 50 millisecond budget, so 50 ms is one tick. “Running 5000ms or 100 ticks behind” is the same amount of time said two ways.

  • In the tiles at the top: a high slowest tick (the right-hand MSPT number) with a healthy median points to spikes. A median close to or above 50 ms points to steady overload.
  • In the timeline graph: find the time the message appeared in your console and look at MSPT then. One tall spike with a flat line either side is a one-off. A line that sits above 50 ms for long stretches is real overload.

If you are not sure what you are looking at, start with how to read a Spark report.

What the message means

The server does its work in ticks, 20 a second. When a tick takes much longer than 50 ms, the server falls behind where it should be, and the game prints this warning to say by how much. It is a warning, not a crash. The server carries on, but players are seeing lag while it is behind.

One message tells you very little. How often it appears, and what the server was doing when it did, tells you a lot.

A one-off, or real lag?

Some causes are short and do not need a fix. Others come back every few minutes. Look at when it happens:

  • Just after start-up. The server is still loading chunks and warming up, so slow ticks in the first few minutes are normal. Wait and see whether it repeats.
  • When someone uses /locate, throws an eye of ender or opens an explorer map. A structure search stops the whole server for a moment. See server freezes on /locate and explorer maps.
  • When players explore new ground. Making new terrain is one of the most expensive things a server does. See chunk generation lag and pre-generating with Chunky.
  • When the world saves. Saving a lot of chunks at once can cause a spike.
  • Over and over during normal play, with TPS below 20. That is real overload, and it needs a profile.

Start with a profile that can show the cause

Take a fresh profile once the server has been up for a while

Safe

The first 20 to 30 minutes after a restart are not typical. The server is still loading chunks and warming up.

  1. Leave the server running at least half an hour.
  2. Run /spark profiler start, wait 10 to 15 minutes while the lag is happening, then /spark profiler stop.
  3. Send that new link.

Take a longer profile during the lag

Safe

The profile is short or does not show where the time goes, so the cause is a guess.

  1. Run /spark profiler start, wait 10 to 15 minutes while the lag is happening, then /spark profiler stop.
  2. Send that new link.

Then deal with what the profile shows

The biggest branch in the server thread tree is your first suspect. Common ones, and where to go next:

  • Lots of entities in one place: mob farms and hopper minecarts, villagers, or hostile mobs that never despawn.
  • Commands or functions running every tick: datapack tick functions or command blocks.
  • One mod using a large share: for example Cobblemon.
  • The server lags but CPU looks low: one thread is the limit.
  • Settings that reduce the work: view distance and simulation distance.

What to leave alone

  • Adding more memory before you have checked how much the server uses. If heap use is well below the maximum, more memory will not help.
  • Adding more CPU cores. The main loop runs on one core, so extra cores do not speed it up.
  • Paying for a bigger plan before you have a profile that shows the cause.
  • Reacting to a single message. One at start-up is normal. Look at how often it repeats.

Paste your Spark link

Get a plain-English diagnosis, ranked fixes labelled Safe, Test first or Risky, and a reply you can send. Free, read-only, no logins.

By continuing you agree to the terms and privacy notice. We keep the diagnosis, not your raw profile.

Common questions

Will “Can't keep up” crash my server?

No. It is a warning that the server has fallen behind, and the server keeps running. Players feel it as lag while it is behind, and if it keeps repeating it is worth finding the cause.

What do the milliseconds and ticks in the message mean?

They are the same amount of time. One tick is 50 ms, so running 5000 ms behind is running 100 ticks behind, which is five seconds of work the server has not caught up on.

Does “Can't keep up” mean I need more RAM?

Usually not. Lag in the main loop is normally about what the server is doing each tick, not about memory. A Spark profile shows how much memory is actually in use, so check that before paying for more.