In short: BlueMap is the only one of the four with real 3D: free flight over the world, builds up to 26.3 for Paper, Spigot, Folia, Fabric, Forge, NeoForge and Sponge. squaremap and Pl3xMap are lightweight top-down 2D maps in the vanilla map style, both already out for 26.3. Dynmap is the veteran with a flat map, an isometric view and a cave map, but its latest release 3.8 (January 2026) supports Spigot and Paper only up to 1.21.11. Every map needs an extra TCP port: 8100 for BlueMap, 8123 for Dynmap, 8080 for squaremap and Pl3xMap.
Web map plugins compared
| BlueMap | Dynmap | Pl3xMap | squaremap | |
|---|---|---|---|---|
| View | 3D: perspective, free flight, flat top-down view | 2D: flat map, isometric view from the south-east, cave map | 2D top-down; basic, night, biomes, inhabited and flowermap renderers | 2D top-down in the vanilla map style |
| Servers | Paper, Purpur, Folia, Spigot, Sponge; Fabric, Forge, NeoForge mods | Spigot and Paper; Fabric and Forge mods | Bukkit, Spigot, Paper, Purpur, Folia; Fabric, Quilt | Paper and Folia, Fabric, NeoForge, Sponge |
| Latest build | 5.29, 10 October 2026, up to 26.3 | 3.8, 14 January 2026, Spigot and Paper up to 1.21.11 | Build 557, 14 October 2026, for 26.3 | 1.4.3, 16 October 2026, for 26.3 |
| Storage | Files (default), MySQL, MariaDB, PostgreSQL, SQLite | Files (default), SQLite, MySQL, MariaDB, PostgreSQL, S3 | Files in the web folder | Files in the web folder |
| Built-in web server port | 8100 | 8123 | 8080 | 8080 |
| External web server (nginx, Apache) | Yes | Yes | Yes | Yes |
| Code | Open source, MIT | Open source, Apache-2.0 | Open source, MIT | Open source, MIT |
Each one in brief
BlueMap
Turns the world into 3D models and shows them in the browser: view it in perspective, fly over it, or switch to a flat view. It needs Java 25 or newer. On first start BlueMap asks you to agree to download Minecraft client resources from Mojang: until core.conf has accept-download: true, nothing renders. The first conversion of the world is CPU-heavy but runs on separate threads (render-thread-count), and afterwards BlueMap only re-renders changed chunks. On a network, maps from several servers can be combined on one page through a shared database or a shared folder; BlueMap itself doesn't go on the proxy.
Dynmap
The oldest of the four — a "Google Maps-like" map: flat map, isometric view and a cave map, markers (/dmarker), a web chat connected to the game, and password login to the map (login-required, players register with /dynmap webregister). It can pause rendering when TPS drops below 18 (update-min-tps, fullrender-min-tps). The main drawback as of October 2026: its SpigotMC and Modrinth pages list no Paper 26.x builds; the latest is 3.8 for 1.21.11.
Pl3xMap
A minimalist vanilla-style 2D map with player markers (facing, health, armor) and several built-in renderers: basic, night, biomes, chunk inhabited time and flowers. It runs on both Spigot and Paper, with a build for each game version. Right after installing, the map is empty for a while — that's normal, the first render is still going.
squaremap
A lightweight top-down 2D map built on Leaflet, with player markers and add-ons for popular plugins. On the server side it's Paper and its forks (Modrinth tags its builds for Folia too) plus Fabric, NeoForge and Sponge; Spigot isn't on its platform list. Each game version gets its own build: 1.4.x for 26.3, 1.3.13.x for 26.1.2.
Installing and the port
- 1
Get a second port
A map is a website and needs its own TCP port besides the game port. On a VPS open it in the firewall; on a game host request it in the panel or from support — some hosts don't hand out extra ports. Ports are explained in server IP and port.
- 2
Install the jar for your version
Put the plugin into
plugins/and restart the server; don't use/reload. The general routine is in how to install a plugin. - 3
Set the port
BlueMap —
portinwebserver.conf, Dynmap —webserver-portinconfiguration.txt, squaremap and Pl3xMap —settings.internal-webserver.portinconfig.yml. Restart after editing. - 4
Open the map
The address is
http://<server IP>:<port>/— HTTP, not HTTPS. The first render of a big world takes time: BlueMap shows progress with/bluemap, Dynmap in the console.
# core.conf — agree to download client resources from Mojang
accept-download: true
# webserver.conf — the port your host gave you
port: 8100What a map shows everyone: bases, caves, players
A public map shows everyone what survival players usually hide: where the bases are and where players are walking right now. Paper's anti-xray won't help here: it swaps blocks in the chunks the server sends to players, while the map plugin renders the world on the server itself (BlueMap, for instance, waits for chunks to be saved to disk). Underground areas and players are hidden by the map plugin's own settings. Stopping X-Ray in the game itself is covered in X-Ray protection.
| Plugin | Underground and ores | Players | Areas |
|---|---|---|---|
| BlueMap | remove-caves-below-y (default 55) drops caves below that height that aren't visible from the surface | hide-vanished (invisibility, on by default), hide-sneaking, hidden-game-modes, hide-below-sky-light; live-player-markers: false removes players entirely | render-mask with subtract: true cuts an area out of the map |
| Dynmap | hideores: true renders ores as stone (needs a re-render); you can leave the cave map off | /dynmap hide <player>, the hiddenplayers.txt list | /dmap worldaddlimit … limittype:hidden hides a rectangle or circle |
| Pl3xMap | Top-down 2D; no cave renderer among the built-in ones | settings.hide.invisible and settings.hide.spectators (on by default) | Not described in the wiki |
| squaremap | Top-down 2D: draws the topmost block, iterate-up is for the Nether's lower levels | hide.invisible, hide.spectators, hide.map-invisibility-equipment — players wearing a carved pumpkin (all on by default) | visibility-limits: the world border or a circle |
- Anarchy and hardcore survival — either no map or no player markers: a live dot on the map is a ready-made tip for hunters.
- Survival with claims — markers can stay, but hide invisible players, spectators and the underground. Claims protect the builds themselves, see grief protection.
- Creative and lobbies — the map is a showcase, usually nothing to hide.
Server load
- The first render is the heaviest. BlueMap warns that it uses a lot of CPU for a while after installing; afterwards only changed chunks are updated.
render-thread-countsets the thread count — leave cores for the game. - Only generated terrain is rendered. To avoid holes in the map and patchy rendering, pre-generate the world — see pre-generating the world and the world border.
- Pause under load. BlueMap has
player-render-limit(rendering pauses while that many players or more are online), Dynmap hasfullrenderplayerlimitand pauses when TPS is below 18. If the server slowed down after adding a map, check TPS and MSPT and take a spark profile.
Which map to pick
- A good-looking 3D map for your website — BlueMap.
- A Spigot server — BlueMap or Pl3xMap: squaremap doesn't list Spigot as a platform.
- A weak server or a huge world, navigation is all you need — squaremap or Pl3xMap: top-down 2D rendering.
- Version 26.x — BlueMap, Pl3xMap or squaremap: Dynmap's pages list no 26.x builds.
- Password login to the map without an external web server — Dynmap (
login-required), if the server is on 1.21.x.
The map and the anticheat
A live map makes hunting easy: spot a lone player and head across the world to them. An honest player needs time for that; a cheater uses ElytraFly, Fly or Speed, and KillAura on arrival. DGuard — the best anticheat for a modern Minecraft server — gathers evidence on every front at once: combat, movement, packets, inventory, building and the world — and covers all 47 cheat types in our comparison, while the closest rival, Intave, covers 27. To be honest, no anticheat sees X-Ray, DGuard included: it's a visual cheat, not a packet one, so anti-xray hides the ores and the map's own settings hide the underground.
FAQ
How do I make a Minecraft server map you can view in a browser?
Install a map plugin — BlueMap, Dynmap, Pl3xMap or squaremap — open a separate TCP port for it and set that port in the plugin's config. The map opens at http://<server IP>:<port>/; for BlueMap, set accept-download: true in core.conf first.
Which is better: BlueMap or Dynmap?
BlueMap renders the world in 3D and is already out for 26.3; Dynmap offers a flat map and an isometric view, and its latest release 3.8 supports Spigot and Paper up to 1.21.11. On a 26.x server the choice is BlueMap or the 2D maps Pl3xMap and squaremap.
Why won't my BlueMap load, or why is it empty?
Check accept-download: true in core.conf, that the port is open (8100 TCP by default) and that you open the address over HTTP, not HTTPS. Empty areas are ungenerated chunks or a render still in progress: /bluemap shows the progress.
How do I hide players on the server map?
In BlueMap use live-player-markers: false, or selectively hide-vanished, hide-sneaking, hidden-game-modes; in Dynmap /dynmap hide <player>; in squaremap and Pl3xMap the hide section of the players layer settings. Invisible players and spectators are hidden by default in BlueMap, squaremap and Pl3xMap.
Can I run a map on Aternos or another free host?
Only if the host gives you an extra port: the map needs its own TCP port for the website. The Dynmap wiki notes that Aternos blocks ports and Dynmap couldn't be run there.
Sources
- BlueMap: installation
- BlueMap: plugin config (hiding players)
- BlueMap: map config (caves)
- BlueMap: FAQ
- Dynmap: installation (wiki)
- Dynmap: configuration.txt (wiki)
- Dynmap on SpigotMC: updates
- Pl3xMap on GitHub
- squaremap: default config.yml
- Paper: configuring Anti-Xray
- DGuard, the best anticheat for a modern Minecraft server: checks compared with GrimAC, Vulcan, Polar, Intave and Matrix
- DGuard: installation, requirements and troubleshooting
- DGuard: supported Paper and Leaf versions