We are your new 5-Star Hosting Company. At least according to ★ Trustpilot

Following along with a Minecraft server? Deploy yours in minutes.

All servers come with a 24-Hour Trial, Free Backups, and 40Gbps DDoS Protection included!

Use code SAVE15 to take 15% OFF Your First Invoice with ChicagoServers! Limited Time!
Minecraft guide

Paper World Configuration: Performance Settings in paper-world-defaults.yml

By the ChicagoServers team · Updated · 8 min read

Paper moves many of Vanilla's behaviours into a per-world file, paper-world-defaults.yml, so you can tune a busy server without a plugin. The catch is that there are many options, and most of the defaults are already sensible. This guide lists the ones that relate to performance, with the defaults the Paper documentation gives, and says which are worth changing.

It was checked on 2026-11-15 against the Paper world configuration reference. Version differences are possible, so open the file your server generated and compare. View distance and simulation distance are not in this file. They are in server.properties, covered in the server.properties guide.

Quick answer
  • Measure first. Use spark to find what is actually slow before you change anything. See the lag guide.
  • The safest options to adjust are mob spawn limits, despawn ranges and max-entity-collisions.
  • hopper.disable-move-event improves performance but breaks protection plugins that rely on the event.
  • unsupported-settings are at your own risk.
  • Change one thing at a time, restart, and compare. Back up the file before editing.
On this page
  1. Where the file is and how to edit it
  2. Chunks: loading, unloading and saving
  3. Mob spawning and despawning
  4. Entities, collisions and tick rates
  5. Hoppers, redstone and explosions
  6. Settings to leave alone
  7. A safe tuning routine
  8. Frequently asked questions

Where the file is and how to edit it

Defaults for every world live in paper-world-defaults.yml. A single world or dimension can override them in its own paper-world.yml. On ChicagoServers, find them on the Files tab: the defaults should be in the server's config folder, and per-world files are inside the world folder. Back up first, edit with spaces and not tabs, then Save and Restart. Check the Console tab for YAML errors.

Chunks: loading, unloading and saving

OptionDefaultWhat it does
chunks.auto-save-intervaldefaultUses the autosave interval from bukkit.yml.
chunks.max-auto-save-chunks-per-tick24Limits how many chunks are autosaved per tick.
chunks.delay-chunk-unloads-by10sHow long a chunk stays loaded after players leave.
chunks.min-chunk-unload-count / min-chunk-unload-fraction50 / 0.05Thresholds for how many chunks are unloaded at once.
chunks.flush-regions-on-savefalsePaper notes it may affect performance.
chunks.prevent-moving-into-unloaded-chunksfalseStops players moving into chunks that are not loaded.

These rarely need changes. max-auto-save-chunks-per-tick limits how many chunks are autosaved each tick, so a lower value spreads saving over more ticks. Test it before you keep it. Generating terrain is a bigger cost than saving it, so also see the Chunky pre-generation guide.

Mob spawning and despawning

OptionDefaultWhat it does
entities.spawning.spawn-limitsall -1Per category caps: ambient, axolotls, creature, monster, underground_water_creature, water_ambient and water_creature. -1 uses the bukkit.yml values.
entities.spawning.ticks-per-spawnall -1Spawn rate for the same seven categories. -1 uses the bukkit.yml rates.
per-player-mob-spawnstrueSpreads the spawn limit between players.
count-all-mobs-for-spawningfalseWhether every mob counts toward the cap.
despawn-range-shapeELLIPSOIDShape of the despawn area. CYLINDER is the alternative.
despawn-rangesdefaultHard and soft despawn distances, horizontal and vertical, for each mob category.
despawn-timedisabled per entityOptional despawn time per entity type.
monster-spawn-max-light-leveldefaultMaximum light level monsters can spawn in.

If your mob count is the cost, lower spawn-limits for the categories that dominate, or shorten the despawn-ranges. Both change gameplay a little, so tell players.

Entities, collisions and tick rates

OptionDefaultWhat it does
collisions.max-entity-collisions8Caps how many collisions an entity processes. Lowering it reduces collision work where many entities are packed together.
collisions.only-players-collidefalseLimits collisions to players.
collisions.allow-player-cramming-damagefalseWhether player cramming damages players.
entities.tracking-range-y.enabledfalseTurns on a separate vertical tracking range for entity types.
entities.inactive-mob-goal-selector-throttle-ratedisabledThrottles inactive mob AI.
entities.armor-stands.tick / markers.ticktrueWhether armor stands and markers tick.
tick-rates.mob-spawner1Spawner tick rate. A value of -1 disables all spawners.
tick-rates.container-update, dry-farmland, wet-farmland, grass-spread1How often each is processed.

Hoppers, redstone and explosions

OptionDefaultWhat it does
hopper.cooldown-when-fulltrueApplies a cooldown when a hopper is full.
hopper.disable-move-eventfalseDisabling improves performance but breaks protection plugins that rely on the event.
hopper.ignore-occluding-blocksfalseIgnores blocks that would occlude the hopper.
misc.redstone-implementationVANILLAOptions are VANILLA, EIGENCRAFT and ALTERNATE_CURRENT.
misc.update-pathfinding-on-block-updatetruePaper notes that disabling can noticeably improve performance.
environment.optimize-explosionsfalseOptimises explosion calculations.
environment.max-block-ticks / max-fluid-ticks65536Caps scheduled block and fluid ticks.
environment.disable-thunderfalseDisables thunderstorms.

Redstone engines can change how contraptions behave, so a technical community should be asked before you switch.

Settings to leave alone

Paper groups a few options under unsupported-settings, including disable-world-ticking-when-empty, ticking.chunks and ticking.block-entities. They are labelled use at your own risk, so leave them at their defaults unless you have a specific reason and a backup.

A safe tuning routine

  1. Run a spark profile while the lag is happening and note the top cost.
  2. Pick the one option that relates to that cost.
  3. Back up the file, change that option, save, and restart.
  4. Profile again at a similar load and compare.
  5. Keep the change only if it helped, and write down what you changed.

Plugins can also be a cause of lag. See the plugin install guide, and for memory sizing how much RAM a Minecraft server needs. Looking for a host? See Minecraft server hosting.

Frequently asked questions

Where is Paper's world configuration file?

Defaults are in paper-world-defaults.yml in the server's config folder. A world or dimension can override them in its own paper-world.yml.

How do I reduce mob lag on Paper?

Lower the spawn-limits for the categories that dominate and shorten despawn-ranges, after profiling to confirm mobs are the cost.

What does max-entity-collisions do in Paper?

It caps how many collisions an entity processes. The default is 8, and lowering it helps crowded farms.

Is it safe to disable the hopper move event in Paper?

It improves performance but breaks protection plugins that rely on the event, so only do it if you do not use them.

Does Paper's world config include view distance?

No. View distance and simulation distance are in server.properties.

We are your new 5-Star Hosting Company. At least according to ★ Trustpilot

Following along with a Minecraft server? Deploy yours in minutes.

All servers come with a 24-Hour Trial, Free Backups, and 40Gbps DDoS Protection included!

We offer quality support, a detailed knowledgebase, video tutorials on most topics, and even live support in case you prefer a live human.

Use code SAVE15 to take 15% OFF Your First Invoice with ChicagoServers! Limited Time!