How to diagnose lag on Minecraft server?

High ping of the player, low FPS on the client and long tick time on the server are separate problems. First find out which metric is changing with the problem.

Step by step

  1. Note the number of players and worlds affected when the issue occurs. Measure TPS and MSPT on the server and ping and FPS on the player side separately.

  2. If MSPT is rising, get spark profile at the same time. If there is a network problem, compare the ping of players on different networks and separate the proxy and back server path.

  3. Select the single reason in the report that took the most time. For example, plan world pre-production for increased chunk production during new area exploration.

  4. After the change, measure again with a similar number of players. Even if the average improves, also check the long ticks for short stutters that players feel.

Keep in mind

If you change every setting at the same time, you won't be able to determine what works.

Source and tools