How to Set Up a Minecraft Server
Step-by-step guide to setting up your first Minecraft server, from choosing a host to inviting players.
We earn commissions from hosting providers on this page. This doesn't affect our rankings, which are based on independent testing and research. Full disclosure
How to Set Up a Minecraft Server
Setting up your own Minecraft server lets you build a world on your terms — choose your mods, set your rules, and play with friends on your schedule. Whether you want a simple vanilla survival world or a heavily modded Forge adventure, this guide walks you through every step from picking a host to welcoming your first players. By the end, you will have a fully configured Minecraft server running 24/7.
What You'll Need
Before you begin, make sure you have the following ready:
- A Minecraft Java or Bedrock Edition license — You need to own the game to connect to your server.
- A hosting plan or a home computer — Managed hosting (recommended) starts at around $2.50/month. Self-hosting requires a machine with at least 2GB of free RAM and a stable internet connection.
- Basic familiarity with file editing — You will edit a few configuration files in a text editor.
- Your friends' Minecraft usernames — Needed for whitelisting players.
Step 1: Choose Your Hosting Approach
You have two paths: managed hosting or self-hosting. Here is how they compare.
Managed Hosting (Recommended)
A managed host handles the hardware, network uptime, DDoS protection, and automatic backups. You get a web-based control panel where you can start, stop, and configure your server without touching a command line. Providers like Shockbyte, Apex Hosting, and BisectHosting all offer one-click Minecraft server setup.
Managed hosting is the right choice for most players because:
- Servers stay online 24/7 without leaving your PC running.
- You get dedicated resources that do not compete with other programs on your machine.
- Support teams can help troubleshoot crashes, plugin conflicts, and performance issues.
- Automatic backups protect your world from corruption or accidental griefing.
When choosing a provider, look for these features: instant setup, one-click modpack installation, FTP/SFTP file access, free MySQL database (useful for plugins like LuckPerms), and server locations close to your player base.
Self-Hosting
Self-hosting means running the Minecraft server software on your own computer or a rented VPS. This gives you full control but comes with responsibilities — you handle port forwarding, security, updates, and uptime. Self-hosting makes sense if you already have a powerful machine, want to learn server administration, or only play with a small group occasionally.
Step 2: Pick Your Server Type
Minecraft server software comes in several flavors. Your choice affects performance, mod compatibility, and available features.
- Vanilla — The official Mojang server JAR. No mod or plugin support, but it is the simplest option. Best for a pure, unmodified experience.
- Paper — A high-performance fork of Spigot. Supports Bukkit and Spigot plugins with significant performance optimizations. Paper is the recommended choice for most servers.
- Spigot — The original plugin-supporting server. Supports thousands of Bukkit plugins. Paper is generally preferred over Spigot for better performance, but Spigot remains widely used.
- Forge — Required for content mods that add new blocks, items, dimensions, and mechanics. Forge mods change the actual game content. Popular modpacks like All the Mods, RLCraft, and Create run on Forge.
- Fabric — A lightweight, modern mod loader. Faster updates to new Minecraft versions than Forge. Mods like Sodium, Lithium, and Origins use Fabric.
- NeoForge — A community-driven fork of Forge that has become the primary continuation. Most new Forge-style mods target NeoForge.
How to decide: If you want plugins (permissions, economy, minigames), choose Paper. If you want content mods (new items, new dimensions), choose Forge or Fabric depending on the modpack. If you just want the simplest experience, use Vanilla.
Step 3: Set Up Your Server on a Managed Host
Here is the typical setup process using a managed hosting provider:
- Create an account and purchase a plan. For a small group of 5-10 players on vanilla or Paper, 2GB of RAM is enough. For modded servers, start with 4GB minimum.
- Select Minecraft as your game during checkout.
- Choose your server type — Most hosts let you pick Vanilla, Paper, Spigot, Forge, or Fabric during setup or from the control panel afterward.
- Select a server location closest to where the majority of your players live. Lower latency means less lag.
- Wait for provisioning — Most hosts complete setup within 60 seconds. You will receive your server IP address and port number.
Once provisioned, log in to your hosting control panel. You will see options to start/stop the server, access the file manager, view the console, and install plugins or modpacks.
Step 4: Configure server.properties
The server.properties file controls your server's core behavior. Access it through your host's file manager or via FTP. Here are the most important settings to customize:
# Server basics
server-name=My Awesome Server
motd=Welcome to our server!
max-players=20
difficulty=normal
gamemode=survival
# World settings
level-seed= # Leave blank for random, or enter a specific seed
level-type=minecraft\:normal # Options: normal, flat, large_biomes, amplified
spawn-protection=16 # Radius around spawn where only ops can build
view-distance=10 # Render distance in chunks (lower = better performance)
simulation-distance=8 # Tick distance in chunks
# Network
server-port=25565 # Default port — your host assigns this
online-mode=true # Keep true to verify player accounts
enable-query=true # Allows server list pings
# Player settings
pvp=true # Toggle PvP combat
allow-flight=false # Set to true if using mods that enable flying
white-list=false # Set to true to restrict access
After making changes, save the file and restart the server for them to take effect.
Step 5: Install Plugins (Paper/Spigot Servers)
Plugins extend your server's functionality without requiring players to install anything on their client. Here is how to install them:
- Find plugins on Modrinth, Hangar, or SpigotMC.
- Download the .jar file for the plugin. Make sure it is compatible with your server version.
- Upload the .jar file to the
/plugins/folder using your host's file manager or FTP. - Restart the server — The plugin will generate its configuration files in
/plugins/PluginName/. - Edit the config — Most plugins create a
config.ymlfile you can customize.
Essential Plugins for New Servers
- EssentialsX — Core commands:
/home,/warp,/tpa,/spawn, and more. - LuckPerms — Permission management. Control what each player or group can do.
- WorldGuard — Region protection. Prevent griefing in specific areas.
- CoreProtect — Block logging. See who placed or broke any block and roll back griefing.
- Vault — Economy API. Required by many plugins that use in-game currency.
Step 6: Install Mods (Forge/Fabric Servers)
For modded servers, both the server and all players need the same mods installed.
- Choose a modpack or build your own mod list. CurseForge and Modrinth host thousands of modpacks.
- Many hosts offer one-click modpack installers — Search for the modpack name in your control panel and click install.
- For manual installation, upload mod
.jarfiles to the/mods/folder via FTP. - Ensure version compatibility — Every mod must match your Minecraft version and mod loader version exactly.
- Allocate enough RAM — Modpacks like All the Mods 9 need 6-8GB minimum. Large kitchen-sink packs may need 10GB+.
- Share the modpack with your players so they have the exact same mods installed.
Step 7: Port Forwarding (Self-Hosted Only)
If you are self-hosting on your home network, players outside your network need port forwarding to connect.
- Find your router's admin page — Usually
192.168.0.1or192.168.1.1in your browser. - Log in with your router credentials (check the sticker on your router if you have not changed them).
- Navigate to Port Forwarding — This is sometimes under Advanced Settings, NAT, or Gaming.
- Create a new rule:
- Protocol: TCP
- External port: 25565
- Internal port: 25565
- Internal IP: Your server machine's local IP address (find it with
ipconfigon Windows orip addron Linux)
- Save and apply the rule.
- Share your public IP with players — Find it at whatismyip.com. Players connect using
your.public.ip:25565.
Security note: Exposing ports on your home network carries risk. Always keep your server software updated and consider using a firewall. This is one reason managed hosting is recommended.
Step 8: Invite Players and Set Up Permissions
Whitelisting
If you want to restrict who can join, enable the whitelist in server.properties by setting white-list=true, then use these commands in the server console:
whitelist add PlayerName
whitelist remove PlayerName
whitelist list
Operator Permissions
Server operators (ops) have full admin powers. Add operators with:
op PlayerName
deop PlayerName
For finer control, use LuckPerms to create groups (e.g., admin, moderator, member) and assign specific permissions to each group.
Basic Admin Commands
These commands work in the server console or in-game with operator permissions:
| Command | Description |
|---|---|
| /gamemode survival PlayerName | Set a player's game mode |
| /tp PlayerName X Y Z | Teleport a player to coordinates |
| /ban PlayerName reason | Ban a player |
| /kick PlayerName reason | Kick a player |
| /weather clear | Clear the weather |
| /time set day | Set time to daytime |
| /gamerule keepInventory true | Players keep items on death |
| /seed | Display the world seed |
Step 9: Optimize Server Performance
A laggy server frustrates players. Here are the most impactful performance tweaks:
- Use Paper instead of Vanilla or Spigot — Paper includes dozens of performance patches out of the box.
- Reduce view-distance to 8-10 and simulation-distance to 6-8 in
server.properties. This is the single biggest performance lever. - Pre-generate your world using the Chunky plugin. This avoids lag spikes from generating new chunks when players explore.
- Limit entity counts — Too many mobs or item drops cause lag. Plugins like Farm Limiter help.
- Use Aikar's JVM flags — Optimized Java garbage collection settings specifically tuned for Minecraft servers. Most managed hosts apply these automatically.
- Monitor with Spark — The Spark profiler plugin shows exactly what is causing lag.
Troubleshooting Common Issues
"Can't connect to server" error:
- Verify the server is running and not crashed (check the console for errors).
- Confirm you are using the correct IP address and port.
- For self-hosted: verify port forwarding is configured correctly and your firewall allows traffic on port 25565.
- For Bedrock players connecting to Java: you need a plugin like GeyserMC for crossplay.
Server crashes on startup:
- Check the latest log file in
/logs/latest.logfor error messages. - A common cause is incompatible plugin or mod versions. Remove recently added plugins/mods and try again.
- Ensure you have enough RAM allocated. Forge modpacks are the most common culprit for out-of-memory crashes.
Players experience lag:
- Run
/tps(ticks per second) in the console. A healthy server runs at 20 TPS. Below 15 TPS is noticeable lag. - Use the Spark profiler to identify the cause.
- Reduce view-distance and simulation-distance.
- Check if a specific plugin is consuming excessive resources.
World corruption or data loss:
- Always keep automatic backups enabled.
- If a chunk is corrupted, you can delete the affected region file and it will regenerate.
- Use CoreProtect to roll back griefing damage.
Mods not loading:
- Verify that every mod matches the exact Minecraft version and mod loader version.
- Check for missing dependency mods — many mods require library mods to function.
- Read the crash report in
/crash-reports/for specific error details.
Next Steps
Once your server is running smoothly, consider these enhancements:
- Set up a server website using a free tool like Enjin or a simple Discord server for your community.
- Configure automatic restarts — Most hosts offer scheduled restart settings. Daily restarts help prevent memory leaks.
- Create a spawn area — Build a welcoming spawn point with rules, a bulletin board, and portals to key locations.
- Set up a resource pack — Server resource packs automatically download when players join, giving your server a custom look and feel.
With the right host and these configurations in place, your Minecraft server will be ready for years of adventures. Providers like Shockbyte, Apex Hosting, and BisectHosting make the technical side easy so you can focus on building your community.
Recommended Hosting for Minecraft
Our top picks based on performance testing and user reviews.