Server Software
A detailed guide on which server software is right for you
Introduction
Everybody has different requirements when setting up their server. This guide will help you decide which server software is right for you. Each server software has its own uses and features, so it's important to choose the right one for your needs.
Note
Server Software is commonly referred to as "Server Jar(s)". This is
because server software are usually distributed as a .jar
file.
Types of Minecraft Servers
This section covers the most common, stable, and widely-used Minecraft server software, recommended for various gameplay experiences. It is not intended to be an exhaustive list.
Note
These softwares are sometimes referred to as "Backend" servers, in reference to Proxy Servers, which serve a different purpose in managing network traffic.
Vanilla
Vanilla is the official server software for Minecraft released by Mojang. As the name implies, it is the most basic server software available and has no modifications whatsoever.
It is ideal for those who wish to host a small server for a couple of friends or family, without altering any mechanics.
This server software is not recommended for larger servers.
Download
Download a copy of the latest Vanilla server software via minecraft.net
Forge
Forge is a modded server (and API) that allows for the use of mods on your server, which can add new content, mechanics and features to the game (Unlike Vanilla, Spigot, Paper, etc).
Unlike Paper, it contains no optimizations and is often very laggy when on larger modpacks.
Download
Download a copy of Forge via minecraftforge.net.
Fabric
Similar to Forge and NeoForge, Fabric is a modded server software (and API). Like Forge & NeoForge, it allows you to add new content (such as mobs, biomes, generation etc) to the game with ease.
It is known for being more lightweight with a more extensive array of performance mods compared to Forge, such as Lithium, Moonrise, Starlight, etc.
Download
Download a copy of the latest Fabric server software (installer) via fabricmc.net.
NeoForge
NeoForge is a fork of Forge, maintained by most of the original Forge development team - excluding LexManos (see this post).
It aims to fix the issues surrounding the community and provide a better development experience for modders and more recent versions of Minecraft itself.
Note
A "fork" is a copy of a software that is modified in some way.
They typically share the same codebase but have modified (or additional) features and optimizations.
An example of "forks" include: CraftBukkit -> Spigot -> Paper -> Pufferfish -> etc.
Due to NeoForge being a relatively new server software, there are not as many mods that completely support it compared to the likes of Forge and Fabric. However, many mods are slowly being updated to support NeoForge, and many popular modpacks exist for it.
Download
Download a copy of the latest NeoForge server software via neoforged.net.
Bukkit Server Software
Bukkit is an API that allows programmers to make plugins for server software. The server software detailed below all uses Bukkit in some shape or form.
Paper (recommended)
Paper is arguably the most widely used server software today. It is a fork of the Spigot project (with its own API), featuring numerous optimizations alongside numerous bug fixes, making it the main choice for many aspiring server owners.
Additionally, it has support for plugins which bring new features, QOL improvements and other enhancements to the game.
You can find plugins on platforms such as SpigotMC, Modrinth, Hangar, etc.
Note
A "fork" is a copy of a software that is modified in some way.
They typically share the same codebase but have modified (or additional) features and optimizations.
An example of "forks" include: CraftBukkit -> Spigot -> Paper -> Pufferfish -> etc.
While Paper features many optimizations and features, many of these affect vanilla gameplay mechanics.
This makes it unsuitable for servers that wish to maintain a vanilla experience or those who make complex farms that utilize intricate vanilla mechanics.
For those who wish to maintain a vanilla experience, consider using Vanilla, Forge, or Fabric, with performance mods such as Lithium which do not sacrifice vanilla functionality for performance.
Download
Download a copy of the latest PaperMC server software via papermc.io.
Pufferfish
Pufferfish is a fork of Paper that adds significant optimizations to the game without much impact to normal gameplay.
These optimizations include entity, hopper, SIMD and other performance improvements, making it better than Paper's performance in most cases.
This is different from Purpur which adds additional configuration options and mechanics to the game, and have removed some of Pufferfish's patches (however still contains the wide majority of them).
This is highly recommended for all servers due to the significant performance improvements it provides.
Note
A "fork" is a copy of a software that is modified in some way.
They typically share the same codebase but have modified (or additional) features and optimizations.
An example of "forks" include: CraftBukkit -> Spigot -> Paper -> Pufferfish -> etc.
Pufferfish+ was a paid server software mostly used by the customers of Pufferfish Host but has been discontinued. Do not attempt to use it.
Download
Download a copy of the latest Pufferfish server software via pufferfish.host.
Purpur
Purpur is another fork of Paper that adds additional configuration concerning different mechanics of the game, removing the need to download or create additional plugins.
It also features some performance patches from Pufferfish.
It is recommended to use Pufferfish over Purpur, unless you require the additional features and configuration that Purpur provides.
Note
A "fork" is a copy of a software that is modified in some way.
They typically share the same codebase but have modified (or additional) features and optimizations.
An example of "forks" include: CraftBukkit -> Spigot -> Paper -> Pufferfish -> etc.
Download
Download a copy of the latest Purpur server software via purpurmc.org.
Spigot
Spigot is a fork of CraftBukkit that adds many more improvements and some optimizations, making it far better than CraftBukkit.
However it does not contain many optimizations and their plugin API is notorious for being slowly updated and not as extensive as Paper's API.
Note
A "fork" is a copy of a software that is modified in some way.
They typically share the same codebase but have modified (or additional) features and optimizations.
An example of "forks" include: CraftBukkit -> Spigot -> Paper -> Pufferfish -> etc.
Download
To legally obtain Spigot, you must compile it yourself with BuildTools via spigotmc.org. Click here to download BuildTools and learn how to use it.
CraftBukkit
CraftBukkit is a slightly modified version of the Vanilla server software, allowing it to run Bukkit plugins.
It also adds many more configurable options and features which Vanilla does not have whatsoever.
Additionally, it is more optimized that Vanilla making it less laggy and fixes certain known Vanilla bugs, errors and exploits.
Download
To legally obtain CraftBukkit, you must compile it yourself with BuildTools via spigotmc.org. Click here to download BuildTools and learn how to use it.
Folia
Folia is a fork of Paper that splits the worlds up into "regions" which all run relatively independently.
Each region features its own tick loop (ticking at Minecraft's regular 20TPS), running on a thread pool in parallel.
This allows for better performance on servers with many players and entities, who are spread far out.
Folia was created because Minecraft's tick loop is single-threaded - The majority of processing is done on this tick loop, with a few exceptions such as Netty which handles networking - meaning it cannot take advantage of all of your CPU, and instead can only use a small portion of it.
Software such as Paper already help to alleviate this issue, but Folia takes it a step further by splitting the world up into regions.
Note
A "fork" is a copy of a software that is modified in some way.
They typically share the same codebase but have modified (or additional) features and optimizations.
An example of "forks" include: CraftBukkit -> Spigot -> Paper -> Pufferfish -> etc.
Warning: Folia is not completely usable!
Folia is still in development and may not be fully stable. Although it has been shown to be stable enough to be used in production, one famous example being 2b2t.
You must be prepared to deal with bugs and issues and a high hardware requirement of a (recommended) minimum of 16 CPU cores (not threads).
Before committing to Folia, consider testing more stable alternatives like Paper or Pufferfish, which offer more mature solutions for server stability and performance.
If you decide to use Folia, thoroughly test every feature, command, and mechanic on your server to ensure everything works as expected.
Folia does not inherently fix lag and has specific requirements for its playerbase. For Folia to perform optimally, players need to be spread out across the world. If players are clustered together, the number of entities in each region will increase, potentially causing more lag and diminishing the benefits compared to its upstream project, Paper.
Download
Download a copy of the latest Folia server software via mcjars.app.
MultiPaper
MultiPaper is a 1.20.1 fork of Purpur that splits your world(s) into multiple servers, running independently.
Each world is split into regions (similar to Folia), and each region runs on its own server.
This server software is often known as "sharding", where each server is a "shard".
Each server communicates with each other and is able to transfer players between servers, allowing for a seamless experience.
Warning: MultiPaper is highly unstable!
MultiPaper is notoriously unstable and is not recommended for production use. While it may be suitable for experimental or personal projects, you should carefully consider whether you truly need to use it.
Many large public servers, like DonutSMP, implement their own custom sharding solutions, which are not publicly available or standardized.
Before deciding on MultiPaper, consider exploring more stable alternatives.
Using Velocity and Paper (or a Paper fork such as Pufferfish or Purpur) often provides a more reliable and scalable approach for improving server performance. Together, they allow for better load balancing, reduced lag, and an overall smoother experience for both players and server admins.
If you choose to use MultiPaper, ensure that you thoroughly test every feature, command, and mechanic on your server to avoid potential issues.
Download
Download a jarfile for MultiPaper here.
Legacy Server Software
Legacy server software are server software that use older versions of Minecraft. 1.8.x is the most common version for legacy server software, as it is the most popular version for PvP servers, etc.
There are some spigot / paper forks that are actively maintained for 1.8.x.
We would recommend against using 1.8.x or arguably any version below latest, due to the presence of security vulnerabilities or other exploits.
One of the main reasons for choosing to run a 1.8.x fork is for good performance on older hardware, or for pre-1.9 PvP.
See below for some 1.8.x forks that are actively maintained:
Proxy Servers
Proxies are server software that allow you to connect multiple servers together, making it more seamless for switching between servers / gamemodes.
These are known as "networks".
Proxies are also incredibly lightweight, with small CPU and RAM usage (typically less than 1-2GB of RAM) however this can vary depending on your player count and proxy plugins.
Velocity (recommended)
Velocity is a modern, high-performance, and extremely flexible Minecraft proxy, maintained by the PaperMC Team. It is relatively new, but has quickly become the most popular proxy server software due to its performance and flexibility.
Note
Velocity makes use of its own API, meaning all Bungeecord plugins do not function on Velocity, although there are workaround plugins that introduce some degree of compatibility between the two plugin platforms.
One example of this is Snap.
Ultimately Velocity is a far more modern and more performant proxy software compared to Waterfall and Bungeecord, making it the best choice unless you make use of plugins that only have Bungeecord support.
Download
Download a copy of the latest Velocity proxy software via papermc.io.
Velocity-CTD
Velocity-CTD is a fork of Velocity that adds additional features and optimizations to the software.
It is fully open source and adds Quality of Life commands and more support for backend server software - particularly modded servers which are notoriously difficult when within a network.
Installing Velocity-CTD is as simple as replacing the normal Velocity jarfile with the new Velocity-CTD one.
Note
A "fork" is a copy of a software that is modified in some way.
They typically share the same codebase but have modified (or additional) features and optimizations.
An example of "forks" include: CraftBukkit -> Spigot -> Paper -> Pufferfish -> etc.
Download
Download a copy of the latest Velocity-CTD proxy software via github.com.
Bungeecord
Bungeecord is a "legacy" proxy server software that is still widely used today.
Like all other proxy software, it allows individual backend servers to be connected together allowing for easy transfer between servers.
However, Bungeecord is not as performant as Velocity and their API is not as extensive as Velocity's, although many plugin developers still support it.
Download
Download a copy of the latest Bungeecord proxy software via ci.md-5.net.
Waterfall
Waterfall is a fork of Bungeecord that aims to improve performance and stability, focusing on Stability, Features, and Scalability.
Note
A "fork" is a copy of a software that is modified in some way.
They typically share the same codebase but have modified (or additional) features and optimizations.
An example of "forks" include: CraftBukkit -> Spigot -> Paper -> Pufferfish -> etc.
Warning
The PaperMC development team has announced that Waterfall is no longer maintained and is End of Life.
They strongly recommend that you use Velocity instead of Waterfall, see their announcement for more information.
Download
Download a copy of the latest Waterfall proxy software via papermc.io.
Non-Java Server Software
Some individuals have created implementations of vanilla Minecraft in different programming languages.
This is often done to improve performance (to improve accessibility to those with lower-end hardware or reduce overall resource usage), or to add new features or APIs that do not exist in existing software.
There are many non-Java server software available, however this section will mention the most developed and actively maintained software.
Cuberite
A C++ Minecraft Server implementation, designed with efficiency in mind.
Has most features implemented and provides a flexible Lua Plugin API.
Pumpkin
A Minecraft Server built entirely in rust.
Has many features implemented and is highly performant.
Obsidian
An implementation of the Minecraft server protocol in C#.
Has several implemented features, with a custom plugin framework.
FerrumC
A Minecraft Server built in Rust.
A relatively new project aiming to be a drop-in replacement for Vanilla, with an extensive API.
Warning
Many server software options, especially Non-Java server software, should not be used in a production environment, as they may contain bugs, exploits, or unfinished features.
We always recommend using the most stable and reliable solutions for optimal performance and security.
Last updated on