Skip to content

Guides

How to Fix Minecraft Server Lag and Optimize Paper

Separate slow ticks from network and client problems, use a representative spark profile and verify each configuration change.

MinecraftPerformancePaperLagspark
Published
August 24, 2026
Reading time
4 min read
Updated
September 25, 2026

Fix Minecraft server lag by identifying whether the delay comes from simulation ticks, network delivery or the player’s client. On Paper, capture a spark profile during the problem and change the work the profile identifies. A copied optimization configuration can alter gameplay without addressing the actual bottleneck.

Which kind of lag is happening?

Use symptoms to choose the first investigation
ObservationCheck first
World simulation slows for many playersServer TPS/MSPT and a busy-period profile
One player has delayed actions but ticks are healthyThat client and its network path
Low frame rate while server metrics remain healthyClient rendering, mods and local resources
Brief pauses during travel or savesChunk generation, I/O, garbage collection and scheduled work
Server disappears or restartsCrash logs, process limits and host events

Read TPS and MSPT together. At the conventional 20 TPS target, sustained tick work must fit the normal 50 ms budget, but an average can hide spikes. Modified tick rates and region-threaded software need their own interpretation.

1. Capture the problem with spark

Paper includes spark on supported modern releases, beginning with Minecraft 1.21. Verify your build before adding another profiler. Record game/server/Java versions, extensions, player count, activity and effective distance settings.

/spark tps
/spark profiler start --timeout 120

These are in-game administrator commands; use the console’s expected command format if running there. Capture representative activity during the two-minute example interval. Keep a healthy comparison sample and review reports for sensitive information before sharing them.

2. Follow the expensive work

Turn evidence into one controlled experiment
Profile or correlated evidenceCandidate investigation
Extension callbacks dominateResource version, configuration and unnecessary repeated work
Entity processing dominatesEntity counts, active areas and the gameplay requiring them
Chunk generation dominates during explorationTravel workload, generation settings and planned pregeneration
Save/I/O pauses align with backupsStorage latency and competing operations
Memory pressure or long collection pausesHeap, total limit and retained growth

A high percentage in a sampled call tree identifies where observed execution time accumulated; read the surrounding work and sampling context before naming a cause. Waiting, asynchronous work and a symptom outside the captured interval may need additional evidence.

3. Optimize Paper without breaking the world’s rules

  1. Back up the exact configuration and record a baseline.
  2. Select one change justified by the profile, using documentation for the installed release.
  3. Check inherited defaults and per-world overrides rather than assuming one file controls every world.
  4. Repeat similar gameplay and compare tick-time distribution, errors and affected mechanics.
  5. Keep the change only if its benefit meets the community’s goals; otherwise restore the previous value.

Start with view versus simulation distance if loaded or simulated areas are the identified work. Entity activation, spawning and other world settings can change farms or behavior; avoid treating the lowest possible values as a universally correct preset.

Pregeneration is a workload decision

Preparing a bounded area can move some generation work out of active play, but it consumes disk and CPU and does not eliminate every future loading task. Use a compatible tool, a defined boundary and a maintenance plan. Observe free space and performance while it runs rather than launching an unlimited job beside peak gameplay.

4. Upgrade only the constraint that remains

If required tick work remains too slow, use the CPU guide. If memory failures are present, use OOM diagnosis. Adding heap will not automatically fix an expensive serial task, and more cores will not automatically shorten it.

Keep before/after evidence and the final configuration with the deployment record. Explore the Minecraft topic hub for supporting guides and compare Minecraft hosting when the measured workload needs different resources. No performance gain is claimed here without a workload-specific test.

Ready when you are

Put it into practice.

Everything in these guides applies to servers you can deploy today, on hardware we publish the specs for.

Hardware we trust. Software you know.

PREPARING YOUR EXPERIENCE