Fix Minecraft’s “Exception in Server Tick Loop” and Stop Repeat Crashes
If by “looping tick server exception” you mean the Minecraft crash-report message “Exception in server tick loop,” start with the exception and stack trace underneath it. That heading is a broad crash label, not a diagnosis of an infinite loop, so changing random server settings usually will not fix the cause. Make a full backup, identify the first specific error, then test the most likely mod, plugin, configuration, or world change on a copy of the server.
What the Minecraft server tick exception means
A Java Edition server runs world updates through its server tick loop. When an uncaught error interrupts that work, the crash report may label it “Exception in server tick loop.” The useful clue is the exception type and message that follow, plus the stack trace and any nested Caused by: sections. Those details vary between crashes.
This is different from a performance warning such as “Can’t keep up!” A slow tick can signal that the server is overloaded, while an exception report means an operation failed. A Paper watchdog dump is another related but distinct symptom: it records a tick that has taken too long. These problems can overlap, but they do not share one universal fix.
So, don’t assume that a redstone clock, mob farm, or chunk is responsible just because the crash happened during a tick. Those may contribute to lag, but the report must point you toward the actual failure.
Before troubleshooting: protect the world
- Stop the server cleanly and wait for it to exit. Do not move, replace, or edit world files while Minecraft is running.
- Copy the complete server folder to a separate backup location. Include the world, configuration, mods or plugins, and the server files needed to reproduce the setup. Paper’s troubleshooting guide also recommends stopping the server and making a backup before changing files.
- Write down the Minecraft version, server software and build, mod loader, Java version, and the last change made before the crash began. Save a copy of the full crash report and
logs/latest.log.
Use a separate test copy for experiments. A test that changes mods, datapacks, plugins, or world data can make a production world harder to recover.
How to diagnose “Exception in server tick loop”
1. Find the complete crash report and log
On a dedicated server, look in its crash-reports folder for a report created at the time of the crash. Also check logs/latest.log and the server console. A crash report summarizes the failure; the log may show what happened immediately before it. Fabric’s troubleshooting documentation explains where crash reports and logs are stored and why both can help.
2. Read the exception, then follow the stack trace
Near the top, note the exception class and its message—for example, a null pointer, an illegal state, or an out-of-memory error. Follow each Caused by: chain to the most specific underlying message. Then scan the stack trace for a mod ID, plugin name, or library package. A named component is a useful lead, though mod compatibility problems can involve more than one component.
Do not treat a line containing tickLoop as proof that the game is stuck in an infinite loop. It may only identify where Minecraft was when another operation threw an exception.
3. Match the crash to what was happening
Record whether the server crashes during startup, when a player joins, while loading a particular area, or after a repeatable action. Compare that trigger with the report’s named block, entity, dimension, or plugin event if one appears. A repeatable location or action narrows the search; it does not, on its own, prove the world is corrupted.
4. Check the last change and version compatibility
If the issue began after an update, first test a copy with that single change reverted. Check that every mod, plugin, loader, and server build supports the exact Minecraft version in use. Use the component’s own release page and documentation. Avoid updating or downgrading several pieces at once, because that makes the result harder to interpret and can create new compatibility issues.
5. Isolate the component in a test copy
For a Paper server, temporarily remove plugins from the test copy and see whether the crash remains. If that clears the problem, restore plugins in groups and narrow the suspect group by repeating the test; keep plugins with dependencies together. Paper documents this binary-search method. For a modded server, use the same controlled approach with a copied server and world, changing one mod group at a time. Never use a modified test setup as the only copy of your world.
Choose a fix based on what the evidence shows
| What you find | Next step |
| A mod or plugin appears in the exception or stack trace | Check its official release notes and version requirements. Test a compatible update or a rollback on the copy, then reproduce the same action. |
| The crash started after a configuration or datapack change | Restore the previous version of that file on the test copy. Reapply changes one at a time and follow the project’s documentation for valid settings. |
| The server fails only when loading a particular world or area | Keep the original world untouched. Test from a known-good backup and share the report with the relevant mod or server support channel before attempting chunk removal or other world edits. |
The report names OutOfMemoryError or disk I/O | Investigate that specific resource error, available disk space, and the server’s memory configuration. Adding RAM blindly will not repair a plugin exception or incompatible mod. |
| The server stays online but becomes very slow | Profile the performance issue while it is happening; a crash report alone will not show which tasks are consuming tick time. |
Use Spark for lag that you can reproduce
For Paper 1.21 and later, Spark is bundled as Paper’s preferred profiler. While the server is experiencing the slowdown, run /spark profiler start --timeout 300 from an authorized in-game account or the server console if supported by your setup. Reproduce the lag during the capture, then inspect the report link Spark returns. Profiling an otherwise healthy period may not capture the cause. Spark’s command reference also documents /spark profiler stop and tick monitoring options.
A profile helps investigate slow server work; it does not replace the crash report when the process exits with an exception. See the Paper profiling guide and Spark command documentation for current usage.
Verify the fix and prevent another crash
- Start the test copy with one targeted change in place and confirm it reaches the same point that previously triggered the crash.
- Repeat the original action several times and review the new console output and latest log. Check that the same exception does not return.
- Keep the backup until the live server has run successfully with the repaired setup. Apply the change to production during a planned shutdown, then retain the crash report in case the issue returns.
If you still need help, share the complete crash report, relevant log excerpt, exact Minecraft and server versions, Java version, mod or plugin list, and the steps that reproduce the failure. Redact account details, private IP addresses, and access tokens before posting. For Paper-specific problems, follow its basic troubleshooting guide. For modded Java Edition crashes, consult Fabric’s crash-report guide and log guide, or contact the relevant project’s maintainers.
Sources and further reading