How to make a Minecraft server: the complete guide
4 ways to get your own server, from Realms to a dedicated VPS. Configuration, plugins, optimization, backups. Everything you need to play with your friends.
To play Minecraft with your friends on your own terms, you need a server. You don't have to be an IT expert: all it takes is 30 minutes and this guide. Below are four ways to set up a server, from the simplest (Realms) to full control (your own VPS). Each one has different advantages, costs and technical requirements.
If you're just getting started with multiplayer, take a look at our guide to playing with friends first. It also covers LAN, which doesn't need a server at all.
Quick overview: 4 ways to run a Minecraft server
| Method | Cost | Players | Plugins | 24/7 | Difficulty |
|---|---|---|---|---|---|
| Realms | ~30-36 PLN/month | 10 | No | Yes | Easy |
| Hosting | 10-80 PLN/month | 10-100+ | Yes | Yes | Easy |
| Your own PC | Free | 5-20 | Yes | No* | Medium |
| VPS / dedicated | 20-200 PLN/month | 20-200+ | Yes | Yes | Advanced |
* The server only runs while your computer is on.
The choice comes down to three things: your budget, the number of players and how much time you want to spend on setup. Let's go through each option.
Option 1: Minecraft Realms, the simplest route
Minecraft Realms is Mojang's official service. You pay a subscription, click a few buttons and you have a working server. No setup, no technical knowledge needed.
What you get
- Realms: Java Edition, with up to 10 players at once, for about 36 PLN/month
- Realms Plus (Bedrock), with up to 10 players + 150 Marketplace packs, for about 30 PLN/month
- The server runs 24/7, even when nobody is playing
- Automatic backups (you can roll the world back to an earlier point)
- Uploading your own worlds and downloading them to your drive
- Minigames and maps from Mojang in the library
What you don't get
- No plugins at all: it's pure vanilla Minecraft
- No mods (apart from Bedrock add-ons)
- Limited configuration: you can't change server.properties
- The server is hosted by Mojang, so you have no access to the files or logs
Realms is a good choice if you have 5-10 friends, you want to play vanilla and nobody feels like doing admin work. If you need plugins, mods or more players, read on.
Option 2: Minecraft server hosting
Hosting is the middle road between Realms and your own server. You pay a provider for a server with an admin panel that lets you install plugins, change settings and manage players in your browser. You don't have to configure anything on your own computer.
Popular hosting providers in Poland
| Provider | Price (from) | RAM | Plugins | Free option | Notes |
|---|---|---|---|---|---|
| CraftServe | ~15 PLN/month | 2-16 GB | Yes | No | Polish, good support, Crafty panel |
| Apex Hosting | ~20 PLN/month | 2-32 GB | Yes | No | Global, servers in Poland, Multicraft panel |
| LVL.GG | ~12 PLN/month | 1-16 GB | Yes | No | Polish, Pterodactyl panel |
| Aternos | Free | ~4 GB | Yes | Yes | Queue, sleep mode, ads |
| Minehut | Free | ~2 GB | Yes (plugins) | Yes | Limited mods, faster startup |
Advantages of hosting
- An admin panel in your browser: you don't need to know the command line
- DDoS protection included in the price
- Automatic backups and one-click plugin installation
- The server runs 24/7 without putting any load on your computer
- Technical support when something doesn't work
What to watch out for
- Overselling: cheap hosts pack lots of customers onto one physical server. If an offer seems too cheap, it probably is
- Free tiers: Aternos and Minehut work, but the queues and the server going to sleep after 5 minutes of inactivity are serious limitations
- Server location: if you play from Poland, choose hosting with servers in Poland or Germany. A server in the US means 100-200 ms of ping for players in Poland
You'll find more provider comparisons in our Minecraft hosting ranking.
Tip: If you can't decide between Aternos and paid hosting, start with Aternos. If the queues and sleep mode bother you, spend 15 PLN on CraftServe or LVL.GG. The difference in comfort is huge.
Option 3: A server on your own computer, step by step
This is the most popular option among players who want full control for free. You download the software, configure a few files, open a port on your router and you're done. The whole process takes about 20-30 minutes.
Hardware requirements
- RAM: at least 4 GB free (8 GB in total in the computer)
- CPU: any 4-core processor from the last 5 years
- Drive: an SSD is strongly recommended (HDD = slower chunk loading)
- Internet: at least 5 Mbps of upload (check it at speedtest.net)
- System: Windows 10/11, macOS or Linux
Step 1: Download the server software
You have three main options:
- Vanilla server.jar: the official server from Mojang. Download it from minecraft.net/download/server. No plugin support
- Paper: an optimized fork with plugin support. Download it from papermc.io. The recommended choice
- Purpur: a Paper fork with even more configuration options. Download it from purpurmc.org
If you're planning to use plugins (and you probably are), go with Paper. It's faster than vanilla, has security patches and supports all Spigot/Paper plugins. There's more about server software in our wiki.
Step 2: Install Java 21
Minecraft 1.21+ requires Java 21. Even if you already have Java installed, check the version:
- Open a command prompt (Windows: Win+R, type
cmd, Enter) - Type:
java -version - If you see a version lower than 21, or a message saying Java isn't installed, download Eclipse Temurin 21 from adoptium.net
- Install it with the default settings (tick "Set JAVA_HOME")
Note: Don't install Java from Oracle: the Oracle JDK license isn't free for commercial use. Eclipse Temurin is a completely free, open-source Java distribution with identical performance.
Step 3: First server launch
- Create a new folder, for example
C:\MinecraftServer - Put the downloaded
server.jarfile (orpaper-1.21.5.jar) in that folder - Create a
start.batfile (Windows) orstart.sh(macOS/Linux) with this content:
Windows (start.bat):
java -Xmx4G -Xms4G -jar server.jar nogui
pause macOS / Linux (start.sh):
#!/bin/bash
java -Xmx4G -Xms4G -jar server.jar nogui - Run the file. The server stops with a message about the EULA
- Open
eula.txtand changeeula=falsetoeula=true - Run it again. The server generates the world, which takes 1-3 minutes
The -Xmx4G parameter means 4 GB of RAM for the server. Adjust it to your hardware: 2G for 1-3 players, 4G for 5-10, 6G+ for more.
Step 4: Configure server.properties
After the first launch, a server.properties file appears in the server folder. It's the main configuration file. These are the most important settings:
| Setting | Default | Recommended | What it does |
|---|---|---|---|
server-port | 25565 | 25565 | The server port: don't change it unless you have a reason |
max-players | 20 | Your number of friends + 2 | The limit of players online at the same time |
view-distance | 10 | 8 | View range in chunks. Lower = better performance |
simulation-distance | 10 | 6 | Simulation range (mobs, farms). Key for performance |
motd | A Minecraft Server | Your description | The text shown in the server list |
difficulty | easy | normal or hard | The difficulty level |
white-list | false | true | Only invited players can join |
online-mode | true | true | Verifies Mojang accounts. NEVER turn it off without a reason |
spawn-protection | 16 | 0-16 | Spawn protection radius (only OPs can build there) |
enable-command-block | false | false | Turn it on only if you need command blocks |
You'll find a full description of all 50+ settings in our server.properties configuration guide.
Tip: Turn on the whitelist (white-list=true). Without it, anyone who knows your IP can join the server. You add players with the /whitelist add PlayerName command in the server console.
Step 5: Port forwarding on your router
For friends on the internet to be able to connect, you have to open port 25565 on your router. Without that, the server only works on your local network (LAN).
- Find your computer's local IP: open
cmdand typeipconfig. Look for "IPv4 Address", for example192.168.0.105 - Log in to your router: type
192.168.0.1or192.168.1.1into your browser. The login and password are usually on a sticker under the router - Find the Port Forwarding section (it may also be called NAT or Virtual Servers)
- Add a new rule:
| Field | Value |
|---|---|
| Name / Description | Minecraft Server |
| External port | 25565 |
| Internal port | 25565 |
| Protocol | TCP (or TCP/UDP) |
| Destination IP address | Your local IP (for example 192.168.0.105) |
- Save and restart the router (not always necessary, but just in case)
- Check your public IP: go to whatismyip.com. That's the address you send to your friends
A note on security: opening a port means your server can be reached from the whole internet. Turn on the whitelist, set a strong password on your router and consider extra server protection.
Step 6: Testing and connecting
- You (the host): in Minecraft, open Multiplayer, then Direct Connection, and type
localhostor127.0.0.1 - Someone on your network: enters your local IP, for example
192.168.0.105 - Someone on the internet: enters your public IP, for example
83.12.45.67
If it won't connect, check:
- Is the server running (the console should be showing logs)?
- Is Windows Firewall blocking Java? (It should ask you for permission the first time you start the server)
- Is port forwarding set up correctly? Check it at canyouseeme.org (port 25565)
- Do you both have the same version of Minecraft?
Option 4: A VPS or dedicated server
A VPS (Virtual Private Server) is a rented server in a data center that runs 24/7. It has a static IP, guaranteed resources and professional infrastructure. It's the option for more serious servers with 20+ players.
When to choose a VPS over hosting
- You need more than one server (for example a lobby + survival + minigames with BungeeCord)
- You want full control over the operating system
- You're planning a modded server (Forge/NeoForge/Fabric) that needs a specific setup
- You have 20+ players and your hosting can't keep up
Recommended VPS providers
| Provider | Price (from) | RAM | Location | Notes |
|---|---|---|---|---|
| Hetzner | ~18 PLN/month | 4 GB | Germany, Finland | Great price/performance, low ping from Poland |
| OVH | ~25 PLN/month | 4 GB | France, Poland | Servers in Warsaw, anti-DDoS |
| Oracle Cloud | Free | 24 GB (ARM) | Germany | Always Free Tier: 4 ARM cores, 24 GB of RAM |
| Contabo | ~20 PLN/month | 8 GB | Germany | Lots of RAM for a low price, slower drives |
Tip: Oracle Cloud Free Tier gives you 4 ARM cores and 24 GB of RAM for free, forever. That's enough for a server with 30+ players. Setting it up takes more know-how (Linux, firewall), but financially it's the best option. Search YouTube for "Oracle Cloud Minecraft server" tutorials.
Setting up a VPS in brief
- Order a VPS with Ubuntu 22.04 or Debian 12
- Connect over SSH:
ssh root@vps_ip_address - Install Java:
apt update && apt install openjdk-21-jre-headless -y - Create a user:
adduser minecraft(never run the server as root) - Download Paper:
wget https://api.papermc.io/v2/projects/paper/versions/1.21.5/builds/BUILD/downloads/paper-1.21.5-BUILD.jar - Set up the firewall:
ufw allow 25565/tcp - Run the server in screen/tmux:
screen -S mc java -Xmx4G -Xms4G -jar paper.jar nogui
This is the short version. For full instructions with systemd, automatic restarts and monitoring, read our detailed server administration guide.
Installing plugins (Paper / Spigot)
Plugins are the biggest advantage your own server has over Realms. They add grief protection, economies, new game modes, rank systems and hundreds of other features. They run on Paper, Spigot and their forks (Purpur, Pufferfish).
How to install a plugin
- Download the plugin's
.jarfile from a trusted source: Modrinth, SpigotMC, Hangar - Put the file in the
plugins/folder in the server directory - Restart the server (the
/stopcommand in the console, then start it again) - Check the console: the plugin should load without errors
- Configure the plugin in its config file at
plugins/PluginName/config.yml
Must-have plugins to start with
| Plugin | What for | Why you need it |
|---|---|---|
| EssentialsX | Basic commands | /home, /tpa, /warp, /spawn, kits, economy |
| LuckPerms | Rank system | Permissions, groups, ranks (Admin, Mod, Player) |
| WorldGuard | Land protection | Regions, grief blocking, flags (PvP, TNT) |
| CoreProtect | Change logs | Who built or broke what. Roll back griefing with a single command |
| Vault | Economy API | Connects economy plugins. Required by EssentialsX Economy |
There are more recommendations in our plugin catalog and our best plugins of 2026 ranking.
Warning: never download plugins from random websites. Malicious plugins can steal player data, give someone a backdoor into your server or destroy your world. Use only Modrinth, SpigotMC and Hangar.
Optimizing server performance
A Minecraft server is single-threaded: it mostly uses one CPU core. Even a powerful computer can lag with a bad configuration. Here's what to do to keep your server running smoothly.
Aikar's flags
The standard java -Xmx4G -jar server.jar doesn't make full use of the garbage collector. Aikar's Flags are a set of JVM parameters optimized for Minecraft. Use them instead of the plain start command:
java -Xmx4G -Xms4G -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 -jar server.jar nogui Paste this into your start.bat / start.sh file on a single line. Change -Xmx4G -Xms4G to the amount of RAM you want to allocate.
server.properties settings for performance
| Setting | Default | Recommended | Effect |
|---|---|---|---|
view-distance | 10 | 6-8 | Fewer chunks to load = less RAM and CPU |
simulation-distance | 10 | 4-6 | Mobs and farms only run within this range |
max-players | 20 | Your real number | Don't set 100 if there are 5 of you |
entity-broadcast-range-percentage | 100 | 75 | Limits the range in which the server sends mob data |
Paper configuration
Paper has its own config files with extra optimizations. The key changes:
max-auto-save-chunks-per-tick: 8(default 24): fewer chunks saved at onceoptimize-explosions: true: faster TNT explosion calculationsmob-spawner-tick-rate: 2(default 1): spawners check every 2 ticks instead of every tickdisable-chest-cat-detection: true: chests open even with a cat sitting on them
You'll find a detailed guide to optimizing Paper, Purpur and Pufferfish in our server optimization guide.
Other ways to improve performance
- Pregenerate the world: the Chunky plugin lets you generate chunks in advance. Generating them on the fly (as players explore) puts load on the CPU
- Limit mobs: the Spark plugin or Timings shows how many ticks the mobs take up. Lower the spawn limits in
bukkit.yml - Use Paper/Purpur: vanilla and Spigot are slower. Paper has dozens of performance patches
- SSD instead of HDD: reading and writing the world is many times faster on an SSD
Backup strategy: don't lose your world
Backups are your server's insurance. Without them, a single griefer, a corrupted chunk or a critical plugin bug can destroy hundreds of hours of work. Make backups.
What to back up
- The world folders (
world/,world_nether/,world_the_end/): maps, builds, player data - The plugins/ folder: plugin configs and economy, rank and region data
- server.properties + other config files
How to back up
- By hand: stop the server (
/stop), copy the whole server folder, start it again - Automatically: the DriveBackupV2 plugin makes a backup every X hours and uploads it to Google Drive or OneDrive
- On a VPS: a cron job with tar:
tar -czf /backups/mc-$(date +%Y%m%d).tar.gz /home/minecraft/server/
Backup rules
- Back up at least once a day (every 6 hours is better)
- Keep at least the last 7 backups: one day isn't enough if you only notice a problem a week later
- Store backups off the server (Google Drive, a separate drive). A backup on the same drive as the server won't protect you from a drive failure
- Test restoring: a backup you can't restore is worthless
There's more on backup strategies in our backup guide.
Which option to choose: summary
- Playing with 3-5 friends and don't need plugins: Realms or Aternos
- Want plugins but don't want to configure a server: paid hosting (CraftServe, Apex, LVL.GG)
- Want full control and have time to set things up: a server on your own PC
- Building a community of 20+ players: a VPS (Hetzner, OVH) or a dedicated server
- Zero budget, but comfortable with Linux: Oracle Cloud Free Tier
Whatever you choose, start small. Setting up a server for 5 friends is one thing; running a community of 100 players is a whole different level of challenge. Check out the server section of our wiki, where you'll find guides on every topic, from managing players to diagnosing lag.
Frequently asked questions
How much does a Minecraft server cost?
A server on your own PC is free (you pay for the electricity). Realms: 30-36 PLN/month. Hosting: from 10 PLN/month. Aternos: free, with limitations. VPS: from 18 PLN/month.
Can I set up a Minecraft server for free?
Yes. You have three options: Aternos (free, but with queues and sleep mode), your own computer (you need to set up the port), and Oracle Cloud Free Tier (a free VPS with 24 GB of RAM that requires Linux know-how).
How much RAM does a Minecraft server need?
At least 2 GB for 1-5 players on vanilla. 4 GB for 10 players. 6-8 GB for 20+ players or a modded server. Paper uses less RAM than vanilla thanks to its optimizations.
How do I install plugins?
Use Paper or Spigot (not vanilla). Download the plugin's .jar file from Modrinth, SpigotMC or Hangar. Put it in the plugins/ folder and restart the server. You'll find the details in the installing plugins section above.
Is my computer good enough for a server?
If you have 8 GB of RAM, any 4-core CPU and at least 5 Mbps of upload, that's enough for 5-10 players. For 20+ players you need 16 GB of RAM and a stronger CPU.
How do I keep a server running 24/7?
On your own PC, the computer has to stay on non-stop. Better options: paid hosting (from 10 PLN/month), a VPS (from 18 PLN/month), Realms (36 PLN/month) or an old computer/Raspberry Pi as a dedicated server.
How do I open port 25565?
Log in to your router's admin panel (192.168.0.1 or 192.168.1.1), find Port Forwarding and add a rule: port 25565 TCP to your computer's IP. You'll find step-by-step instructions in the server on your own PC section.
Paper or Spigot?
Paper. It's faster and more secure, and it supports the same plugins as Spigot. The only reason to choose Spigot is a specific plugin that only works with Spigot (which is rare).