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.
Guides that go with this one
How to Enable Java + Bedrock Crossplay with Geyser
Full walkthrough for adding Bedrock crossplay to your Java Minecraft server using Geyser and Floodgate,...
Geyser Standalone vs Plugin Mode, Which to Choose
Compare Geyser standalone and plugin installation modes to decide which deployment fits your Java or...
How to Let Console Players Join Your Java Server
Guide to letting Xbox, PlayStation, and Nintendo Switch players join your Java Minecraft server using...
How to Set Up a Bedrock Dedicated Server
Run the official bedrock_server on UDP port 19132, edit server.properties, and bridge Java players with...
Minecraft Java Edition vs Windows 10 Edition
Java Edition and Windows 10 Edition compared, same game, different engines. Performance, features,...
How to Set Up a Custom Domain for Your Server
Learn how to connect a custom domain to your Minecraft server so players can join using a memorable...