NewSchokr 13 is here. A whole new UI, seven locations, snapshots and more. Read more →

Bedrock player skins not showing for Java players

Why Bedrock skins show as Steve or Alex to Java players on a Geyser server, how Floodgate's skin uploading works, and which skins can't be shown.

Updated · 2 min read

Java players see Bedrock skins only when Floodgate is installed, and even then the skin can take a moment to appear the first time a player joins. Some Bedrock skins, such as 3D or Marketplace skins with custom shapes, can never be shown exactly on Java.

How Bedrock skins reach Java players

Java clients load skins from Mojang's skin servers, tied to a Java account. Bedrock players do not have one. When Floodgate is installed, Geyser and Floodgate send the Bedrock skin to GeyserMC's global skin service, which converts it and gets it signed so Java clients will accept it. Floodgate then applies it to the Bedrock player.

This means:

  • Without Floodgate, Bedrock skins are not shown to Java players.
  • The first join with a new skin can be slow to update, because the skin is queued for upload. Players may look like Steve or Alex for a short while.
  • After it is processed, the skin is cached and shows quickly on later joins.

Skins that will not look right

Bedrock skin typeWhat Java players see
Classic 64x64 skinShown correctly
Slim (Alex-style) armsShown correctly
Character Creator or persona skinsAn approximation at best
3D skins with custom geometry, Marketplace extrasFlattened, or a default skin

Java's skin format is a flat 64x64 texture on the standard player model, so anything with custom geometry cannot be represented.

Java skins on Bedrock

The other direction works out of the box: Geyser shows Java players' skins to Bedrock players without any extra setup.

Fixes to try

  1. Make sure Floodgate is installed and loaded. Check the console on startup. See add Floodgate.
  2. Wait and rejoin. Have the Bedrock player leave and rejoin after a few minutes.
  3. Use a classic skin. If a player wants their look to show, a standard 64x64 skin is the safest choice.
  4. Update Geyser and Floodgate. Older versions may have skin bugs. See update Geyser and Floodgate.
  5. Check skin plugins. Plugins such as SkinsRestorer can override skins for everyone. If one is installed, its settings take priority, and Bedrock players may need to set a skin through it.

Linked accounts

A Bedrock player who has linked their account to a Java account uses the Java account's skin on the server. See link Java and Bedrock accounts.