Offer Why us? How it works?
Guide

How to Install Geyser and Floodgate: Let Bedrock Players Join Your Java Server

Geyser lets phone, console and Windows Bedrock players join a Minecraft Java server, and Floodgate lets them in without buying Java Edition. This guide shows how to install both plugins, which port Bedrock players connect to, what the dot in front of Bedrock names means and how to fix "Unable to connect to world".

Updated: 10 min read
Table of contents
  1. What are Geyser and Floodgate?
  2. What do you need for Geyser?
  3. How do Bedrock players connect through Geyser?
  4. How to install Geyser and Floodgate on a Spot.gg server
  5. How Bedrock players join
  6. What does Floodgate change?
  7. Can players use one account on both editions?
  8. What doesn't work for Bedrock players?
  9. Common Geyser and Floodgate problems
  10. FAQ
  11. What is Floodgate in Minecraft?
  12. Do I need both Geyser and Floodgate?
  13. What port does Geyser use?
  14. Why do Bedrock players have a dot in front of their name?
  15. Can Bedrock players join a modded Java server?
  16. Does Geyser work on Fabric?
  17. Is Geyser free?

What are Geyser and Floodgate?

Geyser is a plugin that translates between Minecraft Bedrock and Java Edition, so Bedrock players can join a Java server; Floodgate is its companion plugin that lets them join without a Java Edition account. Together they are the standard way to run a Java server with crossplay for phones, consoles and Windows Bedrock. Both are free and made by the GeyserMC team.

Plugin What it does Do you need it?
Geyser Opens a Bedrock "door" on your Java server and translates the game between the two editions Yes – without it Bedrock players can't connect
Floodgate Lets Bedrock players join with only their Microsoft account, no Java Edition Recommended – otherwise each Bedrock player needs to own Java Edition too

This guide is about the server side: setting up a Java server so Bedrock players can join. If you're still deciding between a Bedrock server and a Java server with Geyser, read Is Minecraft cross-platform? first – if your whole group plays Bedrock, a plain Bedrock server is simpler.

What do you need for Geyser?

A Paper, Spigot or Purpur server (or a Velocity proxy) is the easiest base; Fabric and NeoForge work only on the newest Minecraft version and only with server-side mods.

Server software Geyser Notes
Paper, Purpur, Spigot Geyser-Spigot plugin The usual choice. According to GeyserMC, needs Minecraft 1.20.5 or newer and Java 21+
Velocity proxy Geyser-Velocity, only on the proxy Put Floodgate on the proxy; backend servers only need it for skins and the Floodgate API
Fabric, NeoForge Geyser-Fabric / Geyser-NeoForge mod Only on the newest Minecraft version and only with mods players don't need on their client
Vanilla Not possible Vanilla can't load plugins – switch to Paper

Two version rules to remember:

  • Geyser acts like the newest Java client. If your server runs an older Minecraft version, also install ViaVersion, so Geyser can still connect.
  • Bedrock updates automatically on phones and consoles, so after a big Bedrock update keep Geyser up to date, or Bedrock players get "Outdated" errors.

Modded servers where players need client mods (most Forge and NeoForge modpacks) aren't a good fit: Bedrock players can't install Java mods. Plugins are fine, because they run only on the server.

How do Bedrock players connect through Geyser?

Bedrock players add the server with your server address and the Geyser port – a separate port from the one Java players use. Java players keep joining as usual.

Modern Bedrock connects with a method called NetherNet: the player's game first finds the server over TCP and then plays over UDP, both on the Geyser port. That's why the Geyser port must be reachable over both protocols, and why it can't be the same port as the Java server. GeyserMC's default is 19132, but on hosting you normally have to use the port the host assigned to you.

How to install Geyser and Floodgate on a Spot.gg server

Install Geyser and Floodgate from "Addons", set bedrock.port in Geyser's config to one of your additional ports from "Network", and restart. The whole setup takes about five minutes.

  1. Use Paper. Running Vanilla? Go to "Information" → "Modify" → "Change engine" and switch to Paper on the same Minecraft version – your world stays.
  2. In "Addons" → "Available to install" search for Geyser and install the file marked "Compatible with your server" (on Paper it's Geyser-Spigot.jar).
  3. Search for Floodgate and install it the same way.
  4. Restart the server. Both plugins create their folders and config files.
  5. Open "Network". In the ports table, pick a port labelled "Additional" that no other plugin uses. Don't use the game port, the voice chat port or the map port.
  6. In "Files" open plugins/Geyser-Spigot/config.yml and change the bedrock section:
bedrock:
  port: 30123        # your additional port from "Network"
  transport: nethernet

Leave webrtc-port at 0 – Geyser then uses the same port. Save the file.

  1. Restart the server and look at the "Console". When Geyser is ready, you'll see a line like Built-in signaling started on http://0.0.0.0:30123 with your port. If that line is missing, Geyser didn't start its Bedrock listener (see the problems below).

Why not the default 19132? On Spot.gg every server gets its own set of ports, and only the ports assigned to your server are open to the internet. The additional ports pass both TCP and UDP, which is exactly what Geyser needs. If you'd rather not edit files, you can also ask the AI assistant in the server panel to set Geyser up for you.

Running a Velocity proxy? Install Geyser and Floodgate on the proxy itself (Geyser has a Velocity version in "Addons") and use one of the proxy's additional ports. The config file is then plugins/Geyser-Velocity/config.yml.

How Bedrock players join

  1. In Minecraft Bedrock, click Play → Servers → Add Server.
  2. Server Address: your server address from "Network" (the custom address or the basic address) – without a port.
  3. Port: the additional port you set as bedrock.port.
  4. Save and join.

The first time, Bedrock may show a "Trust on First Use?" prompt. That's normal: Geyser's built-in signaling uses plain HTTP unless you set up HTTPS for it. Players accept it once.

Console players (Xbox, PlayStation, Switch) can't add servers by address in the normal menu. Ways around that are in How to join a Minecraft server on Xbox, PS5 and Switch.

What does Floodgate change?

With Floodgate, Bedrock players join with their Microsoft account only, and their names get a prefix – by default a dot, e.g. .Steve. Without Floodgate, Geyser asks every Bedrock player to sign in with a Microsoft account that owns Java Edition.

What you should know as an admin:

  • The prefix keeps names apart. A Bedrock player called Steve and a Java player called Steve would clash, so Floodgate adds . in front of Bedrock names. You can change it with username-prefix in plugins/floodgate/config.yml. GeyserMC recommends a prefix that isn't a letter or digit.
  • Spaces become underscores. Bedrock gamertags can have spaces; Java names can't. replace-spaces: true turns Cool Gamer into .Cool_Gamer.
  • Use the full name in commands. Making a Bedrock player an operator: op .Steve. In LuckPerms: lp user .Steve parent add vip (see How to set up LuckPerms).
  • Whitelist with fwhitelist. fwhitelist add Steve adds a Bedrock player to the whitelist – here you type the name without the prefix.
  • Geyser switches to Floodgate by itself. When Floodgate is installed on the same server, Geyser uses Floodgate login automatically. The setting is auth-type in the java section of Geyser's config, if you ever need to check it.
  • "Who can join" can stay on "Original accounts only". Floodgate handles Bedrock players itself, so you don't have to let cracked Java accounts in just for crossplay. What that setting does is explained in Minecraft non-premium server.
  • Keep key.pem private. Floodgate creates a key.pem file; it's what lets Bedrock players skip Java login. Never share it.

Bedrock skins are converted and shown to Java players as well, although it can take a while after a player joins for the first time.

Can players use one account on both editions?

Yes – with Global Linking a player can link their Java and Bedrock accounts and keep the same inventory and progress on both. It's on by default in Floodgate (enable-global-linking).

  1. The player joins link.geysermc.org with both Java and Bedrock.
  2. They type /linkaccount on one account and get a code.
  3. They type /linkaccount <code> on the other account.

After linking, the player uses the Java account's data on your server from both editions. Anything stored on the Bedrock-only account (items, ender chest) isn't visible while the accounts are linked, so move it first.

What doesn't work for Bedrock players?

Most of the game works, but some Java features can't be translated to Bedrock. GeyserMC lists them in its documentation; the ones players notice most:

  • clickable links in chat;
  • the glowing effect;
  • telling left and right clicks apart in inventories;
  • banners with more than 6 layers;
  • custom enchantments and some custom recipes from data packs;
  • tab-completion for commands that don't use Minecraft's own command system.

Server-side plugins (claims, economy, minigames, EssentialsX) work for Bedrock players too, because they run on the server.

Common Geyser and Floodgate problems

"Unable to connect to world" almost always means the Bedrock player uses the wrong port, or Geyser is still listening on a port that isn't open.

Problem Cause Fix
"Unable to connect to world" Wrong port in the Bedrock client, or Geyser on 19132 Set bedrock.port to your additional port, restart, use that port in the client
No "Built-in signaling started" line in the console The port is used by another plugin ("Address already in use") Pick a different additional port
Bedrock can't connect, Java works Network or config issue Run geyser connectiontest <address> <port> in the console and follow its hint
"Outdated client" / "Outdated server" on Bedrock Geyser doesn't support the player's new Bedrock version yet Update Geyser in "Addons" → "Installed" (Replace with the newest file)
Bedrock players get kicked with "Please connect through the official Geyser" Geyser and Floodgate don't use the same key Keep both plugins on the same server (or follow GeyserMC's proxy guide for networks), update both and restart
Bedrock players asked to log in with a Java account Floodgate not installed or didn't load Install Floodgate, restart, check the console for errors
A plugin breaks on names starting with . Prefix conflict Change username-prefix in Floodgate's config to another symbol
Java players can't join Not a Geyser problem Check the server log; Geyser doesn't change how Java players connect

After an update, stop the server, replace the plugin and start it again – swapping Geyser while the server runs causes errors.

Paid Minecraft servers on Spot.gg start from $3.90 per month, and a new account can try a server free for 24 hours – enough to set up Geyser and test it with a friend on a phone.

FAQ

What is Floodgate in Minecraft?

Floodgate is a plugin for Java servers that runs alongside Geyser. It lets Bedrock players join the Java server with just their Microsoft account, without owning Java Edition.

Do I need both Geyser and Floodgate?

You need Geyser for Bedrock players to connect at all. Floodgate is optional, but without it every Bedrock player must also own Java Edition and sign in with it.

What port does Geyser use?

GeyserMC's default is 19132, over TCP and UDP. On a hosted server use the port your host gives you – on Spot.gg one of the additional ports in "Network", set as bedrock.port in Geyser's config.

Why do Bedrock players have a dot in front of their name?

That's Floodgate's username prefix. It stops Bedrock and Java players with the same name from clashing. You can change it in Floodgate's config.

Can Bedrock players join a modded Java server?

Only if the mods are server-side. Bedrock players can't install Java mods, so modpacks that need client mods don't work with Geyser.

Does Geyser work on Fabric?

Yes, there is Geyser-Fabric, but only for the newest Minecraft version and only with server-side mods. On Spot.gg upload its .jar to the mods folder in "Files" (with Fabric API).

Is Geyser free?

Yes. Geyser and Floodgate are free, open-source projects by GeyserMC.

Other guides