How to Change the Mob Spawn Rate on Your Minecraft Server
Adjust hostile mob, animal, and ambient spawn limits and ranges on your Minecraft Java server using bukkit.yml and spigot.yml.
Mob spawn rates control how many mobs can spawn naturally on your server. Lowering them is one of the most effective performance fixes for entity-heavy servers — fewer mobs mean fewer entities to tick. Raising them makes the world feel busier or more challenging, at a CPU cost.
The relevant settings live in bukkit.yml and spigot.yml, which are only present on Bukkit-derived servers (Spigot, Paper, Purpur, Pufferfish, etc.).
Spawn Limits Explained
These are per-player chunk caps, not per-world totals. The cap applies to mobs in chunks loaded around each player.
| Category | Default | What it includes |
|---|---|---|
monsters | 70 | Hostile mobs (zombies, skeletons, creepers, spiders, witches, etc.) |
animals | 10 | Passive mobs (cows, pigs, sheep, chickens, horses) |
water-animals | 5 | Squid, dolphins |
water-ambient | 20 | Tropical fish, salmon, cod |
water-underground-creature | 5 | Glow squid |
axolotls | 5 | Axolotls |
ambient | 15 | Bats |
Change Spawn Limits
Stop the server
In the XGamingServer Panel, open Console and stop your server.
Edit bukkit.yml
Click Files in the sidebar and open bukkit.yml. Find the spawn-limits section:
spawn-limits:
monsters: 50
animals: 8
water-animals: 5
water-ambient: 15
water-underground-creature: 5
axolotls: 5
ambient: 10Lower the numbers to reduce spawns; raise them to increase. Click Save Content.
(Optional) Adjust mob spawn range
Open spigot.yml. Find:
mob-spawn-range: 6Default is 8. Lower values concentrate spawning closer to players, which can:
- Make mob farms more reliable
- Reduce the number of "wasted" spawn attempts in chunks players don't visit
- Improve mob density in active areas
(Paper only) Adjust per-chunk entity caps
On Paper, you can also set hard per-chunk caps in config/paper-world-defaults.yml:
entity-per-chunk-save-limit:
experience_orb: 16
arrow: 16
snowball: 16
ender_pearl: 16This caps how many of each entity type can be saved per chunk, preventing pathological accumulation.
Start the server
Start from Console. New spawn limits take effect immediately.
Recommended Settings by Use Case
Performance Server (Lag Reduction)
spawn-limits:
monsters: 35
animals: 5
water-animals: 3
water-ambient: 10
ambient: 5Reduces total mob count by ~50%. Mob farms still work but are slower. TPS often improves significantly.
Vanilla-Like Balance
Use the default values (70 / 10 / 5 / 20 / 15). This matches singleplayer feel.
Hardcore / High-Difficulty Server
spawn-limits:
monsters: 100
animals: 15More mobs, more pressure. Watch TPS — this only works on a server with CPU headroom.
Build / Creative Server
spawn-limits:
monsters: 0
animals: 0
water-animals: 0
ambient: 0Zero spawning. Combine with gamemode=creative and difficulty=peaceful for a pure-build experience.
Other Mob Controls
| Control | File | Effect |
|---|---|---|
spawn-monsters=false | server.properties | Disable hostile spawning entirely |
difficulty=peaceful | server.properties | Removes hostile mobs and despawns existing ones |
entity-activation-range | spigot.yml | Distance at which mobs become "active" (closer = less CPU) |
merge-radius | spigot.yml | Auto-merge nearby items / XP orbs to reduce entity count |
nerf-spawner-mobs | spigot.yml | Spawner mobs don't AI — saves CPU on grinders |
Reduce Lag from Mob Farms
Mob farms with hundreds of mobs are the biggest entity-related lag source on most servers. Don't just lower spawn limits — also:
- Tune
entity-activation-rangeinspigot.yml:
world-settings:
default:
entity-activation-range:
animals: 16
monsters: 24
misc: 8
water: 12Mobs outside this range stop ticking AI/pathfinding.
- Enable spawner nerfing:
nerf-spawner-mobs: trueSpawner-spawned mobs won't AI — they fall when pushed but don't pathfind.
-
Install FarmControl for per-farm caps.
-
Install ClearLagg to auto-clear ground items.
See Optimize Server for the full performance guide.
Common Mistakes
| Mistake | Fix |
|---|---|
| Setting monsters to 0 expecting peaceful | Use difficulty=peaceful instead — 0 doesn't despawn existing mobs |
| Wondering why mob farms broke | You lowered spawn caps below what the farm needs |
Editing bukkit.yml while server is running | Stop server first — file is overwritten on shutdown |
| Editing on Vanilla/Forge servers | These files don't exist on Vanilla/Forge — only Bukkit-derived |
| Not restarting after change | Spawn limits load at startup |
| Thinking lower = always better | Below 30 monsters can break gameplay (no nighttime mobs) |
Tips
- Profile first. Run Spark before tuning. If
EntityType.tickfor one mob is huge, lower that specific category. - Adjust one variable at a time. Easier to see what worked.
- Test with players online. Spawn behavior depends on player count.
- Don't go below 30 monsters unless you genuinely don't want survival difficulty.
- Combine spawn-limits with activation-range for the biggest gains.
Related Guides
How is this guide?

How to Change the World Type on Your Minecraft Server
Switch your Minecraft Java server to flat, large biomes, amplified, or single-biome world generation.
How to Change Your Minecraft Server MOTD
Customize the Message of the Day shown in the Minecraft multiplayer server list with colors, formatting, and a second line.