Skip to main content

Reduce lag and optimize your server

Lag comes from too many chunks loaded, too many entities, a heavy plugin or mod, or terrain generated while players explore. The steps below go from biggest win to smallest. Make one change at a time and test.

What FenixHost already handles​

The Java version and launch flags are managed for you and cannot be edited in the panel. Spend your effort on the settings below.

1. Use Paper or Purpur​

Vanilla and the old mod loaders are not built for performance. Paper is much faster and still plays like Minecraft. Purpur is Paper with more options. If you run plain Vanilla without mods, switch on Versions; a backup is made automatically.

For mod servers, Fabric is the lighter loader and has well-known performance mods.

2. Lower view and simulation distance​

These two have the biggest effect. In Properties, Performance section:

SettingSuggested startWhy
View Distance8 to 10How many chunks players can see. Each extra chunk of distance costs a lot.
Simulation Distance5 to 6How far mobs, crops and redstone are active around a player.

Restart the server after changing them.

3. Pre-generate the world​

Generating new terrain is one of the heaviest things a server does. Pre-generate it before players need it.

  1. Install the Chunky plugin from Plugins, then restart.
  2. In the Console, run these commands:
chunky world world
chunky radius 5000
chunky start
  1. Run chunky progress to check on it. Use chunky pause and chunky continue if needed.

A radius of 5000 blocks suits many servers. A large radius takes a long time and a lot of disk space; start smaller if unsure. Set a world border with worldborder set 10000 so players cannot go beyond what you pre-generated.

4. Limit entities​

Many mobs, dropped items and animal farms slow down a server.

  • Lower Entity Broadcast Range % in Properties if players see many entities from far away.
  • On Paper and Purpur, open Files and edit these files (restart afterwards):
    • config/paper-world-defaults.yml: lower the spawn-limits values, and keep per-player-mob-spawns on.
    • spigot.yml: lower entity-activation-range (for example animals 16, monsters 24) and mob-spawn-range. Raise merge-radius for items and experience.
    • bukkit.yml: the spawn-limits section also controls how many mobs spawn.
  • Reduce the size of animal pens and villager halls, and avoid huge automatic farms.
warning

Very low entity activation ranges can make mobs look frozen until you are close. Lower them gradually.

5. Find the real cause with spark​

For lag with no obvious cause, install spark from Plugins and run:

spark profiler start

Play normally for a few minutes, then:

spark profiler stop

It prints a link to a report that shows which plugins, entities or chunks use the most time. Paper also has /tps (should be close to 20) and /mspt.

6. Plugins, mods and memory​

  • Remove plugins and mods you no longer use.
  • Do not use /reload; restart instead.
  • If the MEMORY card on the Console sits at the limit, you have too many plugins or mods, or too much world loaded. If it persists after trimming, upgrade the plan from the service page in the store.
  • Use Pause When Empty Seconds in Properties if the server is often empty.

7. Ask Fenix for a check-up​

Fenix checks CPU, memory and disk and reads the console and latest log. Ask "my server lags, can you check it?". It explains what it finds and proposes a change; nothing is applied until you press Apply.

Checklist​

  1. Run Paper or Purpur.
  2. View distance 8-10, simulation distance 5-6.
  3. Pre-generate the world and set a world border.
  4. Trim entities and mob spawns.
  5. Profile with spark.
  6. Remove unused plugins and mods.

Still lagging: contact support with your server details and the spark report link.