Direct answer

Measure a normal, repeatable workload before changing configuration. Record both median and high-percentile MSPT along with players, plugin/mod set and world conditions. An empty-server result is not a production baseline.

Capture the baseline

  1. Write down software/Minecraft/Java versions, plugin and mod list, CPU allocation, memory limits, active worlds and view/simulation distance.
  2. Choose a realistic activity period such as a busy hour or known farm test; record player count and what was happening.
  3. Run /spark tps, then /spark profiler start --timeout 120 during that period. Save the report and log timestamps.
  4. Note process CPU, memory pressure and any scheduled backups or world generation jobs.

Control the comparison

When testing an optimization, change only one relevant setting at a time, restart only when required, and repeat a comparable workload. Keep the previous value and a usable backup. A lower entity count caused by changing mechanics is not equivalent to a free CPU optimization.

Version and safety notes

Thresholds and profiler commands reflect normal Paper-style behavior; forks and regionized servers can require different interpretations.

Interpret the result

20 TPS can coexist with little spare tick headroom. For a regular 20 TPS tick loop, sustained MSPT around 50 ms leaves little room for spikes; compare median with 95th percentile and worst ticks. Folia has parallel regions and requires region-aware interpretation.

References

Check documentation for the versions and hosting environment you actually run.

Was this article helpful?
Help us improve this article

Tell us what is missing, unclear, outdated, or incorrect. You can also suggest something we should add.

What could we improve?
Do not include passwords, server IPs, or other private information.0 / 1000