Every Minecraft hosting guide starts with 'how much RAM do I need?' and most give vague answers. Let's get specific.
The Variables
RAM usage depends on four things:
- Player count - Each connected player adds memory overhead for their loaded chunks, inventory, and entity data
- Mods/plugins - Each mod or plugin reserves memory. Heavy mods like Create or Applied Energistics can use hundreds of MB
- View distance - Higher view distance means more chunks in memory per player
- World age - Older worlds with more explored chunks and built infrastructure use more memory
Vanilla Server Guidelines
For unmodified Minecraft with Paper or Purpur server software:
| Players | Minimum RAM | Recommended | View Distance | |---------|------------|-------------|---------------| | 1-5 | 1GB | 2GB | 10 | | 5-15 | 2GB | 4GB | 8-10 | | 15-30 | 4GB | 6GB | 8 | | 30-50 | 6GB | 8GB | 6-8 | | 50-100 | 8GB | 12GB | 6 |
These assume a moderately explored world with typical builds. If your players run massive farms or redstone contraptions, add 1-2GB buffer.
Plugin Server Guidelines
Plugins add baseline memory usage plus per-player overhead. Common plugin stacks:
Basic survival setup (EssentialsX, LuckPerms, WorldGuard, CoreProtect, GriefPrevention):
- Add ~500MB to baseline
Economy/RPG setup (above + Jobs, McMMO, custom enchants, shops):
- Add ~1-1.5GB to baseline
Minigame network (BungeeCord/Velocity + per-game plugins):
- 2GB per game server minimum, 1GB for proxy
Modded Server Guidelines
Modpacks are the biggest RAM consumers:
| Modpack | Players | Minimum | Recommended | |---------|---------|---------|-------------| | Vanilla+ (30-50 mods) | 5-10 | 4GB | 6GB | | Create: Above & Beyond | 5-10 | 6GB | 8GB | | ATM9/ATM10 | 5-10 | 8GB | 12GB | | RLCraft | 5-15 | 4GB | 6GB | | Vault Hunters | 5-10 | 6GB | 8GB | | BetterMC | 5-10 | 4GB | 6GB | | Custom 200+ mods | 5-10 | 8GB | 16GB |
Heavy tech modpacks (ATM10, E6E) with lots of automation and storage systems are the most RAM-intensive. A mature ATM10 server with multiple players' ME systems and quarries can push 12-16GB easily.
The Over-Allocation Trap
More RAM is not always better. Java's garbage collector works optimally within a certain heap size range. Allocating 32GB to a server that only uses 8GB means the GC has a massive heap to scan, leading to longer pause times.
Rule of thumb: Allocate 1.5-2x your expected average usage. If your server typically uses 4GB, allocate 6-8GB. Use Spark profiler to monitor actual usage and adjust.
JVM Memory Arguments
Always set both -Xms (minimum) and -Xmx (maximum) to the same value:
-Xms6G -Xmx6G
Why the same? This prevents the JVM from dynamically resizing the heap, which causes GC pauses and latency spikes. Pre-allocating the full heap at startup gives consistent performance.
Monitoring Actual Usage
Install Spark and check memory usage with /spark heapsummary. This shows you exactly what's consuming RAM:
- Chunk data (usually the largest consumer)
- Entity data
- Plugin data structures
- JVM overhead
If your heap usage consistently stays below 60% of allocation, you can safely downgrade. If it regularly exceeds 85%, upgrade before players notice the GC pauses.
Space-Node Plans
Space-Node's Minecraft hosting covers the full range:
- MC Grass (2GB, €2.49/mo): Small vanilla servers, 5-10 players
- MC Gold (4GB, €5.50/mo): Vanilla with plugins, 10-20 players
- MC Emerald (8GB, €10.99/mo): Moderate modpacks, 15-30 players
- MC Obsidian (16GB, €15.99/mo): Heavy modpacks, 20-40 players
- MC Netherite (32GB, €27.99/mo): Maximum power, 50+ players or extreme modpacks
You can upgrade or downgrade at any time through the client panel. Start conservative and scale up based on actual usage data from Spark - that's smarter than guessing high.
