Skip to content
EndercloudKnowledge Base
GuideTroubleshooting & Performance

Optimise Paper and Purpur settings for better performance

A few safe changes to view distance, simulation distance, entity and item settings make a big difference. Change one thing at a time and measure with spark.

Updated 3 min read
Difficulty:
Intermediate
Time:
15 minutes
On this page

Paper and Purpur are already much faster than Vanilla or Spigot, and a few well-known settings can make them faster still. The changes below are safe for most servers. Some change gameplay a little, so read the note on each one, change a few at a time, and compare with spark before and after.

Make a backup in Backups first. Don't paste in whole "optimised" config files from the internet: they often break farms, plugins or redstone. Edit the files in Files and restart the server after saving.

Where the files are

  • server.properties: main folder, or use the Properties tab.

  • bukkit.yml and spigot.yml: main folder.

  • config/paper-global.yml and config/paper-world-defaults.yml: Paper 1.19 and newer. Per-world overrides go in paper-world.yml inside a world folder.

  • purpur.yml: main folder, Purpur only.

1. View and simulation distance (biggest win)

In Properties (server.properties):

  • view-distance: how many chunks players can see. The default is 10. 6 to 8 is a good balance.

  • simulation-distance: how far from players mobs move, crops grow and redstone runs. The default is 10. 4 to 6 saves a lot of CPU. Farms only work when a player is within this distance, so keep it high enough for your players' farms.

You can also set these per world in spigot.yml under world-settings; by default they follow server.properties.

2. Entity and item settings in spigot.yml

Under world-settings: default:

  • merge-radius: how close dropped items and XP orbs must be to merge into one. Slightly larger values (for example item: 2.5 and exp: 3.0) mean fewer entities. Very large values can make items jump through walls.

  • entity-activation-range: mobs further than this from players are ticked less often. Lowering animals, monsters and misc a little (for example by a quarter) saves CPU. Too low and mob farms slow down.

  • nerf-spawner-mobs: true: mobs from spawners have no AI. Great for performance, but it changes how spawner farms behave.

3. Paper world settings

In config/paper-world-defaults.yml. Indentation matters in YAML: use spaces, not tabs.

collisions:
  max-entity-collisions: 2
environment:
  optimize-explosions: true
misc:
  redstone-implementation: ALTERNATE_CURRENT
chunks:
  max-auto-save-chunks-per-tick: 8
  prevent-moving-into-unloaded-chunks: true
  • max-entity-collisions (default 8): limits how many collisions one entity checks per tick. Helps a lot with crowded mob farms.

  • optimize-explosions: faster TNT and creeper explosions.

  • redstone-implementation: ALTERNATE_CURRENT: a much faster redstone engine. A few very timing-sensitive contraptions may behave differently, so test your important builds.

  • max-auto-save-chunks-per-tick (default 24): spreads auto-saves out to reduce save lag spikes.

  • prevent-moving-into-unloaded-chunks: stops fast players from forcing chunk loads on the main thread.

You can also limit how many of certain entities a chunk saves with chunks.entity-per-chunk-save-limit (for example arrows or experience orbs), which stops piles of them building up.

4. Mob limits in bukkit.yml

spawn-limits controls how many mobs of each group can spawn per player. Lowering monsters from 70 to around 50 reduces entity load. It also means fewer mobs for players to fight and farm, so change it carefully.

5. Purpur

Purpur reads all the Paper, Spigot and Bukkit settings above. purpur.yml is mostly extra gameplay options, so there is no need to change it for performance.

What not to do

  • Don't edit Java startup flags. We already start your server with tuned memory settings. Only change what the Startup tab offers you.

  • Don't touch unsupported-settings or turn off ticking. These can break the game.

  • Don't rely on ClearLagg-style plugins. They delete items and mobs to hide lag instead of fixing it. See How to fix server lag.

  • Don't set view distance below 4 or simulation distance below 3. The game feels broken for players.

Also pregenerate your world. It often helps more than any setting.

Frequently asked questions

I can't find paper-world-defaults.yml

It is in the config folder on Paper 1.19 and newer and appears after the first start. Older Paper versions use a single paper.yml with different option names.

My server won't start after editing a .yml file

That is almost always a YAML formatting mistake, such as a tab or wrong indentation. Check the Console for the line number, fix it, or restore your backup.

Get a Minecraft serverInstant setup · 24/7 support · DDoS protection

Was this article helpful?

Related articles

Join Our Discord

Connect with our community of gamers and developers

Get instant support, share experiences, and stay updated with the latest news

Join Discord