- Friends server (2-10 players, vanilla or Paper): 2-4 GB. Plugin server with 20-50 players: 6-10 GB. Modpacks: start at 6-8 GB and measure.
- Set it with
-Xmsand-Xmxto the same value, and leave 1-1.5 GB of the machine free for the OS. - Past about 10-12 GB, more RAM rarely helps. Lag usually comes from a slow CPU core, too many entities, or unloaded chunks being generated.
For how much RAM a Minecraft server needs, a good starting point is 2 to 4 GB for a small friends server, 6 to 10 GB for a public Paper server with plugins, and 6 to 8 GB or more for modpacks. Those are starting points, not magic numbers: the right amount depends on what your world does, and the only honest way to size it is to start near the middle and watch the memory graph for a week.
The other half of the answer surprises new owners. RAM is rarely the thing that makes a server lag. A Minecraft server does most of its work on one main thread, so a fast CPU core buys you more than another 8 GB ever will.
Minecraft server RAM by player count and type
Here's the table we'd hand a friend. It assumes Java Edition on Paper (or Purpur) unless it says modded, and a pre-generated world (more on that below).
| Server | Players online | Starting RAM | Notes |
|---|---|---|---|
| Vanilla or Paper, no plugins | 2-5 | 2-3 GB | A 2-player world is about the smallest real server. |
| Vanilla or Paper, light plugins | around 10 | 3-4 GB | The 10-friend SMP. Fine on most budget hosts. |
| Paper with a normal plugin stack | 20-50 | 6-10 GB | Economy, claims, and more players spread out, so more chunks loaded. |
| Minigames behind a proxy | varies | 2-4 GB per game server | Small maps, reset often. The proxy itself is light. |
| Light modded (Fabric, a few dozen mods) | 5-15 | 4-6 GB | Performance mods help a lot here. |
| Big modpack (Forge or NeoForge, 150+ mods) | 5-15 | 6-10 GB | Tech mods with big factories push the top end. |
| Bedrock Dedicated Server | up to 10 | 1-4 GB | Mojang lists 4 GB in its system requirements. |
For context, the official sources are more modest. The minecraft.wiki requirements page lists 1 GB for 1-4 players, 2 GB for 5-10 and 4 GB for 10+ on a LAN, and warns that big worlds, redstone and mob farms can more than double that. PaperMC's Aikar's flags page suggests 6-10 GB as a comfortable allocation. Our table sits between the two, because a public server has more players spread over more chunks than a LAN party does.
A RAM calculator you can do in your head
Online RAM calculators multiply players by a number. That misses what actually fills memory: loaded chunks and the things in them. Walk through these instead.
- Start with a base. 2 GB for vanilla or Paper, 4 GB for a modded server.
- Add for spread-out players. Ten players standing at spawn load the same chunks. Ten players each in their own base load ten sets. For a survival or SMP world where people scatter, add roughly 1 GB per 5-10 players.
- Add for mods. Kitchen-sink packs with world-gen mods, big dimensions and tech mods earn another 2-4 GB.
- Add for extra worlds. Every loaded world (resource world, event world, a second Nether) holds its own spawn and player chunks.
- Cap it. If the total goes past 10-12 GB for one server, look at splitting players across servers behind a proxy (Velocity) before buying more memory.
- Measure. Run it for a week and read the numbers with spark (below). Trim or add from there.
How to set Minecraft server RAM: Xmx and Xms
Java decides how much memory the server may use from two start-up flags. They go in your start command or script, before -jar:
The maximum heap. -Xmx6G means the server can use up to 6 GB.
The starting heap. Paper's docs recommend setting it equal to -Xmx.
Java and the OS need about 1-1.5 GB beyond the heap. On an 8 GB machine, use about 6.5 GB.
The minimal RAM command looks like this:
java -Xms6G -Xmx6G -jar paper.jar --nogui
How to increase Minecraft server RAM
- Stop the server cleanly with
stopin the console. - Edit the start script (
start.baton Windows,start.shon Linux) and change both numbers, for example from4Gto6G. On a rented host, change the memory slider or plan instead, since the panel writes these flags for you. - Check the machine can spare it. If Xmx plus 1.5 GB is more than the machine's free RAM, the OS starts swapping to disk and everything gets slower.
- Start and confirm. Run
/spark healthand check the memory line shows the new maximum.
Aikar's flags: the garbage collection setup Paper recommends
Java cleans up unused memory with a garbage collector (GC). With the wrong settings, a big heap causes long GC pauses, which players feel as a freeze every few minutes. The Paper team recommends a tuned set of G1 collector flags known as Aikar's flags. This is the command from docs.papermc.io, with 10 GB as the example size:
java -Xms10G -Xmx10G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar paper.jar --nogui
Change only the two memory numbers and the jar name. Copy the rest exactly; the flags work as a set. They also work on vanilla, Fabric and Forge servers, since they tune Java, not Paper.
Two of these flags explain behavior that confuses people. -XX:+AlwaysPreTouch makes Java claim the whole heap at start-up, and -Xms equal to -Xmx means it never gives it back. That's intended.
Minecraft server RAM usage keeps increasing: leak or normal?
Usually normal. Task Manager or htop shows the Java process, and Java holds on to the heap it has reserved even when the game isn't using it. With Aikar's flags the process sits at its full size from the first minute. That number tells you nothing about a leak.
What matters is how much memory is still in use right after a garbage collection. spark shows it:
/spark healthgives a live dashboard with memory, CPU and TPS./spark gcshows GC history: how often it runs and how long pauses take./spark heapsummarylists what's filling memory, class by class.
If memory used after each collection keeps climbing for hours and never comes back down, even with few players online, you likely have a leak, usually a plugin or mod holding on to old worlds or players. The heap summary shows which classes grow; match their package names to a plugin. spark is bundled with Paper since 1.21 and available as a plugin or mod elsewhere, and its command docs cover the flags.
Why more RAM doesn't always help (and what does)
If your server lags with 8 GB, giving it 16 GB usually changes nothing. Paper's docs say it directly: above a certain point, more memory doesn't mean better performance. The server needs to finish each tick in 50 ms to hold 20 TPS, and most of that work runs on one thread. The wiki's requirements page puts it plainly: single-core performance matters most, and the server typically uses three cores at most.
The biggest factor. A recent desktop-class CPU at high clock speed beats a many-core server chip at a low clock.
Generating new terrain is expensive. Pre-generating with Chunky inside a world border removes that load while people play.
Mob farms, dropped items and villager halls cost CPU every tick.
Every chunk around every player is memory and work. Lowering these gives back both.
Our lag fix guide goes through the exact settings. On the storage side, an SSD makes chunk loading far smoother than a hard drive.
Minecraft Bedrock server requirements
The Bedrock Dedicated Server (the software behind Bedrock servers) is a separate program from the Java server and uses memory differently. Mojang's download page lists, at the time of writing (September 2026):
- CPU: Intel Core i3 3210, AMD A8 7600 APU or equivalent
- RAM: 4 GB, with the FAQ saying at least 1 GB for small servers
- Disk: 180 MB to 1 GB free
- OS: Windows 10 (version 10.0.15063 or later) or Windows Server 2016+, or Ubuntu 22.04 LTS or later. Other Linux distributions aren't supported.
There are no Xmx flags on Bedrock. The settings that control load are in its server.properties: view-distance and tick-distance (4 to 12, default 4). Raising tick-distance is the fastest way to make a Bedrock server hungry.
Hosting: what "unlimited RAM" and free 16 GB plans mean
When a host sells "unlimited RAM", read the fair-use terms, because physical RAM is never unlimited and the plan will have a limit somewhere, often on CPU. When a free host offers a big RAM number, remember the CPU is usually shared, and CPU is where most lag lives. For any plan, ask what CPU model you get and whether cores are dedicated. That tells you more than the gigabytes.
Quick questions
How much RAM for a Minecraft server with 10 people?
3-4 GB on Paper with a few plugins, 6-8 GB if it's a modpack. Pre-generate the world and it will stay smooth.
How much RAM for a 2-player Minecraft server?
2 GB is plenty for vanilla or Paper. For a modpack, use the pack's recommended amount, usually listed on its CurseForge or Modrinth page.
Is 10 GB of RAM enough for a Minecraft server?
For almost any single server, yes. If 10 GB isn't enough, look for a leak or an entity problem with spark before buying more.
What are the requirements to join a Minecraft server?
For players, only a copy of the game on a matching version and the server's address. Our guide on joining a server covers each platform.
Does the RAM on my own PC matter when I join?
That's client RAM, a different setting in your launcher. It affects your FPS, not the server's TPS.
