Install mods on a Minecraft server
Updated September 2026 · Mods need a loader, the same version on server and client, and no client-only mods on the server.
Mods vs plugins
Mods change the game itself: new blocks, items, mobs, dimensions. Most of them must be installed on the server and on every player’s game. They run on a mod loader.
Plugins run on Paper or Spigot, change only server behaviour, and players join with a normal game. If that is what you need, see install plugins on Paper and Spigot.
You cannot run Paper plugins and Forge or Fabric mods on the same normal server.
Step 1: Pick the loader
Every mod is made for one loader and one Minecraft version. Check the mods you want first, then pick the loader they share.
| Loader | Typical use |
|---|---|
| Fabric | Lightweight mods, performance mods, fast updates to new Minecraft versions |
| Quilt | Fabric-compatible alternative; runs most Fabric mods |
| Forge | Classic large mods and older modpacks |
| NeoForge | Successor of Forge used by many recent large mods and packs |
Forge and NeoForge mods are not interchangeable on current versions, and neither runs Fabric mods.
Step 2: Install the loader on the server
- Fabric: download the server launcher from fabricmc.net for your Minecraft and loader version. It is a single
.jaryou start instead of the vanilla one. - Forge / NeoForge: download the installer, run it with the option to install a server (
--installServerfrom the command line), and start the server with the generatedrun.shorrun.batscript.
Start the server once without mods, accept the EULA (eula=true in eula.txt), and check it runs. Many hosts offer the loader as a server type, which skips this step.
Step 3: Sort the mods
This is where most crashes come from. Each mod is one of three kinds:
- Both sides — adds content (blocks, items, mobs). Goes on the server and every client.
- Server only — works without players installing it, like performance mods (Lithium, FerriteCore on Fabric) or some admin tools.
- Client only — graphics, shaders, minimaps that do not need the server, HUD changes. Sodium and Iris are the classic examples. Do not put these on the server. They crash it or do nothing.
Mod pages on Modrinth show “Client” and “Server” labels. On CurseForge, read the description.
Library mods: many Fabric mods need Fabric API. Others need libraries like Architectury or Cloth Config. The mod page lists them under dependencies. They go on server and client.
Step 4: Upload and start
- Stop the server.
- Upload all server and both-sides mods, plus their libraries, into the
modsfolder via SFTP or your server panel’s file manager. - Start the server. The first start takes longer while configs are generated.
- Watch the console. When you see
Done, it works.
Step 5: Give players the same mods
Every player needs:
- The same Minecraft version.
- The same loader (version doesn’t have to match exactly, but close is safer).
- The same content mods in the same versions.
The easiest way is a shared profile in a launcher like the CurseForge app, Modrinth App or Prism Launcher. Export it once, send the file to your friends. Or use an existing modpack — see install a modpack on your server.
RAM for modded servers
Mods need more memory than vanilla. A handful of small mods run on 4 GB. Large content mods or 100+ mods need 6–8 GB or more. How much RAM a Minecraft server needs has the table.
Common crashes and fixes
| Error in the log | Fix |
|---|---|
Mentions a client class, rendering or net.minecraft.client |
Remove the client-only mod it names |
| “Missing dependency” or “requires … “ | Install the library mod it names |
| “Incompatible mod set” / “mod requires Minecraft x” | Wrong mod version for your Minecraft version |
| Server runs out of memory | More RAM, or fewer mods |
| Players get “mismatched mods” | Client and server mod lists differ |
The newest crash log is in crash-reports. The top lines almost always name the problem mod.
Updating mods
- Back up the world first. Removing a mod removes its blocks and items from the world.
- Update the mod on the server and on every client at the same time.
- Do not update Minecraft itself until all your mods support the new version.