Best Minecraft server map plugin
The best Minecraft server map plugin is one of 4: BlueMap if you want the world in 3D, squaremap or Pl3xMap for a light top-down map in the style of a vanilla map, and Dynmap for its flat, angled and cave views on 1.21.11 and older. All 4 are free and open source. This is where they stood on 10 October 2026:
| Plugin | What the map looks like | Runs on | Newest Minecraft version | Default port |
|---|---|---|---|---|
| BlueMap | 3D, as if you were in the game | Paper, Folia, Spigot, Fabric, Forge, NeoForge, Sponge | 26.3 | 8100 |
| Dynmap | Flat, Surface (from an angle) and Cave maps | Spigot, Paper, Fabric, Forge | 1.21.11 | 8123 |
| squaremap | Top-down, like a vanilla map | Paper, Folia, Fabric, NeoForge, Sponge | 26.3 | 8080 |
| Pl3xMap | Top-down, like a vanilla map, with night, biome and flower map renders | Paper, Purpur, Spigot, Folia, Fabric, Quilt | 26.2 | 8080 |
Each download page lists the Minecraft versions a build is made for, so pick one that includes the exact version your server runs. For an older server, the same pages list the earlier builds.
BlueMap vs Dynmap
BlueMap vs Dynmap comes down to the view and the version: BlueMap draws the world in 3D and runs on Minecraft 26.3, while Dynmap draws flat and angled maps, and its newest release, 3.8 from January 2026, stops at 1.21.11.
Dynmap does more than show the map. Visitors see the players with their faces, the time and the weather, they can chat with players in the game from the map page, and add-ons draw WorldGuard, Towny and Factions regions on it. Its tiles are saved as a tree of image files by default, or in SQLite, MySQL, MariaDB, PostgreSQL or Amazon S3. After a change in the world, it waits 30 seconds before it redraws a tile, so a busy area is not redrawn over and over.
For performance, BlueMap renders asynchronously from the server thread, so it never blocks the game directly. How hard it works is set by render-thread-count in core.conf: more threads render faster but take CPU time from the server, and BlueMap advises no more threads than the machine has cores. For a new server we would pick BlueMap, because it keeps up with new Minecraft versions. Dynmap remains a good choice for a server that stays on 1.21.11 or older and wants chat on the map. If you want something lighter than both, squaremap draws a flat map that its developer calls minimalistic and lightweight.
How to install BlueMap on a server
To install BlueMap on a server, you need a Paper, Spigot, Fabric, Forge, NeoForge or Sponge server, Java 25 for BlueMap 5.17 and newer, and a second port from your host. Then take these 6 steps:
- Download the jar for your platform and Minecraft version from Modrinth or from BlueMap's releases on GitHub.
- Put it in the plugins folder on Paper or Spigot, or in the mods folder on Fabric, Forge and NeoForge, and restart the server.
- Accept the download: open core.conf, in plugins/BlueMap on Paper or config/bluemap on a modded server, and set
accept-download: true. - Set the port in webserver.conf to the port your host gave you. The default is 8100.
- Reload BlueMap with
/bluemap reload, or restart the server. - Open the map at http://your-server-address:port in a browser.
/bluemapshows how far the render is.
Step 3 is easy to miss. BlueMap builds its 3D models from the textures in the Minecraft client file, which belongs to Mojang, so it only downloads that file after you accept Mojang's EULA in core.conf. Until then it renders nothing at all. Once the map runs, you rarely need a command: BlueMap notices changes in the world and updates the map by itself. /bluemap purge followed by the map's name deletes a map so it renders again from scratch, which you only need after changing its settings.
What port do BlueMap and Dynmap use?
BlueMap uses port 8100 by default and Dynmap uses port 8123, while squaremap and Pl3xMap both use port 8080. You change the number here:
- BlueMap:
portin webserver.conf - Dynmap:
webserver-portin configuration.txt - squaremap:
portunder internal-webserver in config.yml - Pl3xMap:
portin config.yml
On a hosted server you rarely choose the number yourself. Dynmap's guide says most hosts give a server one port for the game and open another one on request, often with a number they pick. Lodehost's guide to server ports asks you to contact them and say which plugin the port is for; at other hosts, ask support. Pl3xMap's config adds a reminder for panels built on Pterodactyl: the port has to be allocated to your server first. Players never type this port in Minecraft. It is only for the browser.
How to set up Dynmap on a Minecraft server
To set up Dynmap on a Minecraft server that runs 1.21.11 or older, take these 5 steps:
- Stop the server and put the Dynmap jar for your platform in the plugins folder, or in mods on Fabric and Forge.
- Start the server once, so Dynmap writes its configuration.txt, in plugins/dynmap on Spigot and Paper or in a dynmap folder on a modded server.
- Change the port: replace 8123 in
webserver-port: 8123with the port from your host. - Restart the server. Dynmap's own guide warns against /reload and /dynmap reload, which break things.
- Render the world with
/dynmap fullrender world, or/dynmap radiusrender 500for the 500 blocks around you.
When it works, the console shows [dynmap] Web server started on address 0.0.0.0:8123, with your port in place of 8123. If that line is missing, the port is in use or blocked on the machine. If the line is there and the browser still times out, the port is not open from the internet, which is a question for your host.
How to set up squaremap or Pl3xMap
To set up squaremap or Pl3xMap, take 4 steps: put the jar in the plugins folder, or in mods on Fabric, start the server once, set the port in config.yml and stop and start the server again, because a reload is not always enough after a config change. Then open http://your-server-address:port, which is 8080 unless you changed it. On Fabric both need Fabric API, and squaremap's guide adds the Moonrise mod on Fabric and NeoForge for faster renders. Paper already includes it.
Both plugins use the command /map, with almost the same commands:
| Command | What it does | Plugin |
|---|---|---|
/map fullrender | Renders a whole world | Both |
/map radiusrender | Renders the area within a radius in blocks | Both |
/map cancelrender | Stops a full or radius render | squaremap |
/map pause | Pauses the renderer, or resumes it | Pl3xMap |
/map hide | Hides you, or a named player, from the map | Both |
/map resetmap | Deletes the map of a world, after /map confirm | Both |
squaremap names worlds by their dimension, such as minecraft:overworld or minecraft:the_nether, not by the level-name in server.properties, so /map fullrender minecraft:the_nether renders the Nether.
Web map for a Fabric, Forge or NeoForge server
A web map for a Fabric server can be any of the 4 plugins, but Forge and NeoForge have fewer choices:
- Fabric: BlueMap, squaremap and Pl3xMap, which all need Fabric API, and Dynmap up to 1.21.11.
- NeoForge: BlueMap and squaremap.
- Forge: BlueMap, Dynmap up to 1.21.11 and squaremap up to 1.20.1.
- Folia: BlueMap, squaremap and Pl3xMap.
Map mods go in the mods folder on the server only. Players do not install anything, because they look at the map in a browser. For the memory a modded server needs before you add a map, see our guide to Fabric server hosting.
Why is my BlueMap or Dynmap not loading?
A BlueMap or Dynmap that is not loading in the browser nearly always has 1 of these 5 causes:
- The port is not open. The map listens on its port, but the host has not opened that port to the internet, or the config holds a different number from the one you type.
- The address is wrong. Type the server's address with the map's port after a colon, such as http://play.example.com:8100, and start with http:// unless you have set up https in front of the map.
- BlueMap is waiting for accept-download. Until core.conf says true, BlueMap renders nothing.
- The render has not got there yet. A new map is empty until the first render reaches that area.
/bluemapand/map statuson Pl3xMap show the progress. - The version does not match. A build for another Minecraft version, or BlueMap 5.17 or newer on Java 21, fails when the server starts, and the console says why.
The console is the place to look first, because an error from the map plugin at startup points at the port or the version. For Java errors at startup, our guide to the Minecraft server Java version explains what each one means.
Is there a live map for a Bedrock server?
A live map for a Bedrock server is not something these 4 plugins can do: they run on Java servers, and BlueMap's guide says plainly that Bedrock worlds are not supported. A Bedrock Dedicated Server cannot load Java plugins or mods at all.
A crossplay server is different. There, Bedrock players join a Java server through Geyser, so the world is a Java world and any of the 4 plugins can map it. Our guide to Minecraft crossplay hosting explains how that setup works.
How to add a web map to your Minecraft server website
To add a web map to your Minecraft server website, link to the map's address, such as http://play.example.com:8100, from the menu or the home page. Astroworld Hosting's website builder has a Links section meant for this, with a live map as its own example, and Lodehost's builder has a Links section as well. Our guide to the free Minecraft server website covers both.
A clean address such as map.example.com needs a web server in front of the map, a reverse proxy. BlueMap, Dynmap and squaremap all explain how to set one up with NGINX or Apache, but that takes a machine you control, so on a hosted plan the plain link with the port is the usual way.

