What Minecraft expects from server-icon.png
The icon next to a server in the Java Edition multiplayer list comes from the server itself. When the client asks for the server status, the server sends the icon along as a Base64 encoded PNG. That only works if the file meets four rules:
| Rule | Value |
|---|---|
| Size | Exactly 64×64 pixels. Other sizes are not shown. |
| Format | A real PNG file |
| File name | server-icon.png, all lower case |
| Place | The working directory of the server, the folder with server.properties |
If one of them is off, players simply see the default icon. Nothing in the game tells them why, so the checks below are on your side.
Fix 1: The image is not exactly 64×64
This is the most common cause. A 128×128 logo, a 63×64 crop or a 512×512 export from an image editor will not be shown, even though it looks fine on your PC. Minecraft does not scale the picture for you.
- Open the file properties (Windows: right click → Properties → Details, macOS: Get Info) and check the dimensions.
- If it is not 64×64, resize it to exactly that, without keeping a border or an extra pixel row.
- Small details disappear at this size. Bold shapes, one or two letters and strong contrast read best.
The Server Icon Maker always exports 64×64, from templates with letters, items or player heads, or from your own uploaded image.
Fix 2: The file is not a real PNG
Renaming logo.jpg to server-icon.png changes the name, not the format. The file is still a JPEG inside and will not load. The same goes for WebP files saved from a browser and for animated GIFs.
Open the picture in an image editor and use "Save as" or "Export" with PNG as the format. An animated icon is not possible at all: the multiplayer list shows one static PNG.
Fix 3: The file name is wrong (server-icon.png.png)
Windows hides known file extensions by default. If you rename a file to server-icon.png there, it can end up as server-icon.png.png, and Explorer still shows "server-icon.png". The server looks for the exact name and finds nothing.
- In Windows Explorer turn on View → Show → File name extensions and rename the file.
- In a hosting panel file manager the full name is usually visible. Look for a double
.pngor capital letters likeServer-Icon.PNG. - Watch for a trailing space or a copy name like
server-icon (1).pngafter a download.
Fix 4: The icon is in the wrong folder
The icon belongs in the top folder of the server, next to server.properties and the server JAR. Not in plugins, not in world and not in a subfolder your host created for uploads.
my-server/
├── server.properties
├── server-icon.png ← here
├── paper.jar
├── plugins/
└── world/On most hosting panels this is the first folder you see when you open the file manager.
Fix 5: The server was not restarted
Replace the file, then restart the server completely. A plugin reload or /reload is not a reliable way to pick up a new icon. After the restart, watch the console: if the server cannot use the file, it usually logs a warning about the server icon right at startup, which points you back to size or format.
Fix 6: Your client still shows the old icon
The client stores the last known icon of every saved server in servers.dat, as Base64 PNG data. So your own list can show an old icon for a while, even though the server already sends the new one.
- Press Refresh in the multiplayer list.
- If the old icon stays, delete the server from the list and add it again.
- Ask a friend to check, or use Direct Connect, which does not use the saved entry.
Fix 7: You run Velocity or BungeeCord
On a network, players connect to the proxy, and the proxy answers the server list. The icon of the backend server behind it is never shown. Put server-icon.png into the proxy's own folder, next to velocity.toml or BungeeCord's config.yml, and restart the proxy.
| Proxy | Where the icon goes | Log message if it fails |
|---|---|---|
| Velocity | Working directory of the proxy | Unable to load your server-icon.png, continuing without it. |
| BungeeCord | Proxy folder | Could not load server icon, for example because it must be exactly 64x64 pixels |
Some MOTD plugins can send their own icon. If you run one on the proxy, check its config too.
Quick checklist
- 64×64 pixels, real PNG.
- Named exactly
server-icon.png. - In the folder with
server.properties, or on the proxy for networks. - Server or proxy fully restarted, console checked.
- Multiplayer list refreshed or the server added again.
Once the icon shows, make the rest of your list entry match: a readable MOTD with colours next to it and an animated banner in the same colours help players recognise you. And if you want more people to see that icon, read how to get players for a new server.