What is ViaVersion?
ViaVersion is a server plugin that lets players with newer Minecraft Java versions join a server running an older version. It translates the network traffic between the player's game version and the server's version on the fly, so the server doesn't have to be updated for every player.
Normally a Minecraft Java server only accepts clients with exactly the same protocol version. A 1.21 player trying to join a 1.20 server is turned away with a message like "Outdated server!" and the opposite case shows "Outdated client!" (the exact wording depends on the game version). ViaVersion removes that wall – for one direction. For the other direction it needs its add-ons.
Three things to remember from the start:
- It is installed only on the server. Players don't install anything; they launch their normal game and connect to the same address.
- It is a Java Edition plugin. It does nothing for Bedrock players – that's what Geyser is for.
- It translates, it doesn't add content. A 1.21 player on a 1.20 server can't place blocks that don't exist on that server, because the server doesn't know them.
ViaVersion vs ViaBackwards vs ViaRewind: which do you need?
ViaVersion lets newer clients in, ViaBackwards lets older clients in, and ViaRewind extends that to the very old 1.8 and 1.7 clients. The add-ons don't work on their own – each one builds on the previous one.
| Plugin | What it does | Requires |
|---|---|---|
| ViaVersion | Newer clients can join an older server | – |
| ViaBackwards | Older clients can join a newer server | ViaVersion |
| ViaRewind | 1.8.x and 1.7.x clients can join a newer server | ViaVersion and ViaBackwards |
| ViaRewindLegacySupport | Optional extra fixes for players joining through ViaRewind | ViaRewind |
So the answer depends on who you want to let in:
- Only players on newer versions (for example your server is a version behind because a plugin isn't updated yet): ViaVersion alone.
- Players on older versions too: ViaVersion + ViaBackwards.
- 1.8 PvP players as well: ViaVersion + ViaBackwards + ViaRewind.
Which Minecraft version should the server run?
Run the server on the newest version you can, and use ViaBackwards to let older clients in – not the other way round. A server on the latest version knows all current blocks, items and mobs; for an older client ViaBackwards shows them as the closest thing that exists in its version. A server on an old version with ViaVersion gives newer players a game without the content their version has, which is usually the bigger loss.
Practical rules:
- Your plugins decide the upper limit. If an important plugin doesn't support the newest Minecraft version yet, stay on the newest version it supports and let newer clients in through ViaVersion.
- Update ViaVersion when Minecraft updates. Support for a new game version arrives in a new ViaVersion release. Until you update, players on the new version can't join.
- The older the client, the more differences. A player a few versions behind will barely notice; a 1.8 player on a 1.21 server sees a lot of replaced blocks and items and may run into odd behaviour. That's the price of ViaRewind.
What server software does ViaVersion work on?
ViaVersion runs on plugin servers such as Paper and Purpur and on Velocity proxies; for a Fabric server there is a separate mod, ViaFabric. It doesn't work on a plain Vanilla server, because Vanilla can't load plugins.
| Server software | ViaVersion option |
|---|---|
| Paper, Purpur (Spigot-based) | ViaVersion plugin in plugins/ |
| Velocity proxy | ViaVersion plugin on the proxy |
| Fabric | ViaFabric mod in mods/ |
| Vanilla | None – switch to Paper first |
| Forge, NeoForge modpacks | No practical option – players need the same version and mods as the server anyway |
If you're not sure which software you have or should use, see Minecraft server software.
How to install ViaVersion on a Minecraft server
Put the ViaVersion .jar into the server's plugins folder, add ViaBackwards (and ViaRewind) if you need them, then restart the server. The steps are the same on any Paper-based server:
- Stop the server or plan a restart – plugins are loaded at startup.
- Download ViaVersion in a release version that supports your server's Minecraft version. Builds marked
SNAPSHOTare development builds; use them only when the stable release doesn't support the newest game version yet. - Copy the
.jarintoplugins/. - Add ViaBackwards if older clients should be able to join, and ViaRewind for 1.8 and 1.7 clients. Keep all of them on matching, current versions – a new ViaVersion with a very old ViaBackwards is a common cause of errors.
- Start the server and check the console for ViaVersion's startup messages and no errors.
- Test from another version. In the Minecraft Launcher create an installation with a different game version, join and confirm it works.
Keep only one ViaVersion jar in plugins/ – when you update, delete the old file instead of leaving two versions side by side.
How to install ViaVersion on a Spot.gg server
On Spot.gg you install ViaVersion from the "Addons" tab in the server panel – no manual upload needed. ViaVersion, ViaBackwards, ViaRewind and ViaRewindLegacySupport are in our plugin catalog with builds for Paper and Velocity.
1. Make sure the server runs Paper or Purpur
- If the server runs Vanilla, the "Addons" tab shows "This engine does not support mods or plugins".
- To switch without losing the world, go to "Information" → "Modify" → "Change engine" ("For example from Vanilla to Paper, in the same Minecraft version"). The world, server settings, operators, whitelist and bans are preserved; the new engine is installed over the existing files.
- On Folia, our catalog has no Folia build of these plugins, so the version list says "This addon has no version for your server engine". Use Paper or Purpur for ViaVersion.
2. Put the server on the right Minecraft version
- "Information" → "Modify" → "Update" changes to a newer or older version of the current engine; the world and files are preserved.
- Going to an older version is risky and can corrupt the map – the panel warns you about it. Make a backup first, or better: stay on the newer version and let older clients in with ViaBackwards.
3. Install ViaVersion
- Open "Addons" → "Available to install" and type
ViaVersionin the search. - Open ViaVersion. At the top you see your server's version ("Your server: MC …") and below it the list of plugin versions. The ones that fit your server are marked "Compatible with your server".
- Click "Install" next to the version you want and confirm with "Install".
- If the server is running, the panel asks "Restart required" – click "Restart" so the plugin loads.
4. Add ViaBackwards and ViaRewind
Repeat the same steps for ViaBackwards (older clients) and, if you need 1.8 or 1.7 players, ViaRewind. ViaRewindLegacySupport is optional. Install ViaVersion first, because the add-ons don't work without it.
5. Check and manage it
- "Addons" → "Installed" lists the plugins on the server with their version. From there you can "Disable" a plugin (the file stays on disk) or "Delete" it.
- To update, open the plugin again and install a newer version – the panel offers to "Replace" the installed one.
- ViaVersion's settings are in
plugins/ViaVersion/config.yml, which you can edit in "Files".
Players connect with the same server address as before – nothing changes on their side. Where to find the address is explained in how to join a Minecraft server.
Paid servers on Spot.gg start from $3.90 per month.
How to block or limit versions with ViaVersion
ViaVersion's config.yml has a block-versions option that lists client versions you don't want to allow. That's useful when, for example, you add ViaBackwards for recent versions but don't want very old clients that break your minigame.
- Edit
plugins/ViaVersion/config.ymland add the versions toblock-versions(the file's comments show the accepted format, including ranges). - The same file sets the message players see when their version is blocked.
- Restart the server after changing the config.
To see which versions your players actually use, run /viaversion list in the console or in game as an operator. It groups online players by their game version – handy before you decide to drop ViaRewind.
Common ViaVersion problems
Most problems come from mismatched plugin versions, the wrong server software or a missing add-on. Go through this list:
- Older players still get "Outdated client". ViaBackwards isn't installed or failed to load. ViaVersion alone only lets newer clients in.
- 1.8 players can't join although ViaBackwards is installed. 1.8 and 1.7 need ViaRewind on top.
- Errors in the console after a Minecraft update. ViaVersion and its add-ons are older than the server version. Update all of them to current versions together.
- The plugin doesn't load at all. Check that the server runs Paper or Purpur, not Vanilla, and that the jar is directly in
plugins/. - Kicks or glitches with specific actions. Translation between versions is never perfect, especially across many versions. Check whether the problem also happens with the server's own version; if not, narrow down the version range with
block-versions. - Other plugins misbehave for old clients. Some plugins rely on features of newer versions (for example certain items, sounds or menus). That's a limit of the plugin, not of ViaVersion.
Can a player join any server from any version?
Only if the server has ViaVersion (and its add-ons) installed – as a player you can't force it from your side with the normal game. If a server doesn't support your version, launch the version shown in the server list: in the Minecraft Launcher go to "Installations" → "New installation" and pick that version.
On a modded client there is ViaFabricPlus, a Fabric mod that lets your game connect to servers on other versions. It is a client-side tool and some servers don't allow modified clients, so check the server's rules first.
FAQ
Do players need to install ViaVersion?
No. ViaVersion, ViaBackwards and ViaRewind are installed only on the server (or the proxy). Players join with their normal Minecraft Java Edition on whatever version the plugins support.
Does ViaBackwards work without ViaVersion?
No. ViaBackwards is an add-on and needs ViaVersion installed on the same server. ViaRewind in turn needs both ViaVersion and ViaBackwards.
Should I update my server or use ViaVersion?
Ideally both: keep the server on the newest version your plugins support and use ViaBackwards for players on older versions. Use ViaVersion alone when you have to stay on an older version for a while.
Does ViaVersion work on Vanilla or Forge servers?
No. Vanilla can't load plugins, and modded Forge or NeoForge servers need players with the same version and mods anyway. For a plugin server use Paper or Purpur; for Fabric there is the ViaFabric mod.
Does ViaVersion let Bedrock players join?
No, it only handles Java Edition versions. For Bedrock players on a Java server you need Geyser – see Minecraft crossplay.
Why can't players on the newest Minecraft version join right after an update?
Your ViaVersion doesn't know the new version yet. Update ViaVersion (and ViaBackwards, if you use it) once a version supporting the new release is available.