How to fix "Outdated client" and "Outdated server" errors
You try to join and the screen says "Outdated client! Please use 1.21" or "Outdated server! I'm still on 1.20.4". It is not a bug. The two sides are speaking different versions of the Minecraft protocol, and the one that is not matching has to change. Which side to change depends on who needs to be happy.
What the message says
- "Outdated client" means your game is older than the server. The message tells you which version the server runs.
- "Outdated server" means your game is newer than the server.
The server list shows the server's version in red when it does not match yours. Click the server entry and look at the version number to confirm.
Quick fix for one player
The simplest answer is to match the version:
- In the Minecraft launcher, create or edit an installation and select the version named in the message.
- Launch it and join again.
That works for any single player, on either message. For snapshot versions, also check that the server is not running a snapshot, because a snapshot server only accepts the same snapshot.
Fixing it for everyone
If your whole community needs to be on one version, decide which way to move:
Move the server to the version players have. Change it in your panel, as described in Change your Minecraft version or server type. Take a backup first. Worlds generally upgrade forward smoothly, but moving them backwards to an older version can corrupt them, so avoid downgrading a world that has been played.
Ask players to update. If the server is newer, players use the launcher's latest release. This is the best long-term choice.
Which one you pick depends on your plugins. A new Minecraft version often waits for plugins to catch up, so check that everything you need supports it before you move up.
Letting several versions join at once
If you want players on different versions to share one server, use a compatibility plugin. The usual set is:
- ViaVersion, which lets players with newer clients join an older server.
- ViaBackwards, which adds support for older clients joining a newer server.
- ViaRewind, which stretches that support further back.
Install them as plugins on a Paper server, as described in How to install plugins on your Minecraft server. They work well for joining and playing, but you should know the limits:
- New blocks and items that an older client does not have are shown as stand-ins.
- Combat and some mechanics differ between versions, so very old clients may behave oddly.
- They can lag behind brand new releases. When Minecraft updates, there can be a gap before the plugin supports it.
- Every layer adds a small chance of strange bugs, so test before you announce support for old versions.
On a proxy network, install them on the proxy so every backend benefits. See How to connect several Minecraft servers with a Velocity proxy.
When the version looks right but it still fails
- Wrong edition. A Bedrock player cannot join a Java server, and the other way round. See Let Bedrock players join your Java server with Geyser.
- A mod loader mismatch. On a modded server, players need the same mods and loader version, and the message may differ. See How to run a Forge or NeoForge modpack.
- A cached server list. Restart the game and refresh the list.
- Different snapshot or pre-release numbers. The version has to match exactly.
Telling players what to run
Put your server's version in your MOTD so nobody has to guess. How to change your server's MOTD and icon shows how. And post it on your Discord too, because many players arrive from links without checking.
Still stuck? Open a ticket on Discord - run /ticket in any channel, pick a department, and include your Server ID or Invoice ID so we can jump straight in.