Can't connect to my Minecraft server
This page covers what a player sees when they try to join your Minecraft Java server. Find the exact message below. For the basics of getting an address, see Connecting. If nobody can connect to any of your servers, see Can’t connect to any game.
Connection timed out / Can’t connect to server
Section titled “Connection timed out / Can’t connect to server”Why it happens: The player’s game sent a request and got no answer. Usually the server is Offline or still Starting, the address or port is wrong, or something on the player’s side (firewall, VPN, school or work network) blocks the connection.
How to fix it:
- Open your server in the panel and check the status. It must say Online, not Offline or Starting.
- In the Console, wait for the line that says “Done” before joining.
- Open Network and copy the hostname and port shown for your Primary allocation.
- In Minecraft, use that exact address. If the port is not 25565, add it after a colon, like
hostname:port. - If it still fails, see the “works for me but not my friend” section below.
Connection refused
Section titled “Connection refused”Why it happens: The address was reached but nothing was listening on that port. This usually means the server is stopped, is still starting, or the player typed the wrong port.
How to fix it:
- Check the server is Online in the panel.
- Compare the port the player typed with the Primary allocation on the Network page.
- Restart the server and try again after “Done” appears in the Console.
io.netty.channel.AbstractChannel$AnnotatedConnectException
Section titled “io.netty.channel.AbstractChannel$AnnotatedConnectException”io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: no further informationWhy it happens: This is the technical version of “Connection refused” or “Connection timed out”. The game could not open a connection to that address and port.
How to fix it:
- Follow the steps for “Connection refused” and “Connection timed out” above.
- Check for a typo in the address. A missing letter or extra space in the hostname causes this.
- Ask the player to try from a different network, for example a phone hotspot, to rule out a local block.
Unknown host
Section titled “Unknown host”Why it happens: The player’s computer cannot turn the name into an address. Usually a typo, a subdomain that does not exist yet, or a DNS change that has not spread yet.
How to fix it:
- Check the spelling of the address in Minecraft.
- If you use a custom name, open Subdomains and check it is set up. See Subdomains.
- As a test, use the hostname and port from the Network page instead.
- Wait a while and try again if you changed DNS recently.
Server not found after a DNS or subdomain change
Section titled “Server not found after a DNS or subdomain change”Why it happens: Name lookups are cached by the player’s computer, their router and their ISP. After a change, old answers can stay for a while.
How to fix it:
- Wait and try again later. Changes can take time to reach everyone.
- Have the player restart their game and their computer or router.
- In the meantime, players can join with the hostname and port from the Network page.
Server still shows the old MOTD, or grey bars in the server list
Section titled “Server still shows the old MOTD, or grey bars in the server list”Why it happens: The server list caches the last answer. Grey bars with no ping usually mean the list has not reached the server yet, or the server is Offline. An old MOTD means the list has not refreshed.
How to fix it:
- Make sure the server is Online.
- In the game, click Refresh in the multiplayer list, or remove the server entry and add it again.
- To change the MOTD, edit it in Properties (the
motdsetting) and restart. See Server settings how-to.
Failed to verify username
Section titled “Failed to verify username”Why it happens: With online-mode on, the server asks Mojang’s session servers to confirm the player. This usually fails when Mojang’s login services are down or slow, or when the player’s session is bad.
How to fix it:
- Ask the player to fully close and reopen the game and the launcher, then log in again.
- Wait a few minutes and retry. If the login services are having a problem, it clears on its own.
- If it happens to every player, restart the server and check the Console for errors around the login attempt.
Invalid session (restart your game and the launcher)
Section titled “Invalid session (restart your game and the launcher)”Why it happens: This is a problem on the player’s side, not the server’s. The player’s login token (session) is stale or was not accepted by Mojang’s login service, for example after the game was open a long time. It can also appear when Mojang’s login service is having trouble.
How to fix it:
- Have the player close the game and the launcher completely.
- Reopen the launcher, log out and log back in to their account.
- Join again. If it keeps happening, try a different launcher or update the current one.
Outdated client
Section titled “Outdated client”Incompatible client! Please use 1.21.xWhy it happens: The player’s game version is older than the server’s version. The wording depends on the version (older versions may say “Outdated client”).
How to fix it:
- Tell the player which version the server runs. It is shown in the Console when the server starts.
- In the launcher, create or pick an installation with exactly that version.
- If you want to keep older players, a compatibility plugin may help. See the ViaVersion section below.
Outdated server
Section titled “Outdated server”Incompatible client! Please use 1.20.xWhy it happens: The player’s game is newer than the server. The wording depends on the version (older versions may say “Outdated server”, newer ones use “Incompatible client”).
How to fix it:
- Ask the player to use the same version as the server, or
- Update the server. See Change version. Back up first from Backups, because worlds can be changed by newer versions and cannot be safely rolled back.
Incompatible client / ViaVersion protocol issues
Section titled “Incompatible client / ViaVersion protocol issues”Why it happens: ViaVersion, ViaBackwards and ViaRewind are plugins that let players on different versions join. They can fail when they are older than the server or the client, or when other plugins get in the way.
How to fix it:
- Open Plugins and check that the Via plugins are the latest versions.
- Update them whenever you update the server or when a new Minecraft version comes out.
- Check the Console when a player joins. A Via error names the protocol it could not handle.
- See Plugin problems.
You are not white-listed on this server
Section titled “You are not white-listed on this server”Why it happens: The whitelist is on and the player is not on it.
How to fix it:
- Open the Console and type
whitelist add PlayerName. - Or turn the whitelist off: type
whitelist off, or setwhite-listto false in Properties and restart. Some newer versions turn the whitelist on by default, so check this setting if players are refused on a fresh server. - If the name is right and it still fails, see the online-mode section below. The whitelist also stores accounts by unique ID, so a name change or an offline-mode switch can break matches.
You are banned from this server
Section titled “You are banned from this server”Why it happens: The player’s name is in the ban list. The message may include a reason.
How to fix it:
- In the Console, type
pardon PlayerName. - Check the ban list files
banned-players.jsonin Files if you are not sure who is banned.
You are banned from this server (IP ban) / Your IP address is banned
Section titled “You are banned from this server (IP ban) / Your IP address is banned”Why it happens: An IP ban blocks an address, not a name. It can hit other players on the same home or shared network.
How to fix it:
- In the Console, type
pardon-ip 1.2.3.4with the banned address. - You can see banned addresses in
banned-ips.jsonin Files. - A name ban and an IP ban are separate. Remove both if the player is unbanned.
The server is full / Server full
Section titled “The server is full / Server full”Why it happens: The server has reached its max-players value.
How to fix it:
- Open Properties and raise
max-players, then restart. - Keep in mind that more players use more memory. See Lag and performance.
- Operators can join a full server only if they have the “bypass player limit” option set in
ops.json.
Disconnected: Flying is not enabled on this server
Section titled “Disconnected: Flying is not enabled on this server”Why it happens: The server saw the player floating or moving in a way it does not allow, and kicked them. This is common with lag, elytra, fast elevators, or modded movement.
How to fix it:
- If flying is allowed on your server, set
allow-flight=truein Properties and restart. - Check lag. A laggy server makes normal movement look like flying. See Lag and performance.
- If you use an anti-cheat plugin, check its settings for false positives.
Kicked for spamming / Kicked for flying
Section titled “Kicked for spamming / Kicked for flying”Why it happens: The player sent too many chat messages or commands in a short time, or the server flagged movement as fly hacks.
How to fix it:
- Ask the player to slow down their typing or command use.
- If it is a plugin doing this, check that plugin’s config in Files. Anti-spam and anti-cheat plugins are the usual source.
- If your server is lagging, real players can get kicked too. Check the Console for “Can’t keep up” messages.
Timed out / Internal Exception: java.io.IOException: Connection reset
Section titled “Timed out / Internal Exception: java.io.IOException: Connection reset”Internal Exception: java.io.IOException: An existing connection was forcibly closed by the remote hostWhy it happens: The connection dropped after it was made. Common causes are an unstable player connection, a server that froze or crashed, or a mod or plugin that sent bad data.
How to fix it:
- Check the Console to see if the server crashed or froze around the same time.
- Ask the player to test on a different network or with the VPN off.
- Restart the server and try again.
- If it only happens with one mod or plugin installed, remove it and test.
Timed out (read timed out)
Section titled “Timed out (read timed out)”Why it happens: The server stopped sending data for too long. The server is often overloaded, frozen while saving, or stuck loading chunks.
How to fix it:
- Look in the Console for “Can’t keep up! Is the server overloaded?”.
- Lower
view-distanceandsimulation-distancein Properties. - See Lag and performance.
Bad packet ID / Internal Exception: io.netty.handler.codec.DecoderException
Section titled “Bad packet ID / Internal Exception: io.netty.handler.codec.DecoderException”Why it happens: The client and server disagree on what was sent. Usually a version mismatch, a mod or plugin that changes network data, or a proxy or Via plugin problem.
How to fix it:
- Make sure the player uses exactly the server’s version.
- Remove mods or plugins that change packets, and add them back one at a time.
- Update any Via plugins. See Plugin problems.
Mod rejected / Forge or Fabric handshake failure
Section titled “Mod rejected / Forge or Fabric handshake failure”Connection closed: Mismatched mod channel listIncompatible mod set!Why it happens: On modded servers the player must have the same mods (and same versions) as the server, on the same loader (Forge, NeoForge, Fabric or Quilt).
How to fix it:
- Give the player the exact mod list and versions the server uses.
- Make sure the loader and Minecraft version match the server’s. See Server software.
- Remove client-only mods that the server does not have if the message says they are not allowed.
- See Mod problems.
Unable to connect to world
Section titled “Unable to connect to world”Why it happens: The client made a first contact but the connection broke while joining. Causes include a server that is starting or crashing, a mod mismatch, or a corrupt player data file.
How to fix it:
- Wait until the Console shows “Done”, then retry.
- Check the Console for an error printed when the player joins.
- If only one player is affected, see World problems.
Failed to download resource pack / resource pack download failures
Section titled “Failed to download resource pack / resource pack download failures”Why it happens: The server sets a resource pack link in resource-pack. If the link is wrong, the file is too large, or the SHA-1 does not match, players cannot load it.
How to fix it:
- Open Properties and check the
resource-packURL. It must be a direct download link that works in a browser. - If you use
resource-pack-sha1, make sure it matches the file, or leave it empty. - Set
require-resource-pack=falsewhile testing so players are not kicked if it fails. - Restart after changes.
Cracked or offline clients cannot join (online-mode is true)
Section titled “Cracked or offline clients cannot join (online-mode is true)”Why it happens: With online-mode=true, only accounts that own Minecraft and are logged in properly can join. This protects you from name spoofing.
How to fix it:
- Ask the player to log in to a real account in the official launcher.
- Leave
online-mode=trueunless you fully understand the risk. Switching it to false lets anyone join under any name, including staff names. Use only with a proxy or auth plugin. - If you change it, restart the server. Whitelist and permissions may need to be redone, because players get new IDs.
Kicked for idling (You have been idle for too long)
Section titled “Kicked for idling (You have been idle for too long)”Why it happens: player-idle-timeout in Properties is set to a number of minutes. Players who do nothing for that long are kicked. The default of 0 means never.
How to fix it:
- Open Properties and set
player-idle-timeoutto0(or a bigger number). - Restart the server.
Stuck on world border or spawn, cannot move
Section titled “Stuck on world border or spawn, cannot move”Why it happens: The player spawned at or outside a world border, or in a block, or the spawn was moved.
How to fix it:
- In the Console, type
worldborder getto see the size andworldborder set 10000to widen it. - Type
tp PlayerName 0 100 0to move them somewhere safe. - If the spawn area is broken, see World problems.
Works for me but not my friend
Section titled “Works for me but not my friend”Why it happens: The server is fine, so the difference is on the friend’s side or in the rules the server applies to them.
How to fix it:
- Whitelist: check
whitelist add FriendNamewas done and the spelling is exact. - Bans: check the friend is not name banned or IP banned. Type
banlistin the Console. - Address: make sure they typed the port correctly, like
hostname:port, with a colon and no spaces. - Version: the friend must use the same Minecraft version as the server.
- VPN or firewall: ask them to turn off their VPN and check that their firewall or antivirus is not blocking Minecraft.
- Network: try a phone hotspot. School, work and some public networks block game traffic.
- IPv6: some home connections have trouble with IPv6. Ask them to try a different network, or use the hostname (not a raw IP).
- Online-mode: friends with cracked or offline accounts cannot join while
online-mode=true. - If you cannot find the reason, open a ticket and tell us the friend’s exact error message.
Server is Online in the panel but nobody can join (“Done” was printed)
Section titled “Server is Online in the panel but nobody can join (“Done” was printed)”Why it happens: The server started, but players are blocked by the address, the whitelist, a version mismatch, or a plugin. A wrong server-ip value in Properties can also make it unreachable.
How to fix it:
- Open Properties and make sure
server-ipis empty. Also make sureserver-portmatches your Primary allocation on the Network page, or leave it as the panel set it. - Check the whitelist, bans and version as above.
- See Server won’t start and Startup and crash errors.
Still stuck?
Section titled “Still stuck?”Open a ticket or ask on Discord. See Contact support. Include the exact error text the player sees and, if possible, the Console lines from the moment they tried to join.