
Short answer: If you and 5-10 friends just want to play vanilla or with light mods, Aternos is free and surprisingly good. If you want it always-on, $4-6/month on a Hetzner or DigitalOcean VPS running Paper is the cheapest credible option. The $0.50-$1.50 per-player-month tier most managed hosts charge is overpriced once you understand what they're actually selling. This guide walks through the four real options, the gotchas, and what the actual specs need to be for a small group.
TL;DR — what to pick at each price point
- Free: Aternos — sleeps when no-one's online, takes ~60s to wake. Fine for casual.
- $4-6/month: Hetzner CX22 or Contabo VPS S, install Paper yourself. Always-on, 8GB RAM, fits 10-20 players easily.
- $8-15/month: Managed hosts (BisectHosting, Apex, Shockbyte) — you pay extra for one-click installs and support tickets.
- $5.99/month: VibeCord Hobby plan — AI builds + hosts a Paper-based server you can shape with plain English.
What 5-10 friends actually need
Specs hosts try to sell you are usually higher than you need. For a friend group on modern Minecraft Java 1.21:
- RAM: 2-4 GB for vanilla, 6-8 GB once you add a small modpack like Create or Cobblemon. Per the PaperMC docs the minimum to even start Paper safely is 2 GB.
- CPU: Single-core performance matters more than core count. Minecraft uses one main thread for the world tick loop.
- Disk: 10-20 GB for a vanilla world that'll take 6+ months to fill. Modpacks need 30-50 GB.
- Network: Anything 100 Mbps+ is fine. Latency matters more than throughput — pick a region close to most players.
Option 1: Free hosting (Aternos, Minehut)
Aternos and Minehut are the two credible free options. Both work; both have catches.
- Aternos: Genuinely free, no time limit, supports modpacks. The catch: servers shut down after ~5 minutes with no players, then take 30-90 seconds to wake up. For a group that hops on after dinner, this is fine. For an always-running base where mob farms need to keep ticking, it's not.
- Minehut: Two free always-on slots per account. RAM tops out at 1 GB on the free plan, which means vanilla only. Players join via
yourname.minehut.gg.
For a starting friend group with no budget, Aternos is the right first answer. The moment you want a base that ages while you sleep, you need an always-on server.
Option 2: The $4-6/month sweet spot — VPS + Paper
This is what we recommend most often. A Hetzner Cloud CX22 is €3.79/month (around $4-5) for 4 GB RAM and 2 dedicated vCPUs — enough for vanilla 1.21 with 10 friends. Contabo's VPS S is similar money for 8 GB RAM but oversells the host hardware so single-thread performance is more variable.
- Spin up Ubuntu 22.04. SSH in.
sudo apt install openjdk-21-jre-headless screen- Download the latest Paper jar from papermc.io/downloads and run with
java -Xmx3G -Xms3G -jar paper.jar nogui. - Open port 25565 in the firewall, give your friends the IP, done.
The first time you do this it takes about 45 minutes. Every time after that it takes five. If 45 minutes sounds like too much, see Option 3.
Paper vs vanilla server.jar
Run Paper, not the Mojang vanilla jar. Paper is fully compatible, supports plugins, and gives you ~30% more TPS at the same player count. The current Paper team are the same people who built Spigot — this is the canonical performance fork.
Keeping it running with systemd
The bare java -jar command works but doesn't restart on crash and dies when you log out. A 20-line systemd unit fixes both. Save as /etc/systemd/system/minecraft.service:
[Unit]
Description=Minecraft Paper Server
After=network.target
[Service]
Type=simple
User=minecraft
WorkingDirectory=/home/minecraft/server
ExecStart=/usr/bin/java -Xmx3G -Xms3G -jar paper.jar nogui
Restart=on-failure
RestartSec=10s
[Install]
WantedBy=multi-user.targetThen sudo systemctl enable --now minecraft and you have a server that survives reboots and auto-restarts on crashes. Logs go to journalctl -u minecraft.
JVM flags — the Aikar tuning
The community-standard JVM flag set, often called "Aikar's flags," improves Paper's garbage-collection behavior dramatically. The current canonical list is maintained at PaperMC's aikars-flags page. Paste them into your ExecStart for ~20% smoother TPS at the same player count.
Option 3: Dedicated Minecraft hosts (BisectHosting, Apex, Shockbyte)
These hosts charge $0.50-$1.50 per GB of RAM per month. A 4 GB plan runs $4-8/month depending on the host and how many promo codes you stack. What you're paying for:
- One-click modpack installs (a real value-add for kids who don't want to learn ssh).
- A web panel that maps to Pterodactyl or Pelican behind the scenes.
- Support tickets when the server crashes at 2 AM.
It's not a scam — it's convenience pricing. If you'd rather not learn Linux and the $4-8/month is in budget, this is the safest option. Just check the r/admincraft sidebar for current host reputation before committing to a year.
Option 4: Multi-tenant hosting (the cheapest credible path)
We run on Pelican Wings on dedicated Hetzner boxes — the same architecture every major game host uses, just without their margin. The math: a Hetzner AX42 dedicated box (16 cores, 64 GB RAM, $50/mo) comfortably hosts 45 vanilla 1.21 servers, more once we tune lazymc idle-hibernation. That's $1.10 per server per month at hardware cost.
VibeCord Hobby is $5.99/month, includes the AI server-pack builder + Paper plugin scaffolder, and is the cheapest way we know to get a custom-modded Minecraft server with a friendly admin panel and Discord-bot integration. See the Minecraft workload landing page.
Why we run on Pelican Wings
For full transparency on what VibeCord ships: each generated Minecraft server is a Paper instance running inside a Pelican Wings container on a Hetzner AX42 dedicated machine. Pelican is the open-source successor to Pterodactyl; the licensing dispute between Pterodactyl and the host community in 2024 is the reason most new providers are migrating. Pelican's container model gives us strong isolation between tenants — something a lot of cheap hosts don't actually do, even though their marketing implies it. If you spin up your own server with us, you get a dedicated process, dedicated RAM, and your world is genuinely isolated from the next tenant's.
Buyer's checklist (works for any host)
- Confirm RAM is dedicated, not "up to".
- Check the data-center region. EU player + US host = 200ms ping = unhappy player.
- Make sure you can SFTP/upload your own world — some "easy" hosts lock this down.
- Verify backup policy. Daily snapshots are table stakes.
- Read the EULA — some hosts auto-renew at 2x the promo price.
Modpacks — what changes the math
The hosting math above assumes vanilla. The moment you add a modpack, RAM and CPU requirements jump:
- Light packs (Create, Cobblemon, Vanilla+): 4-6 GB RAM, single quad-core. The 4 GB Hetzner CX22 stops being enough; you want a CX32 (~€6/mo, 8 GB).
- Mid-weight packs (All The Mods, Better Minecraft): 8-10 GB RAM. You are now in CX42 territory or one of the dedicated game hosts' mid-tier plans.
- Heavy kitchen-sink packs (RLCraft, GregTech, Vault Hunters): 12-16 GB RAM, expect CPU spikes mid-tick. Self-hosting on a Pi is no longer realistic; either a real dedicated box or a managed host's premium tier.
Pre-bundled modpacks from CurseForge usually have a server-files download. Drop those in plugins/, edit the startup args, and you're running. For mods on Modrinth the workflow is the same.
Bedrock cross-play and the Geyser bridge
If half your group is on Java and half is on Bedrock (Switch, Xbox, mobile), you have two choices:
- Run a Bedrock-only server. Java players can't join. You'll need to use either a Realms subscription ($4-8/month) or a Pelican-Wings host with the Bedrock egg. Performance per RAM is much better than Java.
- Run a Java server with Geyser + Floodgate. Bedrock players connect through a translation proxy. Plays nice with Paper. The gotcha is some plugins behave oddly and modpacks rarely work cross-platform.
For most friend groups Geyser on Java is the right answer.
Security and admin hygiene
Three things every server admin gets wrong once and then never again:
- Use op sparingly. Op gives full access to everything; use a permission plugin (LuckPerms is the de-facto standard) so you can give friends the commands they need without the ones they don't.
- Whitelist by default for small groups.
whitelist oninserver.propertiesis one line and saves you from random scanners discovering your IP and grief-spawning lava. - Back up daily, restore monthly. A backup you've never restored is a wish. Once a month, restore your most recent backup to a test directory and confirm the world loads.
Related guides
- Luanti vs Minecraft — the honest 2026 comparison — if open-source modding matters to you.
- Best Discord bots for Minecraft servers — bridge in-game events to your community Discord.
- Best Discord bots for small servers — the bot stack to pair with your new MC server.
External resources worth bookmarking
- Mojang's official hardware requirements
- Paper getting-started docs
- Hangar — the Paper plugin marketplace.
- r/admincraft wiki — community-maintained host comparison + tuning tips.
- lazymc — sleep-on-empty for Java servers.
- Hetzner Cloud pricing — the canonical cheap-EU-VPS reference.
FAQ
Is Aternos really free forever? Yes — ad-supported. You will occasionally see promoted modpacks; the server itself is free.
Can I host on my home PC? Yes, but you'll need to port-forward 25565 on your router, and your IP changes if your ISP rotates it. Use a free dynamic-DNS service like DuckDNS to give friends a stable hostname.
Will my world transfer between hosts? Yes — the world/ folder is portable across vanilla/Paper/Spigot. Mods may need the same version installed at both ends.
Try VibeCord for $1
Want a hosted Minecraft server you can shape by chatting with an AI? Try VibeCord for $1. The first server is on us; the Hobby plan is $5.99/month after that. See the Minecraft workload page or full pricing.
Ready to build your own bot?
Stop reading, start building. Create your first Discord bot with no code required.
Get Started Free