If you have spent any time picking Minecraft server software, you have run into a wall of names: Vanilla, CraftBukkit, Spigot, Paper, Pufferfish, Purpur, Folia. They are not competitors so much as a family tree, each one built on the one before it for a specific reason. This post walks the lineage, explains what each fork adds, and gives you a plain "pick this if" for every option.

The lineage, in order

It helps to see the line before the detail, because each name inherits from the last.

  • Vanilla is the server Mojang ships. No plugin API at all.
  • CraftBukkit added the Bukkit plugin API on top of Vanilla, so servers could load plugins.
  • Spigot forked CraftBukkit and added performance patches and more configuration.
  • Paper forked Spigot, went much further on performance and bug fixes, and added its own extended API.
  • Pufferfish forked Paper for extra performance tuning aimed at larger servers.
  • Purpur builds on Paper and piles on configuration and gameplay toggles. For a long stretch it sat on top of Pufferfish; today it tracks Paper directly.
  • Folia is a separate path from Paper that rethinks threading entirely.

The single most important thread running through all of this is plugin compatibility, so start there.

Plugin compatibility runs down one line

The Bukkit API became Spigot's API, which Paper extended without breaking. That means a plugin written for Bukkit or Spigot almost always runs on Paper, and by extension on Pufferfish and Purpur, because they all keep that same API surface. This is the reason the whole right-hand side of the tree is a safe place to be: you can move between Paper and Purpur and your plugins come with you.

Folia is the exception, and we will get to why.

Paper is the sensible default

For almost everyone, Paper is where to start. It is fast, it fixes a long list of Vanilla and Spigot bugs, it is exceptionally well maintained, and the entire plugin ecosystem targets it first. If you are setting up a server and you are not sure what to run, run Paper. Nothing below replaces it as the baseline; they build on it.

Paper also gives you a deep configuration file that lets you tune view distance, mob behaviour, entity limits and more. A lot of what people install extra software to get, Paper can already do from its config.

Purpur: configuration and gameplay toggles

Purpur sits on top of Paper and adds a large set of extra settings. Some are performance related, but the headline is control over gameplay: you can toggle and tweak mob behaviour, ridable entities, gameplay mechanics and a long list of small things Vanilla hardcodes. If you like the idea of adjusting how the game itself behaves without writing a plugin, Purpur is built for that. Because it inherits the Paper API, your plugins keep working.

Folia: regionised threading, a different path

Folia is the outlier. Instead of moving some jobs off the tick thread, it splits the world into regions and runs each region on its own thread. For a server with thousands of players spread across a huge map, that is a genuine answer, because distant regions can tick at the same time independently.

The cost is that Folia needs plugins written specifically for its threading model. Most plugins are not, so the usual ecosystem does not simply carry over. Folia is a specialist tool for a specific scale, not a general upgrade, and for the vast majority of servers it is the wrong pick precisely because of that plugin gap.

Pick this if

  • Vanilla: you want the pure game, no plugins, and you are fine giving up the performance patches and configuration everything else offers.
  • Spigot: you are following an old guide that requires it. Otherwise Paper is a strict step up with the same plugins.
  • Paper: you want the sensible default. Fast, stable, every plugin runs, deep configuration. Start here.
  • Pufferfish: you are running a large server and want its extra performance tuning while staying very close to Paper.
  • Purpur: you want to change how the game itself behaves through config, ridable mobs and gameplay toggles, without losing plugin support.
  • Folia: you are running a very large, spread-out player base and you are willing to run only Folia-aware plugins to get regionised threading.

For most servers the honest recommendation is short. Start on Paper. If you want gameplay control, move to Purpur. If you are chasing performance, the bigger wins are in config and the CPU underneath, not in a more exotic fork. We weigh the two main options head to head in Paper vs Purpur. Folia only when your scale genuinely calls for it.

If you would like a hand matching software to your hardware and player count, that is the kind of question we enjoy.

Browse Minecraft hosting