Timings is a built-in performance profiling tool for Spigot and Paper servers that tracks and reports which plugins, tasks, and server processes are consuming the most resources. It monitors everything happening during server ticks and compiles detailed reports showing exactly where your CPU time is going.
Whether a plugin is causing lag, entities are overwhelming the server, or chunk loading is taking too long, timings reveals the bottlenecks.
Timings measures how long different server operations take during each tick. Since Minecraft servers run at 20 ticks per second (50 milliseconds per tick), any operation taking more than its fair share causes lag. Timings records these durations over several minutes and generates a web-based report with colorful graphs and percentages showing what's eating your performance.
The tool is built into Spigot, Paper, and their forks. It requires no plugin installation. Just enable it with a command and let it collect data while your server runs normally.
When you open the timings URL, you'll see several sections:
Timings uses percentages and milliseconds:
Percentage of tick: What portion of the 50ms tick budget this operation consumed.
Time per tick: Average milliseconds this operation took per tick.
Count: How many times this operation happened during the recording period. High counts explain why seemingly fast operations still cause lag (happens thousands of times per second).
Look at the combination. A plugin taking 0.5ms per operation isn't bad unless it runs 100 times per tick.
If one plugin dominates the timings (20%+ of tick time), that plugin is your bottleneck. Check if:
If "Entity Tick" shows 25%+, you have too many entities. Look at the entity breakdown to see if it's mobs, items, or something else. Clear items, reduce spawn limits, or use entity stacking plugins.
High "Chunk Provider" or "Chunk Generation" percentages mean real-time chunk creation is killing performance. Pre-generate your world or set a world border to stop infinite exploration.
"Redstone" consuming significant tick time means too many active circuits or overly complex contraptions. Simplify or spread out your redstone across more chunks.
"Tile Entity Tick" at 15%+ means too many hoppers, furnaces, or other tile entities running. Reduce hopper checks, optimize item sorting systems, or remove unnecessary tile entities.
Timings has competition. Spark is a newer profiling plugin that many consider superior:
| Feature | Timings | Spark |
|---|---|---|
| Built-in | Yes (Spigot/Paper) | No (requires plugin) |
| Ease of use | Beginner friendly, clear categories | More complex, requires understanding profiling |
| Performance impact | Moderate overhead | Lower overhead, async mode available |
| Detail level | Category based, less granular | Method level, extremely detailed |
| Active development | Unmaintained since 2020 | Actively developed |
| Report format | Web page with graphs | Flame graphs and call trees |
Paper developers have discussed replacing timings with Spark. As of 2025, timings still works but Spark is recommended for advanced troubleshooting.
For beginners, timings is easier to understand. For experienced admins, Spark provides more actionable data.
For more detailed plugin timings, enable plugin profiling in bukkit.yml:
plugin-profiling: true
This makes timings track individual methods within plugins instead of just overall plugin performance. Useful when you know which plugin is lagging but not which part of that plugin.
After changing this setting, restart your server and generate a new timings report.
Timings can't catch everything:
CYBER DEAL
UP TO -40%
Host a Minecraft Server today with the best Cyber deal discount