Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

A Timings report can show which server tasks consumed tick time, but on modern Paper it is a legacy diagnostic. Paper 1.21 bundles the spark profiler, disables Timings by default, and recommends spark instead. If you already have an old Timings link, read it as a hierarchical performance snapshot; if you are investigating current lag, capture a spark profile and record MSPT, TPS, player count, and in-game activity at the same time.

The key to either format is to find expensive work at the correct level: distinguish a task’s own time from time spent in code it calls, check how often it ran, and compare the result with what players were doing during the capture. A large percentage alone does not prove that a plugin or event is the root cause.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Timings or spark: choose the right report first

Paper’s command reference marks Timings as deprecated and identifies spark as its replacement. Timings has been unmaintained for several years, and the Paper tracking discussion notes that enabling it can impose a non-negligible performance cost. Spark also provides an asynchronous profiling mode described as lighter during capture. That makes spark the appropriate starting point for a live Paper server.

Question Timings spark
Support status on current Paper Legacy and deprecated; disabled by default in Paper 1.21. Bundled and recommended by Paper 1.21 and later.
Capture overhead Can add a noticeable cost while enabled. Its asynchronous mode is intended to reduce profiling impact.
Output Older web reports with hierarchical timing columns. Current profiler reports and live server measurements.
Best use Investigating an existing legacy report or an older server build. Diagnosing present-day lag and verifying a fix.

The familiar /tps and /mspt commands still work on Paper, but the command documentation treats them as superseded by spark. Use them for a quick baseline when needed, then collect a profile rather than relying on the TPS headline alone.

#1 Best Overall
Minecraft | Java & Bedrock Deluxe Collection | Windows Digital Code
  • DELUXE COLLECTION — Includes Minecraft: Java & Bedrock Edition, three Bedrock add-ons, three exclusive Character Creator items, and 700 Minecoins.
  • CREATE YOUR WORLD — Build whatever you imagine in an infinite world that’s unique in every playthrough.
  • EXPLORE AND CRAFT — Discover biomes, resources, and mobs, then craft your way through a sandbox world filled with surprises.
  • SURVIVE THE ADVENTURE — Face mysterious foes, travel across exciting landscapes, and venture into perilous dimensions.
  • PLAY TOGETHER — Play cross-platform with friends in Bedrock Edition on console, mobile, and PC, or join community servers in Java Edition on PC, Mac, and Linux. Online console multiplayer requires a platform-specific subscription (sold separately).

What a Timings report actually measures

A report is a sample of server work over a defined window. It is not a permanent ranking of the worst plugin, nor is it a frame-by-frame recording of every player action. The report groups work into a tree: a broad server task can contain world, entity, scheduler, or plugin entries beneath it. Child entries explain where a parent spent its time.

Because the report is hierarchical, adding every visible percentage can double-count the same work. A parent’s total includes work performed by its children. Read from the top-level category to the deepest expensive child, and do not sum percentages from different levels as if they were independent.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Legacy column meanings

A third-party Timings guide describes four commonly displayed columns as Pct Total, Pct Tick, Avg, and Count. Labels and calculations can vary by server version, so treat these definitions as a practical reading aid rather than a guaranteed Paper specification.

Column Practical interpretation How to use it
Pct Total The entry’s share of measured time across the report window. Use it to find where the capture spent time overall.
Pct Tick The entry’s share of tick work represented in the report. Use it to connect the entry with delayed ticks, while checking the report’s own labels and scope.
Avg Average time per recorded invocation or sample, usually shown in a small time unit. Pair it with Count. A costly call repeated rarely is a different problem from a cheap call repeated thousands of times.
Count Number of times the entry was observed during the capture. Look for high-frequency work, not only the largest average.

The most important comparison is usually total time versus self time. Total time includes work performed below an entry in the tree; self time is the work attributed directly to that entry. A plugin can have a high total because it repeatedly calls chunk, entity, or event code, while its own self time is small. Conversely, a high self time points more directly to the named operation.

Rank #2
Minecraft | Java & Bedrock Ultimate Collection | Windows Digital Code
  • ULTIMATE COLLECTION — Includes Minecraft: Java & Bedrock Edition, five Bedrock add-ons, five exclusive Character Creator items, and 1000 Minecoins.
  • CREATE YOUR WORLD — Build whatever you imagine in an infinite world that’s unique in every playthrough.
  • EXPLORE AND CRAFT — Discover biomes, resources, and mobs, then craft your way through a sandbox world filled with surprises.
  • SURVIVE THE ADVENTURE — Face mysterious foes, travel across exciting landscapes, and venture into perilous dimensions.
  • PLAY TOGETHER — Play cross-platform with friends in Bedrock Edition on console, mobile, and PC, or join community servers in Java Edition on PC, Mac, and Linux. Online console multiplayer requires a platform-specific subscription (sold separately).

Prepare a capture that can answer a question

Before opening a report, define the symptom. “The server feels laggy” is too broad to test. Decide whether you are investigating steadily low TPS, short freezes, block-breaking delays, entity-heavy areas, save-related pauses, or lag that appears only at a particular player count. The question determines the useful capture window.

  • Confirm the server software and version, including whether it is Paper 1.21 or newer.
  • Record the approximate player count and what players were doing: exploration, chunk generation, farms, redstone, combat, or commands.
  • Record the time and duration of the lag, including whether it coincided with an autosave, restart, scheduled job, or world border activity.
  • Check both TPS and MSPT. TPS can remain near its headline value while individual ticks are already close to the available budget.
  • Do not change several plugins, settings, or worlds before profiling; otherwise you cannot identify which change mattered.

A commonly used operational budget is 50 ms per tick, corresponding to 20 ticks per second. The 50 ms figure comes from practical server-analysis guidance rather than a published Paper performance guarantee, so use it as a diagnostic threshold, not as a promise that every server will sustain 20 TPS under every workload.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Capture a current profile with spark

Use Paper’s documented timed profile

  1. Start the capture from the server console or an administrator account with /spark profiler start --timeout 600.
  2. Leave the server in the workload that produces the symptom. Do not create an artificial empty period unless you are measuring idle overhead.
  3. During the ten-minute window, note player count, dimensions in use, farms or machines running, exploration, and the exact moment a freeze occurs.
  4. When the timeout ends, open the report URL returned by spark and match its time range with your notes.

The official Paper example uses a 600-second timeout. A separate hosting guide recommends roughly three minutes so autosave and periodic plugin work are included without producing an unnecessarily large sample. These durations answer different needs: use the documented ten-minute capture for a broad baseline, and choose a shorter window only when you are deliberately isolating a brief event. A short profile that misses the lag is not evidence that the server is healthy.

Capture the same scenario again

After making one change, repeat the profile with a similar player count and workload. Compare MSPT distribution, the expensive tree branches, and the timing of the spike. A second report taken under different activity cannot reliably prove that a configuration change helped.

Rank #3
Minecraft | Standard Edition | XBOX Digital Code
  • CREATE YOUR WORLD — Build whatever you imagine in an infinite world that is unique in every playthrough.
  • EXPLORE AND CRAFT — Discover biomes, resources, and mobs, then craft your way through a sandbox world full of surprises.
  • SURVIVAL ADVENTURES — Face mysterious foes, travel across varied landscapes, and venture into perilous dimensions.
  • PLAY TOGETHER — Play solo or join friends in local split-screen and cross-platform play across console, mobile, and PC. Online multiplayer supports up to 8 players.
  • COMMUNITY PLAY — Connect with players on community servers, or subscribe to Realms Plus (sold separately) to play with up to 10 friends on a private server.

Read a legacy Timings report in a reliable order

  1. Check the capture window. Confirm that the report includes the incident. A report made during a quiet period cannot explain a raid farm that ran an hour earlier.
  2. Check sample context. Note players, worlds, dimensions, and scheduled activity. A world-generation test and an established survival world produce different profiles.
  3. Start at the broadest expensive category. Follow the largest relevant parent into its children instead of jumping to a plugin name in isolation.
  4. Compare total and self time. High total with low self usually means the entry is a caller or coordinator; inspect the child that consumes the time.
  5. Check Count and Avg together. High Count with modest Avg suggests repeated work. Low Count with a large Avg suggests occasional stalls, synchronous I/O, or a large one-off operation.
  6. Separate averages from spikes. An average can hide one very long tick. If players report freezes but the average looks normal, use a spike-oriented spark capture or a longer sample.
  7. Map the entry to an action. Ask which player behavior, world, entity group, plugin feature, or scheduled task could have caused it during the same minutes.
  8. Form one testable hypothesis. For example, “the iron farm’s entity count causes repeated entity-tick work in the overworld,” not “the server is slow.”

Patterns that commonly mislead administrators

A plugin appears at the top

A plugin entry at the top is a lead, not a verdict. Its total may include expensive game work it triggered. Drill into child entries and compare self time. If the plugin’s own handler is cheap but its calls produce most of the total, investigate the triggered operation, such as entity scans, block searches, chunk access, or event frequency.

One entry has a high percentage but low Count

This pattern usually indicates an infrequent but expensive operation. Check whether the timestamps align with the reported freeze. World saves, large structure updates, mass entity changes, and synchronous external work can look harmless in a broad average while causing a noticeable pause when they occur.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Count is enormous but Avg is tiny

Repeated work can dominate the report even when each invocation is inexpensive. Look for per-entity, per-block, per-player, or per-tick loops. Reducing the number of objects scanned, increasing a task’s interval, narrowing a search area, or removing unnecessary listeners may help more than optimizing one invocation.

Totals look acceptable but players still report freezes

Check the sampling window and spike behavior. A ten-minute average can dilute a single five-second stall. Match the report’s timeline to player reports, autosaves, restarts, and scheduled jobs. If the incident is intermittent, a targeted capture is more useful than repeatedly collecting broad averages.

Rank #4
Minecraft
  • Skins! We have biome settlers, city folk, town folk, and more!
  • The Nether and all its inhabitants. Fight Ghasts and make friends with Pigmen
  • Cross platform play for up to five players between Pocket Edition and Windows 10
  • Revamped touch controls, controller support, and a controller mapping screen
  • Enhanced Weather effects! Accumulating snow and more

TPS looks normal while MSPT rises

TPS is a rounded headline. MSPT shows how much time each tick consumed and therefore how close the server is to its available budget. Record both values and examine the distribution around the lag window instead of accepting a rounded TPS value as proof that no tick pressure exists.

Investigate intermittent spikes with spark

For a repeatable short freeze, a guide recommends starting spark only when ticks exceed a chosen threshold, using /spark profiler start --only-ticks-over 100. The same guide mentions /spark tickmonitor for watching tick duration. These options are not confirmed here against every installed spark version, so check the command help on your server before relying on them. The threshold of 100 ms is an example, not a universal setting; choose one that separates the reported incident from normal variation.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

If those commands are unavailable, use the documented timed profile and keep a precise incident log. Record the wall-clock time of each freeze, the command output, and what players were doing. Correlating the timestamp with the profile tree is more reliable than guessing from a plugin list.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Turn a report into a troubleshooting plan

Observed pattern Next check Safer first action
Entity-related work dominates and Count is high Which world, chunk, or farm contains the entities? Are they clustered or repeatedly scanned? Reduce unnecessary entities or scan scope; test in the affected world before changing global limits.
Chunk or world-generation work rises during exploration Did players generate new terrain during the capture? Separate exploration from normal activity and consider pre-generation or limiting simultaneous exploration, then profile again.
A scheduled task has high Avg but low Count Does its timestamp match the freeze or save interval? Move, batch, or shorten the task if the plugin supports it; avoid disabling data-saving blindly.
A plugin has high Total but low Self Which child operation consumes the time? Investigate the called operation and plugin configuration rather than removing the plugin immediately.
Many small handlers have high Count Are they running every tick or for every player, block, or entity? Increase intervals, narrow filters, or disable unused features one at a time.
No entry matches the reported freeze Was the capture active during the incident, and does the report include the right world and players? Repeat with a longer or spike-focused capture and better incident timestamps.

Apply one change, restart only when the change requires it, and repeat the same measurement. Keep the original report so you can distinguish natural workload variation from an improvement.

Best Value
Minecraft - Bedrock Edition PS4
  • Play and share with friends on console, mobile and Windows 10
  • discover community creations in the new in-game store
  • access new mini games and game modes through servers

Legacy Timings limitations on Paper 1.21+

Paper 1.21 turns Timings off by default and treats it as a feature scheduled for removal. A report generated on an older build can still be useful for historical comparison, but it should not be treated as the current recommended instrumentation. The setting timings.bypassMax is documented as a Timings system property; because Timings is deprecated, that flag has no effect on modern Paper.

Do not quote a universal “Timings overhead” percentage. No published statistic from a named organization establishes one number that applies to every server, plugin set, hardware platform, or capture window. The available evidence supports only the qualitative warning that Timings can impose a non-negligible cost.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Use a standalone spark plugin when necessary

Paper can prefer a newer standalone spark JAR placed in the plugins folder when the system property paper.preferSparkPlugin is set to true. This is an option for administrators who need a newer plugin release than the bundled implementation. Verify compatibility with the installed Paper build and confirm which spark instance is active before comparing reports; mixing command behavior or report formats from different versions can make a before-and-after analysis misleading.

A practical analysis checklist

  • Identify whether the file is Timings or spark and record the server version.
  • Confirm that the capture overlaps the real lag.
  • Write down player count, worlds, dimensions, and active machines or farms.
  • Record MSPT as well as TPS.
  • Follow the largest relevant branch from parent to child.
  • Compare self time, total time, average, and count.
  • Distinguish steady load from isolated spikes.
  • Do not blame a plugin solely because its name appears high in the tree.
  • Change one variable and capture the same workload again.
  • Keep the original report and incident notes for comparison.

For a current Paper server, the defensible workflow is therefore: establish context, use spark to capture the incident, read self time and total time in their hierarchy, test one hypothesis, and re-measure. A legacy Timings report can explain historical behavior, but spark is the supported path for diagnosing today’s Minecraft server lag.

Quick Recap

Bestseller No. 4
Minecraft
Minecraft
Skins! We have biome settlers, city folk, town folk, and more!; The Nether and all its inhabitants. Fight Ghasts and make friends with Pigmen
$6.99
Bestseller No. 5
Minecraft - Bedrock Edition PS4
Minecraft - Bedrock Edition PS4
Play and share with friends on console, mobile and Windows 10; discover community creations in the new in-game store
$42.98

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.