Fantasy Map Generators
At the Table6 min readBy Fantasy Map Generators

How to Use a Fantasy Map in Roll20 and Foundry VTT

Export settings, upload steps for both platforms, and the grid decision most guides get wrong: an overland map is not a battle map, and treating it like one is why your continent ends up 900 miles wide.

Getting a map onto a virtual tabletop is easy. Getting it onto a virtual tabletop at a scale that isn’t nonsense takes about four more minutes, and almost nobody spends them.

The failure looks like this: you upload a beautiful continent, the VTT snaps a 5-foot grid over it, and now your party’s overland journey is measured in five-foot squares. A week’s ride reads as a stroll across the screen. The map works, technically, and it fights you every session.

Here’s the whole process, including the part that matters.

Step 1: Export at the right size and format

Decide this before you upload, because re-exporting is faster than re-aligning.

Format. PNG for anything you’ll display. It stays crisp, it handles the fine linework in a hand-drawn style, and neither Roll20 nor Foundry cares about the file size at these dimensions. Use JPG or WebP only if you’re working with a strict upload limit, and expect some mush in the coastline hatching.

Resolution. 2× is the sweet spot for a table map. On our generator that means the Large size at 2× scale gives you roughly 3200×2200, which is sharp on a 4K TV, sharp when a player zooms in on one kingdom, and still small enough to load quickly. Go to 3× or 4× only if you’re printing.

SVG is the odd one out. Neither platform uses it as a scene background, so it isn’t your upload format. It’s the one to keep if you plan to edit the map in Inkscape or Illustrator first, or print a poster later. Grab both.

One thing to do before exporting: turn off the parts you don’t want players seeing. If the map has kingdom labels that reveal politics your party hasn’t discovered, hide the labels, export a player copy, then turn them back on and export a second copy for yourself. Two files, one seed, no spoilers.

Step 2: Upload

Roll20

Drag the PNG from your desktop straight into the Roll20 window. It lands on whatever layer you currently have selected, so check the layer control at the bottom left first and make sure you’re on the Map layer. Dropping a continent onto the Token layer is a five-minute detour that everyone takes exactly once.

To set the size properly, right-click the image and go to Advanced → Set Dimensions. Switch the unit dropdown from Pixels to Units, type the width and height you want in grid units, and hit Set. This is more reliable than dragging the corner handle, which will quietly leave you at 41.7 units wide.

If the map already has its own grid or you need the image to line up with Roll20’s, the Align to Grid tool does the fitting for you: you draw a box around a known area of the map and Roll20 scales everything to match.

Foundry VTT

Two ways in, and the right one depends on what the map is.

For a scene background, open the scene configuration and set the map as the background image under the scene’s Basics tab. This is what you want for a world map, a region, or any map the party moves around on.

For anything you’ll place on top of a scene, Foundry treats images as Tiles, uploaded through the Tile Browser in the left-hand toolbar. You can make folders there, upload new files, and drag them onto the scene. Handy for dropping a regional inset over a corner of the world map.

Then set Grid Scale in the scene settings, which defines what one grid space is worth in the game world. For a 5e battle map that’s 5 feet. For a continent it is emphatically not, which brings us to the important part.

Step 3: The grid decision (the part most guides skip)

A battle map and an overland map are different objects and want different treatment.

For a world, continent or region map, you have two good options.

Turn the grid off entirely. Movement on an overland map is measured in days, not squares. You narrate travel, you don’t count it. A gridless world map looks better, reads better, and stops players from trying to calculate a diagonal.

Or set the grid to a real distance. If you want a measurable overland map, set the grid scale so one square equals something meaningful: 10 miles, 24 miles, one day’s ride. Then Foundry’s and Roll20’s built-in measurement tools give you actual travel distances when you drag the ruler, which is genuinely useful for planning a journey. Pick the number from your map’s scale bar, not the other way round.

For a battle map, the 5-foot grid is correct and you should align it carefully, because that’s the one case where a square really is five feet.

The mistake is applying battle-map thinking to a continent. If you leave a 5ft grid on a world map, the platform will happily tell you the party crossed 340 feet of ocean.

Our generator draws a scale bar on the map itself, so the conversion is already done for you. Read the bar, set the grid to match, and the ruler tells the truth.

Step 4: Fog of war on an overland map

Worth doing, and worth doing differently from a dungeon.

In a dungeon you reveal room by room. On a continent, reveal by region: the party knows their home kingdom, has heard of its neighbours, and has no idea what’s past the mountains. Block out the far side of the map and pull the fog back in large chunks as they travel or as they meet people who’ve been there.

The nicest version of this is to hand players a deliberately incomplete map at the start, then reveal the accurate one underneath as they explore. Generate the map, export a full copy for yourself, then export a second copy with some labels hidden or renamed with rumours instead of facts. Two scenes, same image, and the moment the real map appears lands properly.

Step 5: Keeping it fast

A few things that keep sessions smooth:

Don’t upload a 4× map “just in case.” A 6400×4400 PNG will make somebody’s laptop fan audible over voice chat, and nobody will see the extra detail. 2× is enough.

Give the file a real name before uploading. world-map-4471-2x.png will mean something to you in three months; download (7).png will not.

Save the seed. Both platforms let you re-upload, but if you ever need the map at a different size, with different labels, or with the border removed for a print, regenerating from the seed takes seconds and gives you an identical world. Ours also puts the seed and settings in the page URL, so pressing Copy Link and pasting it into your campaign notes is enough to rebuild the exact map later.

Which map to generate for which purpose

For a campaign the party will travel across, a single continent is usually the right scale. The D&D map generator starts you there, with named kingdoms and port cities already placed.

For a setting with multiple continents, sea voyages and far-off empires, use the world map generator and treat individual landmasses as separate scenes later.

For a seafaring or exploration campaign, the island map generator gives you a self-contained map per session, and generating six of them takes about a minute.

Before you upload any of them, it’s worth a quick pass over the river mistakes that break a fantasy map. Players zoom in further than readers do, and a river running uphill is much more obvious at 400% on a shared screen.

Try it on a real map

Generate a world with working rivers, named kingdoms and a compass rose. Free, instant, no signup.

Generate a Map

Keep reading