Short answer
Purpur is Paper plus opt-in gameplay features, all in purpur.yml. Run Paper if you want strict vanilla mechanics or maximum plugin compatibility; run Purpur if you want features like rideable mobs or world-specific mob caps without writing a plugin.
Every Purpur guide and support thread eventually reaches the same question: is Purpur just Paper, or something else? It is a fork of Paper, so it inherits all of Paper's performance work and plugin compatibility. What it adds is a configuration file of optional gameplay changes, each one off by default.
That makes the decision unusually reversible in both directions. Change the software, restart, and the same world and the same plugins are there. The real question is whether the extras are features you want or surprises you do not.
Paper and Purpur compared
| Aspect | Paper | Purpur |
|---|---|---|
| Code base | Fork of Spigot | Fork of Paper |
| Plugin API | Bukkit, Spigot, Paper | Same, plus Purpur additions |
| Extra configuration | None | purpur.yml, all off by default |
| Gameplay by default | Vanilla | Vanilla |
| Optional features | None built in | Rideable mobs, per-world caps, gamerule overrides, and similar |
| World files | Vanilla format | Vanilla format, identical |
| Client download for players | None | None |
| Best for | Strict vanilla with plugins | Paper plus a few opt-in conveniences |
What Purpur adds on top of Paper
Purpur's additions are gameplay conveniences that would need a plugin on Paper: rideable mobs, per-world mob caps and gamerule overrides, players sleeping through the night regardless of who is in bed, one-player sleep in the Nether, the ability to disable specific gamerules such as fire spread or leaf decay, and a few smaller conveniences.
They all live in purpur.yml and the worlds: section beneath it. Purpur reads Paper's configuration as well, so your Paper settings carry over untouched.
allowSleepingOutsideTimeZone: false
blocks:
disable:
lava: false
fireTick: false
grassSpread: false
leafDecay: false
meltIce: false
moreBlockExplosion: false
mob:
map:
bat:
killAfterDays: 0
experience:
join:
players:
- join-message-radius: 0Where Purpur is the same as Paper
Same world format, same plugin APIs, same vanilla client, same performance work. Any Bukkit, Spigot or Paper plugin runs on Purpur without changes, because Purpur sits above the same API and adds nothing to the plugin surface that existing plugins must adapt to.
Purpur also reads Paper's configuration files as its own, so the tuning advice in the Paper settings guide applies unchanged: the files you edit are Paper's, and purpur.yml never overrides them. Precedence is simple. Paper settings decide how the server runs, Purpur settings decide which optional gameplay features are on.
Deciding what the extra features are worth
Some Purpur options save a plugin rather than a line of config. Per-world mob caps, for instance, replace a plugin that other players can grief or misconfigure. Disabling fire spread or leaf decay globally is a real operational choice, one that reduces unintended spread on a survival world, and it is the kind of thing a plugin exists to do badly.
The counterweight is that every enabled feature is a change players can notice and that you now have to remember. Keep the list short, keep it in the file where the next administrator will see it, and write in the file why each line is there.
The one real compatibility difference: plugins that assume Paper
A small number of plugins check the server brand string and refuse to run on anything but the software they name. When that happens the plugin logs an error at startup and disables itself, which looks like a Purpur bug and is not one.
Before choosing Purpur on the strength of one of its features, check the plugins you already run. A plugin ecosystem you rely on outweighs rideable mobs every time, and the check takes a minute per plugin.
/version
/pluginsChoose on the requirement, not on the brand
If your server is for playing survival as vanilla intends, with a plugin or two for quality of life, Paper is the shorter answer. You keep one fewer configuration file and one fewer thing to explain to players who ask why mobs can ride horses.
If you already know you want a specific feature that would otherwise need a plugin, Purpur is one line instead of a dependency. Either way, back up before you switch, and keep the backup until you have played on the new software and confirmed that your plugin list loads cleanly.
Good to know
- Purpur tracks Paper upstream closely, so a new Minecraft version arrives for both at about the same time.
- Purpur features are per world. A creative build world can have them while the survival overworld stays strict.
- Paper vs Spigot is the other comparison worth reading: Purpur is closer to Paper than to Spigot in both code and behaviour.
- The Purpur install guide covers the download and first run for a server you host yourself.
Common questions
Is Purpur better than Paper?
Neither is better in general. Purpur is Paper plus optional gameplay features you enable yourself. Choose it if you want one of those features without writing or installing a plugin; choose Paper if you want the smallest surface area.
Will my Paper plugins work on Purpur?
Almost all of them. Purpur implements the same plugin APIs. The exceptions are plugins that check the server brand and refuse to start, so check the plugins you already depend on before switching.
Does Purpur change gameplay by default?
No. Every Purpur feature is off in the default purpur.yml. A server you have just switched behaves exactly like Paper until you change something.
Is Purpur slower than Paper?
There is no meaningful difference: Purpur inherits Paper's performance work and adds configuration rather than new tick work. If a Purpur server lags, the cause is in the world or plugins, and the lag guide applies unchanged.
Sources
Official documentation this guide was checked against.
Rather not run this on your own machine? PufferHost gives every player a free Minecraft server with 3 GB of RAM and 10 slots. Create a free server.