Cartogenesis

Procedural world-map generator

Open source, free to use

Build a world from the ground up.

Generate a world map from a seed. Shape its terrain, rivers, climate and borders, then choose a map style and export the result.

Free and open source · Your maps stay on your device

A generated world map in the Natural style: a northern continent with a mountain range along its spine, a river system draining to a ragged southern coast, lakes, offshore islands, and the coast of a second continent at the right.
A generated world in the Natural style, with mountain ranges, river systems, lakes and islands. Seed 718106 · 62% ocean · 14 tectonic plates

How a world is made

Plates and mountains

Moving tectonic plates form mountain ranges, volcanic arcs and broad plateaus. Where plates pull apart, rift valleys can fill with water.

Erosion

Erosion reshapes the terrain. Slopes collapse, rivers carve valleys, and sediment builds floodplains, fans and deltas.

Seas and ice

Continental shelves lie along the coasts. Glaciers shape cold mountains, and ice sheets leave behind basins and lakes.

Climate

Seasons, ocean currents and terrain shape temperature and rainfall. Climate zones decide where forests, grasslands and deserts form.

Rivers and lakes

Water flows downhill into rivers, lakes and seas. In dry inland basins, evaporation can shrink a lake and leave salt behind.

Realms and peoples

Geography shapes borders and settlement. Realms follow rivers, coasts and watersheds, while peoples spread into familiar terrain and across political borders.

Realistic map styles

Compare the same landscape in Atlas, Schoolroom and Natural. Atlas combines elevation and climate colours, Schoolroom shows elevation, and Natural uses colours taken from satellite imagery.

The same square of a generated world drawn three times. Atlas colours the land by height and climate in muted greens and tans with a pale blue sea. Schoolroom colours it by height alone in bright greens and oranges. Natural uses satellite colours: dark green forest, ochre plains, rust ranges and a cobalt sea. Labelled Atlas, Schoolroom and Natural.
The same region in Atlas, Schoolroom and Natural, at the same scale. Seed 718106

The data behind the map

The temperature, ocean currents, winds and rainfall calculated for the same coastline.

The same stretch of coast drawn four times. Temperature shades the land from orange in the lowlands to white on the peaks. Ocean currents draws small arrows over the sea. Winds draws larger arrows, blue eastward in the north and orange westward in the south. Rainfall shades the land from yellow where it is dry to green where it is wet. Labelled Temperature, Ocean currents, Winds and Rainfall.
Four views of the same coastline: its temperature, currents, winds and rainfall. Seed 718106

More map styles and data views are in the generator.

Features

Views
Fifteen views, including political borders, peoples, elevation, biomes, seasonal temperature and rainfall, tectonic plates, ocean currents and winds.
Styles
Twelve map styles, including Atlas, Vellum, Ink wash, Nautical, Pen and ink, Mars, Natural and a colour-blind-safe palette.
Themes
Seventeen interface themes, including light, dark, high contrast and colour-blind options.
Editing
Edit generated names and borders. Your changes are saved with the world.
Saves
Save a world and reopen the same file in the browser or the desktop app.
Export
Export map images as PNG, WebP or JPEG, or the data behind the map: a 16-bit heightmap with its metre scale, and biome and realm index maps with their legends. Up to 4096 × 4096 in the browser and on the desktop; phones are capped at 2048 × 2048.
Resolution
Choose the world's resolution. Higher settings add detail and need more memory; the browser starts at 512, the desktop app at 1024.
Acceleration
Optional graphics acceleration speeds up erosion and export rendering: WebGPU in the browser, OpenGL on the desktop.

Notes

Running it in a browser

Use a recent Chrome, Edge, Firefox or Safari. The first visit downloads the generator, about 4.6 MB, and caches it; nothing you make is uploaded anywhere.

Optional graphics acceleration uses WebGPU where the browser offers it.

Sizes, formats and speed

An export regenerates the world at the size you ask for, so the detail is real rather than enlarged. Larger worlds take longer and use more memory. On phones, browser exports are capped at 2048 × 2048 to keep memory in bounds.

PNG keeps every pixel. WebP is smaller and softens thin rivers and borders slightly.

The Atlas is a work in progress

Today the Atlas lists a world's realms and landmarks and lets you rename them and place labels. Your changes are saved with the world. A later release, planned for 5.0, adds named continents, seas, bays, straits and ranges, with labels set out the way a printed atlas sets them.

Desktop versionWindows

Generate larger worlds with a desktop app that uses every processor thread. Choose the portable zip or the installer. The installer is unsigned, so Windows shows a SmartScreen warning the first time. If you trust the download, choose “More info”, then “Run anyway”.

Get the latest release ↗

What comes next

Planned releases and what each one brings. No dates: a release lands when its work is done.

3.0.0Current
The realism audit: the plates, the seas, the air and the water measured against Earth and corrected where they were wrong.
3.1
Monsoon coasts, rain that reaches the interiors, and vegetation that follows the rain.
3.2
Erosion that reads the climate, and river channels that start where they should.
3.3
Ice sheets as bodies of ice, and waves and drift along the coasts.
3.x
A topographic map style with contour lines, and hydraulic erosion on the graphics card.
4.0
The world as a sphere: physics in metres, a globe to turn, and a choice of map projections for the whole-world map and for exports.
5.0
The full atlas: named continents, seas, bays, straits and ranges, with labels set out the way a printed map sets them.

Found something wrong? Report it with the seed and the generation resolution. Open an issue, or write to bugreport@cartogenesis.com. Help ▸ Report a bug… in the app fills the form in for you.

Have a feature in mind? Say so. Suggest a feature, or write to dev@cartogenesis.com.