Fix Minecraft Server Lag: TPS, spark and Paper Settings
Tell server lag from connection lag, read TPS and MSPT, find the cause with spark and fix it with pre-generation, distances and a few Paper settings.

To fix Minecraft server lag, first check whether it is the server or the connection. If TPS stays at 20 and only one player stutters, it is their ping. If TPS drops below 20, a tick is taking longer than 50 ms: profile with spark, then fix the cause it shows, usually chunk generation, entities or redstone.
The steps below work on any Java server. If you host with us, they happen in the panel of your Minecraft Java server; if you are still setting one up, start with our free Minecraft server guide. Memory gets its own guide: how much RAM a Minecraft server needs.
- Blocks reappear, mobs freeze, everyone lags at once: server lag. Look at TPS and MSPT.
- One player rubber-bands while others are fine: connection lag. Check their ping and the server's region.
- Find the cause:
spark profiler start, play through the lag, thenspark profiler stopand open the link. - Usual fixes: pre-generate the world, lower Simulation distance, thin out mob farms and hoppers, then Paper's world config.
- RAM last: more memory only helps when the heap is full.
1. Server lag or connection lag?
Minecraft runs a game loop called a tick. The Minecraft Wiki says the game "normally runs at a fixed rate of 20 ticks per second, so one tick happens every 0.05 seconds (50 milliseconds)", and that "the TPS can be maintained at 20 only if the MSPT is no higher than 50". MSPT is milliseconds per tick, the time the server really spends on each one.
| What you see | Kind of lag | First check |
|---|---|---|
| Mined blocks come back, mobs and crops freeze, for everyone | Server (low TPS) | TPS and MSPT |
| One player teleports back while others play normally | Connection (ping) | That player's ping |
| Short freezes every few seconds | Lag spikes | spark tick monitor |
| Low FPS, the game itself stutters | Client | The player's graphics settings |
Connection lag depends on distance: when you create a server with us, the wizard measures your latency to each region and asks you to pick "the region closest to most of your players". The rest of this guide is about server lag.
2. Read TPS and MSPT
On 1up you have three places to look:
- Overview. The server card shows "TPS · tick ms". The hint reads "TPS: ticks per second. 20 is perfect; below 15 you will feel lag."
- Statistics. The "Performance · TPS" chart shows whether the drops line up with peak hours or with one player's session.
- Console. On a Paper server,
tpsandmsptare accepted. PaperMC's command reference saystpsgives the TPS "from the past 1, 5, and 15 minutes", andmsptthe average, min and max MSPT "from the last 5, 10, and 60 seconds". On any server,tick queryshows the average and the percentiles of time per tick.
MSPT near or above 50 means the server is running out of time.
3. Find the cause with spark
spark is the profiler Paper recommends; Paper's profiling page says "Starting with 1.21, Paper bundles the spark profiler", so a Paper 26.x server has it with nothing to install. It also adds that "the issue you are diagnosing must be actively occurring", so profile while the lag is happening.
Our console accepts spark profiler with start, info, stop, open and cancel, and spark health, and runs them as the server, so you need no operator status:
- When the lag starts, type
spark profiler start. - Play for a few minutes so the laggy ticks are recorded.
- Type
spark profiler stop. spark uploads the report and prints a link to its viewer. - In the viewer, open the "Server thread", which spark's viewer guide calls "the main thread responsible for running the game", and expand the branch with the highest percentage. Time spent sleeping is healthy, the guide says. A plugin's name, a type of entity or a block such as a hopper near the top is your suspect.
For spikes, spark's lag spike guide explains why averages hide them and gives two tools: /spark tickmonitor --threshold-tick 50 reports "any tick which exceeds 50 milliseconds", and /spark profiler start --only-ticks-over 150 records only the slow ticks. Those flags are not in our console's list, so make yourself an operator on the Players page and run them from game chat.
4. Fix the usual causes
The wiki's tick page names the classic culprits: hoppers, which "constantly try to search for items above them"; redstone, especially dust, which causes "excessive amounts of block updates"; large numbers of mobs; and a high random tick speed. Match what spark showed to this table:
| spark points at | Fix |
|---|---|
| Chunk generation, world loading | Pre-generate the world (below) |
| Entities, mob AI, item entities | Thin out the farm, kill dropped items, light up dark caves near bases |
| Hoppers | Cover them with a solid block or a composter, as the wiki suggests; use water streams for bulk |
| Redstone, block updates | Turn clocks off when unused; try Paper's alternative redstone (step 5) |
| One plugin | Update or remove it; check its page for known issues |
Pre-generate the world. Exploring makes the server generate new chunks while it ticks, a classic source of spikes. The Chunky plugin "pre-generates chunks, quickly and efficiently" and can pause and resume. Run it while nobody is playing, then add a world border with worldborder set (our console accepts it) so nobody leaves the generated area. Our list of the best plugins for a friends server covers Chunky and its border add-on.
Lower simulation distance. In Server → Performance, Simulation distance goes from 4 to 16 and defaults to 8 on our servers. It decides how far from each player mobs, farms and crops keep ticking; dropping it from 8 to 6 cuts the ticking area per player from 17 × 17 to 13 × 13 chunks, 289 to 169. View distance only decides how much of the world is sent to players; those chunks do not keep mobs and farms running. Both apply on restart.
Find crowded chunks. On Paper, paper chunkinfo in the console shows the loaded chunks of each world by type, and paper mobcaps shows the mob caps. A farm with hundreds of animals in one chunk shows up here.
5. Paper settings that help
These live in config/paper-world-defaults.yml, which you open in Files (the editor opens .yml files) and which apply after a restart. Defaults and effects come from Paper's world configuration reference:
| Key | Default | Try | Trade-off |
|---|---|---|---|
environment.optimize-explosions | false | true | None noted; it "speeds up explosions significantly" |
misc.redstone-implementation | VANILLA | ALTERNATE_CURRENT | Changes how redstone dust behaves; test your contraptions |
misc.update-pathfinding-on-block-update | true | false | "almost no noticeable effect", per Paper; helps with farms |
hopper.ignore-occluding-blocks | false | true | Hoppers ignore containers inside solid blocks |
chunks.entity-per-chunk-save-limit | -1 (no limit) | e.g. arrow: 16 | Extra arrows or orbs in a chunk are not saved |
Paper also offers hopper.disable-move-event: true, which "dramatically improves hopper performance but will break protection plugins". Leave it off if you use GriefPrevention, WorldGuard or CoreProtect.
Do not raise Max tick (ms) (max-tick-time, default 60000) to stop crashes. The server.properties reference explains that after this limit "the server watchdog stops the server": a raised limit hides a frozen server, it does not make ticks faster.
6. When more RAM is the answer
Run spark health with everyone online. If the heap stays near its maximum and garbage collection runs constantly, raise Allocated RAM in Server → Performance. If the heap has room and MSPT is still high, more RAM will not help; go back to step 3.
On 1up, Free and Casual have 2 GB, Starter 4 GB and Pro 8 GB; see pricing.
NOT AN OFFICIAL MINECRAFT SERVICE. NOT APPROVED BY OR ASSOCIATED WITH MOJANG OR MICROSOFT.
Tested on Paper for Minecraft: Java Edition 26.3, the default version in our wizard, 2026-10-13. Commands and defaults come from the pages linked above and our panel code; we did not benchmark each Paper setting.
Change log
- 2026-10-25: plan figures updated from the live plans list.
- 2026-10-13: first version.
Frequently asked questions
NOT AN OFFICIAL MINECRAFT SERVICE. NOT APPROVED BY OR ASSOCIATED WITH MOJANG OR MICROSOFT.