Dedicated Hosting

How to host a Minecraft server: home, shared plan or dedicated

How to host a Minecraft server: home, shared plan or dedicated

You can host a Minecraft server in three places: a spare PC at home, a cheap shared “Minecraft host” plan, or a dedicated server you control. For three friends on a weekend world, home or a small plan is fine. Once you have a real community (dozens of regulars, plugins, people who notice lag), a dedicated server costs less per player and holds a steadier tick than an oversold shared plan.

Below: who each option fits, how to size hardware, and a Java Edition setup on Linux.

Three ways to host a Minecraft server

At home. It’s free if you already own the PC. You forward TCP 25565 on your router, and your home IP address is now known to everyone who joins. Your upload speed competes with everyone else in the house. For a few friends who trust each other, that’s an acceptable deal.

Shared Minecraft hosting. This is what most “cheap Minecraft server hosting” and “easy Minecraft server hosting” results sell: a control panel, one-click modpacks, a plan priced by RAM. You’re renting a slice of a node shared with other people’s servers. The RAM is usually real. The CPU time usually isn’t guaranteed, and because Minecraft leans on one fast core, a busy neighbor shows up as lag on your server. Fine for small groups and anyone who never wants to see a terminal.

Your own dedicated server. You get the whole machine: every core, all the RAM, root access, your choice of Java version and server software. Setup takes an evening the first time. What you get back is a box nobody else’s plugins can slow down, room to run a survival world, a creative world and a lobby side by side, and a monthly price that doesn’t climb every time you add 2 GB.

Here’s the test I’d use. Take the shared plan you’d actually need for your player count (usually 8 GB or more with plugins), multiply by the number of worlds you run, and compare that to a whole dedicated server. Past a couple of dozen regular players, the dedicated box usually wins on price and always wins on control.

Why clock speed matters more than core count

Minecraft runs its world simulation on one main thread, 20 times a second. That gives each tick a 50 ms budget. If mobs, redstone, hoppers and chunk loading take longer than that, the server falls behind and players see rubber-banding and frozen mobs.

Extra cores still help with chunk generation, networking, garbage collection and running several servers on one box. They just don’t make a single world tick faster. The PaperMC team built Folia to tick regions of the world in parallel because that main thread is the ceiling, and it asks for at least 16 cores. That’s for very large networks, not your first server.

So when you compare hardware, look at single-core clock speed first and core count second.

How much RAM and CPU a Minecraft server needs

These are rules of thumb, not guarantees. Plugins, view distance and how far players spread out change the numbers more than player count does. The heap figure is what you give Java with -Xmx; the box needs more than that.

Server typeConcurrent playersJava heap (rule of thumb)CPU priority
Vanilla, friends2–52–4 GB (minecraft.wiki suggests 2 GB for a 5-player home server)Any modern core
Paper with plugins, small community10–306–10 GB (PaperMC’s recommendation)Highest single-core clock you can get
Paper, busy community30–8010–12 GB; past this, CPU is the limit, not RAMHigh clock, pre-generated world, lower view distance
Light modpack (under ~100 mods)5–156–8 GBHigh clock
Large “kitchen sink” modpack (300+ mods)5–2010–16 GB; check the pack’s own docsHigh clock; SSD strongly preferred

PaperMC recommends at least 6–10 GB “no matter how few players,” setting -Xms equal to -Xmx, and leaving roughly 1,000–1,500 MB of system memory outside Java (PaperMC: Aikar’s flags). They also note that huge heaps, like 32 GB, buy you almost nothing. Modpacks are what eat RAM: hundreds of mods loading their own blocks and recipes can double a vanilla world’s needs before anyone joins.

Set up a Minecraft Java server on Linux

This walkthrough uses Ubuntu 24.04 and Paper, a high-performance fork of the vanilla server that runs Bukkit/Spigot plugins. The vanilla jar from minecraft.net works the same way; swap the file name. The steps follow the minecraft.wiki server setup tutorial and the PaperMC docs.

1. Install Java 25 and create a service user

Minecraft 26.1 and later require Java 25. Older versions need older runtimes (1.20.5 through 1.21.x use Java 21), so match Java to the game version you run.

sudo apt update
sudo apt install -y openjdk-25-jre-headless
java -version
sudo useradd -r -m -d /opt/minecraft -s /bin/bash minecraft

Never run the server as root.

2. Download the server and accept the EULA

sudo -iu minecraft
cd /opt/minecraft
wget -O paper.jar "<paste the build link from papermc.io/downloads/paper>"
java -Xms2G -Xmx2G -jar paper.jar --nogui

The first run creates eula.txt and exits. Read the Minecraft EULA, especially if you plan to charge players for anything, then accept it:

sed -i 's/eula=false/eula=true/' eula.txt

3. Set memory and run it under systemd

On a 16 GB box running one server, a 12 GB heap leaves room for the OS, backups and disk cache. Paper’s startup script generator can add the full set of G1 garbage collector flags if you want them.

Create /etc/systemd/system/minecraft.service:

[Unit]
Description=Minecraft (Paper) server
After=network-online.target
Wants=network-online.target

[Service]
User=minecraft
WorkingDirectory=/opt/minecraft
ExecStart=/usr/bin/java -Xms12G -Xmx12G -jar paper.jar --nogui
Restart=on-failure
RestartSec=10
SuccessExitStatus=0 143

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable --now minecraft
journalctl -u minecraft -f

systemd doesn’t give you an interactive console, so turn on RCON in server.properties (it listens on TCP 25575 by default; keep that port closed to the internet) and use a client like mcrcon. If you’d rather type straight into the console, skip systemd and run the same java command inside tmux new -s mc, then detach with Ctrl-b, d. Check that a systemctl stop leaves your world saved before you trust it.

4. Open the firewall

sudo ufw allow OpenSSH
sudo ufw allow 25565/tcp
sudo ufw enable

Java Edition uses TCP 25565. Bedrock Dedicated Server uses UDP 19132 instead, so a Bedrock box needs sudo ufw allow 19132/udp.

5. Tune server.properties

motd=Our survival server
max-players=40
difficulty=normal
view-distance=8
simulation-distance=6
online-mode=true
white-list=true
enforce-whitelist=true

Both distance settings default to 10 chunks. Dropping them is the cheapest performance win you’ll find. Keep online-mode=true so only verified accounts can join.

6. Whitelist and operators

From the RCON or tmux console (no leading slash):

whitelist add PlayerName
op YourName

Give op to as few people as possible.

7. Back up the world

A cron job that pauses saves, archives the world folders and resumes:

#!/bin/bash
set -e
cd /opt/minecraft
mcrcon -p "$RCON_PASS" "save-off" "save-all flush"
tar -czf backups/world-$(date +%F-%H%M).tar.gz world world_nether world_the_end
mcrcon -p "$RCON_PASS" "save-on"
find backups -name 'world-*.tar.gz' -mtime +7 -delete

A backup on the same disk isn’t a backup. Copy it off the box too.

Where GigeNET fits

We’ve run servers since 1998, and the setup above is exactly what our dedicated boxes are for. Two builds make sense for Minecraft:

  • Entry build, $126/mo in Chicago and Los Angeles. Xeon E3-1230 v1 (4 cores/8 threads), 16 GB RAM, 1 TB HDD, 30 TB transfer. Intel rates that chip at 3.2 GHz base and 3.6 GHz turbo, which is the number that matters for one world. Our estimate: roughly 20–40 concurrent players on Paper with trimmed view distances, fewer on vanilla or with heavy plugins. Profile with a tool like spark before you trust anyone’s player count, ours included. If the order form offers an SSD for your build, take it; chunk loading notices.
  • Xeon D-1541, $248/mo. 8 cores/16 threads, 64 GB RAM, 1 TB SSD, 30 TB transfer. Its clocks are lower (2.1 GHz base, 2.7 GHz turbo), so it won’t tick one vanilla world faster than the entry box. Buy it for RAM and cores: a big modpack, or a network of several servers behind a proxy, one per core.

Both are month to month with $0 setup, full root access and IPMI on a private network. In-stock builds come online the same day or the next. Public Minecraft servers attract DDoS attacks, usually from someone you just banned, and DDoS protection shows as included at $0 on our Chicago order forms.

Pick the location closest to your players. Chicago sits in the middle of the US and is a good default for a North American community. Los Angeles suits a West Coast or Pacific player base. Ashburn covers the East Coast: our network team measured about 8 ms from Ashburn to New York and about 52 ms to Los Angeles.

Other games run on the same box

A game server is just a dedicated server running different software. Rust, Valheim and CS2 all ship dedicated servers you install with Valve’s SteamCMD on Linux, managed the same way: a service user, a systemd unit, a firewall rule. ARK: Survival Ascended ships a Windows server build; people run it on Linux through Proton, or you can add Windows Server Standard on our order form for $50/mo. Ports and RAM vary a lot, so check each game’s docs.

FAQ

What is a dedicated server in Minecraft?

It’s a machine that runs only the Minecraft server software, separate from anyone’s game client. In hosting, it means renting a whole computer in a datacenter where you control the OS, Java version and plugins, and nobody else shares the CPU.

How much RAM does a Minecraft server need?

For a few friends on vanilla, 2–4 GB of heap works. A Paper server with plugins wants 6–10 GB, which is PaperMC’s own recommendation, and large modpacks often need 10 GB or more. Leave at least 1–1.5 GB of system memory outside the Java heap.

Is it cheaper to host a Minecraft server yourself?

For a handful of players, hosting at home is cheapest because you already own the hardware. For a growing community, a dedicated server usually costs less per player than stacking shared plans, and you can run several worlds on it. The trade is that you handle updates and backups.

What port does a Minecraft server use?

Java Edition listens on TCP 25565 by default. Bedrock Dedicated Server uses UDP 19132. RCON, if you enable it, uses TCP 25575 and shouldn’t be open to the internet.

Can Bedrock players join a Java server?

Not natively. The Geyser plugin translates between the two editions and listens on UDP 19132 by default, so open that port as well as 25565. Expect some Java-only features to behave differently for Bedrock players.

If you want a box sized for a specific modpack or player count, send us the details on the custom quote form and we’ll spec it with you.