Server Setup
How to Set Up Crossplay with Geyser
Bedrock players on phones, consoles, and Windows 10 can join your Java server once Geyser translates the protocol and Floodgate handles their login. Two jars, one UDP port, and a quick connection test, here's the whole path from install to a Bedrock player spawning in.
console, paper-1.20.4.jarUDP 19132
[Server] Starting minecraft server version 1.20.4
[Server] Done (4.812s)! For help, type "help"
[floodgate] Loading Floodgate version 2.2.3-SNAPSHOT
[floodgate] Took 0.21s to load all configuration
[Geyser-Spigot] ******************************************
[Geyser-Spigot] Loading Geyser version 2.4.2 (git-master)
[Geyser-Spigot] Started Geyser on 0.0.0.0:19132
[Geyser-Spigot] Done (1.93s)! Run /geyser to manage.
Bedrock_Steve joined the game
[Geyser-Spigot] Bedrock_Steve (Xbox) logged in from 19132
> /geyser connectiontest play.example.com 19132
Your server is likely reachable from Bedrock!
How crossplay actually works
Geyser is a protocol translator: it speaks Bedrock to the player and Java to your server, converting packets in both directions in real time. Floodgate sits alongside it so Bedrock players authenticate with their own platform account instead of needing a paid Java account. The single requirement most people miss is the transport, Bedrock connects over UDP on port 19132, so opening only TCP leaves the server invisible to Bedrock clients even when the console shows Geyser started cleanly. Run /geyser connectiontest from the server console to confirm the port is reachable before blaming the client.
Quick answers
+Do Bedrock players need a Java account?
No. Floodgate handles authentication so Bedrock players join with their existing Xbox/Microsoft account. Without Floodgate they'd need to link to a Java account via /geyser link.
+What port does Geyser use?
UDP 19132 by default, the same default port Bedrock servers use. It must be forwarded as UDP, forwarding TCP does nothing for Bedrock.
+Can I run Geyser on a Velocity or BungeeCord proxy?
Yes. Use the Geyser-Velocity or Geyser-BungeeCord build on the proxy instead of per-server Spigot jars, and put Floodgate on the proxy plus each backend server.
+Why does the console say 'Address already in use'?
Another service is on UDP 19132. Either stop it or change bedrock: port in Geyser's config.yml, then forward the new port.
+Do Bedrock and Java players see each other?
Yes, they share the same world and chat. Skins, some UI, and a few items render differently, but they play together normally.
+Is crossplay against Mojang's rules?
Geyser is a community project, not official. It's widely used and not a hack, but it isn't endorsed by Mojang. Keep your server on a supported Java version for compatibility.