Bedrock players kicked when joining a Geyser server
Fix Bedrock players being disconnected after connecting: Java login prompts, Floodgate key errors, proxy forwarding issues and plugin kicks.
Updated · 2 min read
If Bedrock players reach your server but get kicked during or right after login, the cause is usually authentication: Floodgate is missing, Geyser is set to the wrong auth type, or (on a network) the Floodgate keys do not match. Plugins such as anti-cheats and whitelists are the next suspects.
Asked to sign in to a Java account
If Bedrock players see a prompt to log in with a Java account, or are kicked with a message about authentication, Geyser is using online auth.
- Install Floodgate next to Geyser. See add Floodgate.
- In
plugins/Geyser-Spigot/config.yml, check the auth type isfloodgate:
remote:
auth-type: floodgate
- Restart the server.
Floodgate key errors
Messages mentioning an invalid Floodgate key, or failing to decrypt Floodgate data, mean Geyser and Floodgate do not share the same key.pem.
- Single Paper server: both plugins use
plugins/floodgate/key.pem. Delete any straykey.pemcopies inside Geyser's folder, restart, and let Floodgate generate the key. - BungeeCord network: copy the proxy's
key.pemintoplugins/floodgate/on every backend server, so all are identical. See Geyser on a BungeeCord network.
Kicked by the server, not Geyser
Read the kick message and the server console at the moment of the kick. Common ones:
| Kick reason | Fix |
|---|---|
| You are not whitelisted on this server | Use fwhitelist add <gamertag>; see whitelist Bedrock players |
| Flying is not enabled / anti-cheat flags | Bedrock movement differs; see anti-cheat and Bedrock players |
| Invalid characters in username | A plugin rejects the Floodgate prefix; see Bedrock names and the prefix |
| You are banned | Check banned-players.json for the prefixed name or Floodgate UUID |
| Outdated server | Update Geyser; see Geyser version compatibility |
Kicked when online-mode is off
Floodgate is meant to be used with online-mode=true on a standalone Paper server. Leave it on: Floodgate handles Bedrock players separately, and turning online mode off lets anyone join as any Java name. On a BungeeCord network, backend servers run with online-mode=false behind the proxy, which is expected; the proxy does authentication.
Login plugins
Some auth or login plugins (made for offline-mode servers) ask every player for a password and may block Bedrock players. Most have a setting to skip Floodgate players, or you can remove them on an online-mode server where they are not needed.
Disconnected while loading terrain
If players drop during "Building terrain" or shortly after spawning:
- A very large Bedrock resource pack can time out slower connections. See resource packs for Bedrock players.
- The server may be overloaded. See Geyser performance tips.
Get more detail
Turn on debug logging temporarily in Geyser's config:
debug-mode: true
Restart, reproduce the kick, then read the console. Turn it off afterwards since it is noisy. Running geyser dump gives a shareable report.
Still stuck?
Share the kick message, the console output and your geyser dump link in the Schokr Discord.