Skip to content

Enshrouded 1.0 is out! 🎉 Get 25% OFF your next Enshrouded Server today!

PerformanceMinecraft

Profile a modded Minecraft server with spark

Install spark from the Mods tab, run a profile from the Console, find short lag spikes and read the report to see which mod is using the time.

Updated 4 min read

spark is a profiler for Minecraft servers. It samples what the server is doing while it runs and turns that into a report of where the time goes, with a separate view for each mod. On a modded server that tells you which mod, or which part of the game, is behind the lag.

Checked against spark 1.10.187 on Fabric, Forge and NeoForge for Minecraft 26.3, October 2026.

Install spark from the Mods tab

  1. Open your server and choose Mods under Content in the left rail. The tab exists on Fabric, Forge, NeoForge and Quilt servers.
  2. In the Store view, leave the Modrinth chip selected and search for spark.
  3. Press Install on spark. On Fabric, Forge and NeoForge the store already filters to your server's loader and Minecraft version. On Quilt the store keeps your Minecraft version but leaves the loader open, because Quilt runs Fabric mods, so pick the Fabric build of spark. spark lists no required dependencies on Modrinth, so no extra mods are queued.
  4. Restart the server from the Console. The panel's notice after the install says "Restart the server to load it."

On a Paper server, spark comes bundled with Paper 1.21 and newer, so you install nothing. Reduce lag with plugins covers that side.

Check it loaded

In the Console, type commands without the leading slash. Run:

spark tps

spark prints the server's ticks per second and CPU usage. If nothing from spark appears, it may not have loaded. Open the Installed view and look for a Failed to load badge on it, and check that the file is built for your loader and Minecraft version.

The numbers to compare against are 20 ticks per second and 50 milliseconds per tick. spark's own guide says a lag-free server needs each tick to last 50 milliseconds or fewer. The Ticks per second card on the Console shows the same rate at a glance.

Run a profile

  1. Play, or let players play, in the way that lags, so the profile catches it.

  2. In the Console, run:

    spark profiler start --timeout 120

    The profiler samples for 120 seconds, then stops by itself.

  3. When it stops, spark uploads the report and prints a link. Open the link in your browser. You can send it to a mod's author as it is.

You can also run spark profiler start with no timeout and end it later with spark profiler stop. spark profiler info shows whether one is running, and spark profiler cancel ends it without uploading anything.

Find short spikes

The default report averages its samples, so a spike that lasts a tick or two can hide in it. Find the spikes first:

spark tickmonitor --threshold-tick 50

It reports every tick that takes longer than 50 milliseconds. Run spark tickmonitor with no flags to switch it off. Then record only the slow ticks:

spark profiler start --only-ticks-over 100

Read the report

  • Start at the Server thread, the thread that runs the game. Expand it and follow the percentages. The branch with the biggest share of the time is where to look.
  • Time spent sleeping is healthy. Ignore it.
  • Switch to the Sources view, from the view button in the controls bar, to see a separate tree for each mod. A mod that dominates there is your suspect.
  • On Minecraft 1.21.11 and earlier, Mojang scrambles method names and the viewer applies deobfuscation mappings on its own. From 26.1 the names are already readable.
  • Hold alt and click a method to bookmark it. The link then carries the bookmark.
Tip

A profile shows where time goes, not whether that is wrong. If one mod owns the report, disable it as described in Remove a mod from your Minecraft server and profile again to confirm. Minecraft TPS and types of server lag explained covers what the figures mean.

Was this guide helpful?

Still stuck?

Talk to a real person, we answer fast.

  • Open a ticket

    Paste the exact error and name your server, so we can look at it from our side.

  • Ask on Discord

    Chat with the team and other server owners.

  • Browse the Help Centre

    Versions, mods, plugins, backups and RAM sizing, all in plain English.

Ready to launch your Minecraft server?

Aussie hardware, NVMe disks and DDoS protection, with the version and mod loader yours to change whenever you like.