Skip to content

How Much RAM Does a Minecraft Server Need?

Estimate RAM for Java, Paper and modded Minecraft servers.

You're setting up a Minecraft server for your friends on a PC with 8 GB of RAM. It's easy to put -Xmx8G in the startup script: the computer has 8 GB, so why not let Java use all 8? Then you remember Windows, your browser, and the Minecraft client if you're going to play on the same PC. Before anyone has even joined, the system is already struggling to find enough memory for everything. Sometimes the problem isn't the server itself. It's that one line in the startup script.

Look at the calculator's “Recommended Java heap” and “Required total RAM” results separately. You use the first value for -Xmx. The second tells you how much RAM your PC or rented server needs in total. I wouldn't say “8 GB is enough” without distinguishing between these two numbers. Player count alone isn't enough to answer that question.

Ten players don't always create the same load

Staying together at spawn versus spreading across the map

Enter the number of people who will be playing simultaneously, not the total number of registered accounts. When 10 players build their bases around spawn, they're looking at many of the same chunks. Things change when they take off in different directions with Elytra. The server has to load new areas while also generating terrain nobody has explored before. The same 10 players can put very different demands on RAM at the beginning and end of an evening.

When estimating memory requirements, I look at how the group actually plays. If everyone usually stays in one shared area, “Mostly together” makes sense. If everyone spreads out to their own base in a survival world, “Separate areas / unsure” is a better choice. If players frequently explore new terrain, enable that option too. The calculator adds 25% to the chunk load. Arbitrarily increasing the player count to 20 just to be cautious hides where the additional memory requirement comes from.

Check the view distance and simulation distance in your server.properties file as well. View distance determines the area sent to each player. Simulation distance determines the surrounding area where mobs and game events continue to operate. The form starts with 8 and 6 chunks, respectively. For modern Minecraft versions, the larger of these two distances determines the calculator's distance-based memory estimate. If view distance is 8, increasing simulation distance from 6 to 7 may leave the RAM result unchanged. That doesn't mean the tick-processing load stays the same. With the “1.17 and earlier” profile, the calculator doesn't include simulation distance in its estimate.

Don't judge plugins by their count alone

For Paper, Purpur, and Spigot, you enter the plugin count and average plugin load. For Fabric, Forge, and NeoForge, the mod count comes into play instead. With Vanilla, the calculator doesn't use either of those inputs. Don't mistake the “Light / Medium / Heavy” choices for measured RAM consumption figures for individual plugins. Ten small permissions plugins aren't comparable to a plugin that renders a map in the background.

When installing a modpack, I first look for the heap recommendation provided specifically for the server. If you find one, enter it under “Use modpack RAM recommendation.” The calculator won't recommend less than that value. Don't copy the client's RAM recommendation into this field. These are two separate game processes. If you can't estimate the modpack's load, compare the “Medium” and “Heavy” results side by side. The difference is more useful than the mod count alone when deciding whether you need a larger hosting plan.

Which values should you enter in the calculator?

If you're setting up a new server, choose “Estimate RAM.” If you want to evaluate an existing PC, choose “Check my computer.” Both modes use the same server memory calculation. One thing that's easy to overlook is the form's default values: Paper is selected, with 10 plugins already entered. If your server has no plugins, change that 10 to zero. Then enter your actual Minecraft version, view distance, and simulation distance if applicable. If you're planning intensive farms, redstone systems, a web map, or additional worlds, open the advanced settings. Otherwise, don't enable options simply because they're available.

The working headroom defaults to 25%. In advanced settings, you can change it to anywhere between 10% and 100%. Turning off advanced settings removes the additional workloads from the calculation and resets the headroom to 25%. If one test gives you 6 GiB and another gives you 9 GiB, first check which switches were enabled. Record the inputs alongside each result. That way, you won't have to start over when investigating the difference.

8 GB is approximately 7.45 GiB. If a hosting plan advertises memory in GB, select GB in the form. If a virtual machine or container can access only part of the physical RAM, enter that accessible amount as the limit. It's tempting to think everything is fine because you entered 8 and got a result of 8. But if you selected different units for the two values, the comparison is already misleading, especially when the result is close to a half-GiB threshold.

Understanding the two RAM results

Don't confuse heap size with machine capacity

Java heap is the upper limit of memory the server can use for Java objects. Total RAM also accounts for the operating system and memory Java uses outside the heap. The calculator reserves at least 1 GiB for this additional Java memory usage. If 15% of the heap is greater than 1 GiB, it uses that higher amount, then rounds the result up to the next half-GiB increment. If the displayed heap is 3.5 GiB, the generated -Xmx3584M represents that same amount. When selecting a hosting plan, don't mistake the -Xmx value for the plan's total RAM requirement.

Try this configuration: Paper with 10 players, a modern Minecraft version, 8-chunk view distance, 6-chunk simulation distance, and 10 plugins with medium load. With advanced settings and Chunky disabled, the calculator returns 3.5 GiB of heap and 6.5 GiB of total RAM. On a machine with 8 GiB running Linux without a desktop environment, the estimated memory requirement fits if you don't reserve additional RAM for other applications. Now consider Windows and running the Minecraft client on the same PC. Enter 1 GiB for other applications and 4 GiB for the client, and the total requirement rises to 13.5 GiB. An 8 GiB machine is no longer sufficient. We haven't added a single extra plugin to Paper. The additional memory is being consumed by other processes.

In computer-check mode, the calculator reserves 2 GiB for Linux without a desktop environment, 3 GiB for Linux with a desktop environment, and 4 GiB for Windows or macOS. For containers, it doesn't add the host operating system's memory allowance. If other services run inside the container, you need to enter their RAM requirements under “RAM for other applications.” When the machine doesn't have enough memory, the calculator doesn't automatically reduce the heap recommendation. It clearly shows the shortfall instead.

Moving from Vanilla to a modpack

Keep the same 10 players and 8/6-chunk settings. Vanilla produces an estimate of 3 GiB of heap and 6 GiB of total RAM. Add 10 medium-load plugins to Paper, and the results become 3.5 and 6.5 GiB. A Fabric example with 50 medium-load mods gives 5 and 8 GiB, while the Forge example gives 6 and 9 GiB. I wouldn't interpret these figures as proof that “Fabric is always lighter than Forge.” Change the mods inside the packs, and the comparison changes too. These numbers simply demonstrate how the calculator responds to the same inputs.

In the Paper example, if players stay in the same area, you'll see 3 GiB of heap and 6 GiB of total RAM. If they spread out and explore new terrain, those numbers increase to 4 and 7 GiB. Both scenarios have 10 players. That's why I wouldn't rely exclusively on a recommendation like “a certain amount of RAM per player.” Add intensive farms, a web map, custom world generation, and two additional active worlds, and the same calculation reaches 6 GiB of heap and 9 GiB of total RAM. Rather than enabling all four options at once and looking at the result, try them individually. You'll see which workload causes the estimate to jump.

Chunky estimates versus measurements on a running server

For Chunky, you first select the world name, center coordinates, area shape, and radius. For a square, the area is 4 × radius²; for a circle, it's π × radius². Since each chunk covers 16 × 16 blocks, the calculator divides the area by 256. With a center at 0, 0 and a square radius of 3000 blocks, the result is 140,625 chunks. If half the area has already been generated, 70,313 chunks remain. Increase the radius to 6000, and the result becomes 562,500 chunks. Adding another 3000 blocks to the radius doesn't merely double the work. It quadruples the area. Check the value in the radius field carefully.

Enabling Chunky increases the example Paper server's recommended heap to 4 GiB and total RAM to 7 GiB. You can run a short pregeneration test to estimate disk space and time. If you enter 10,000 newly generated chunks, a 256 MiB increase in world folder size, and 300 seconds elapsed, the calculator estimates approximately 3.52 GiB of additional disk space and 1.17 hours for the remaining 140,625 chunks. Generation speed may not stay constant throughout the process. Don't include backups or web map files in your measurements. Before running the generated command, check the world name and radius again. One extra zero can make a substantial difference to both time and disk usage.

You've started the server, players have spread out, and TPS has dropped. Don't immediately increase -Xmx. TPS is the number of game ticks processed per second, while MSPT is the number of milliseconds each tick takes. Use /spark tps to check both. Capturing a Spark profile during peak activity can help you determine whether the server is spending its time generating terrain or running plugins. Check garbage collection pressure separately using GC metrics. If the server shuts down with an OOM error, the RAM limit and -Xmx are among the first things to inspect. If TPS drops while plenty of memory is still available, I'd inspect the profiler output first. I'd consider upgrading the RAM plan afterward.

How we tested it

We reviewed the formulas, unit conversions, and predefined test scenarios in the calculator's JSON definition. We verified that the default 10-player Paper configuration produced 3.5 GiB of heap memory and 6.5 GiB of total RAM, and that a square Chunky area with a radius of 3000 blocks produced 140,625 chunks, matching the expected test values. We checked the meaning of the settings against developer documentation. No load testing was performed on a live server.

Frequently Asked Questions

How much RAM is needed for a 10-player Minecraft server?
The Paper example used in the article requires a 3.5 GiB Java heap and 6.5 GiB of total system RAM. Players spreading out, exploring new terrain, and additional workloads can increase this requirement.
Can you run a Minecraft server with 8 GB of RAM?
In the example setup, an 8 GiB headless Linux machine meets the memory requirement. If Windows, other applications, and the Minecraft client are running on the same computer, the example requirement rises to 13.5 GiB. Also, 8 GB is approximately 7.45 GiB.
How much RAM is needed for a modded Minecraft server?
For 10 players and 50 mods at a medium load, the calculator gives 5 GiB heap / 8 GiB total RAM for Fabric and 6 GiB heap / 9 GiB total RAM for Forge. If the modpack has a server-specific heap recommendation, enter that as well.

References and Sources

The calculations on this page are based on the following standard and scientific references.

  1. PaperMC: server.properties

    docs.papermc.io
  2. PaperMC: Aikar’s flags

    docs.papermc.io
  3. Chunky: FAQ

    github.com
  4. Chunky: Commands

    github.com
  5. Spark: TPS and MSPT

    spark.lucko.me
Last update:
Information is based on standard reference values. Verification recommended for critical projects.