TerraPrinter
Launched in March 2025
Make this place into a gift
Map ornamentHeart, star or bauble with names on the back Layered contoursStacked slices to laser cut or print Race medalYour GPX route on the real terrain Mountain jewelleryRings and pendants with a real skyline Your home in 3DA house model with a name plate Coasters and tilesOne map split into matching pieces Star map and placeThe night sky here on a date you choose Backlit shadow boxSkyline layers lit from behind Bookends, vases and lampsUseful things shaped by this place Watershed modelRivers and drainage basins in colour Mountain ball runA steel ball rolls down the real hairpins Cookie cuttersBake a skyline, your state or your city Chocolate and soap moldsCast a real mountain in chocolate or soap All gift ideasPrint the coast as it was in the last ice age, or as it would be if the ice melted. Low land the sea can reach becomes flat sea in the Water colour, printed as its own part.
Below today's level the new land is today's sea floor, so Sea-floor relief turns on (GEBCO depth data, about 460 m detail).
On a globe, the sea and land colours follow the new coastline, and land below the new level prints flat as sea. Pick Sea and land colours to see it best.
Normally only land the sea can reach floods, so dry basins like Death Valley stay dry. The map tint floods every low spot and is only a guide. Dikes, sea walls, sediment and land rising or sinking aren't modelled.
Print the whole world as a ball with real relief, in two halves that fit together. No area to select: just press Generate.
True scale is far too flat to see: even Everest would be under a tenth of a millimetre.
The inside never overhangs more than 45°, so the halves print without supports.
Finer detail shows more mountain ridges and coastline, but makes bigger files that take longer to slice.
Turn on Sea-floor relief at the top of this panel to carve the ocean floor too.
More than one colour makes a multi-colour 3MF with one part per colour.
A thin print whose thickness follows a picture, so the picture appears when light shines through it. Print it in white.
Draw an area on the map, then press Generate.
Print a huge area as a grid of tiles, one tile per print. Every tile uses the same scale and the same base height, so the tiles fit together edge to edge, even if you make them on different days.
Bookmark the project link: it keeps the area, the scale, the base height and which tiles you have downloaded.
Ignores elevation and prints a flat base plate carrying just the OSM features (buildings, roads, water…). Great for a clean city map.
A small single piece with a 3 mm base and low relief. Small buildings, minor roads and paths are left out so it prints cleanly. Puzzle and Minecraft styles don't apply.
The tray holds the finished puzzle and shows each piece's number where it goes. It downloads as its own file in the zip and its own object in 3MF.
Puzzle lesson kits for classroomsHollow base and magnet pockets are not available for the Minecraft style.
Leaves an open-bottom shell under the terrain. The inside roof follows the terrain and slopes at 45° or steeper, so it prints without supports.
Round pockets in the bottom face for disc magnets, placed near the edges so tiles and puzzle pieces line up on a steel board or fridge.
Engraves terraprinter.com into the bottom of your download, where it's hidden on display. It helps others find the tool. Thank you!
Fine-tune the print readability of each OSM layer. Heights are multiplied on top of the terrain vertical exaggeration; widths only apply to line features (roads, trails, rail) and scale the OSM-tag width before the min-width floor kicks in.
Leaves out buildings whose footprint would print smaller than this across, such as sheds and kiosks that come out as loose specks. 0 keeps every building. Applies on the next Generate.
Prints every tree mapped in OpenStreetMap where it stands (cones for conifers, round crowns for broadleaf trees, sized from their real height where it's known), trees along mapped tree rows, and trees scattered through woods and parks, kept off buildings, roads and water. Applies on the next Generate / export.
Trees are at least 1.2 mm across and 1.6 mm tall so they print with a 0.4 mm nozzle. When a forest is too dense to print tree by tree at this size, Automatic prints it as a bumpy forest canopy instead.
Trees are their own part in a multi-colour 3MF. With Surface colours on, they automatically use the forest colour, so they don't need another filament.
Adds floor lines to tall buildings and a raised edge around flat roofs, only where they are big enough to print. Turn off for plain blocks. Applies on the next Generate.
Famous landmarks such as the Eiffel Tower, CN Tower or Taj Mahal print as detailed 3D models instead of plain blocks when one fits inside your selection. Applies on the next Generate.
Browse and download the landmarksAdds a raised picture-frame rim around the model — a clean base with room for a place-name plaque.
On multi-tile grids the border goes round the outside edge only, so the tiles make one frame.
Prints on its own, beside the model. It has a ledge inside, so the finished model drops in and sits on it.
Keyhole slots in the back for screw heads, near the top edge. They go in the separate frame if you use one, or in the model's base. A base that's too thin is made thicker.
Mark the places that matter, like where you met, your first home or where you said yes. Each pin prints as a raised marker in its own colour, with a numbered legend on the frame or base.
Click the map where the pin goes. Esc cancels.
Drag a pin on the map to move it. Changes show in the 3D preview and downloads without generating again.
Import one or more hikes/rides (.gpx) and emboss each as its own raised ridge on the terrain — every route gets its own colour and prints on its own filament. Make sure your selection covers the routes.
Searches OpenStreetMap in the map view. Leave the name blank to list every route here.
The default for every route. Type a width next to a route to change just that one.
Raised ski runs from OpenStreetMap, coloured by difficulty, plus ski lifts as dashed lines. Each colour prints on its own filament.
Fairways, greens, tees, bunkers, rough and water hazards from OpenStreetMap, each printed on its own filament as part of the terrain surface.
Types with the same colour print as one part, so tees and greens share a filament unless you change one.
Raised topographic lines at fixed elevation steps — adds a classic relief-map read, especially for single-colour prints.
Splits the terrain surface into printable colour regions, each printing as a thin coat welded onto the base terrain on its own filament — made for AMS / MMU / toolchanger printers. Applies on the next Generate / export.
Colours by natural land-cover (forest, grass, rock, sand, glacier) from OpenStreetMap. Untick a type to leave it as bare terrain; water keeps the Water layer colour.
Ground above this elevation prints as snow (auto follows latitude). Untick Snow above to turn it off.
Unmapped ground steeper than this prints as rock.
Colours the terrain by height. Band 1 prints in the terrain colour; each band above it is its own filament. Lakes and rivers keep the Water layer colour.
Used when Sea-floor relief is on: the sea floor gets its own blue depth bands.
The base terrain uses one slot; if there are more surface colours than the rest, the least-used merge into their neighbours.
Reduces Sentinel-2 satellite imagery to a few filament colours and splits the surface into those regions. After Generate, recolour any swatch below to match the filaments you actually have loaded.
The extracted palette appears here after you Generate.
Imagery: EOxCloudless 2016 by EOX IT Services GmbH (contains modified Copernicus Sentinel data 2016), CC BY 4.0.
Colour specks smaller than this (printed size) join the area around them — fewer filament swaps, cleaner print.
Draw your own buildings with the tools below — they extrude into the model and always print, even with the OSM buildings layer off. Pick a tool and draw on the map; then hit Done and click a building (or a row below) to move, rotate, resize, or change its height.
Turn any place on Earth, Mars or the Moon into a 3D-printable model, right in your browser.
Elevation from Copernicus DEM and NASA missions. Map data © OpenStreetMap contributors.
© Capital Coders Inc. · Privacy · Terms · Support · Donate · Built with by Jordan Harding
Free to sell what you make, prints or files. Credit terraprinter.com and keep the data credits. License
Turn any place on Earth into a 3D‑printable model — real terrain, buildings, roads and water. This quick tour shows you the 5 steps from map to model.
Takes about 30 seconds.
See everything TerraPrinter can doType a city, mountain, park or address into the search bar at the top. The map flies you there. You can also just pan and zoom to explore.
Try “Grand Canyon”, “Manhattan”, or your hometown.
On the right toolbar, pick a shape — rectangle, square, circle, hexagon or free‑draw polygon — then drag on the map to outline the area you want to print.
Drag the handles to resize or rotate your selection.
Use the toolbar toggles to layer in real OpenStreetMap features on top of the terrain — or keep it as pure landscape.
Want a flat city map? Open Settings → turn on Flat model.
Hit the gear to adjust print size, vertical exaggeration, base thickness, colours, and styles like Puzzle or Minecraft. The defaults already print great.
Higher exaggeration makes hills pop on flatter areas.
Press the big Generate 3D Model button. Preview it in 3D or AR, then download a print‑ready STL, 3MF, OBJ or GLB for your slicer.
That’s it — you’re ready to print. Have fun!
See everything TerraPrinter can doNo ads, no paywalled exports, and accounts are optional. Just draw a box anywhere on Earth and download a print-ready model.
Every one of those models runs through elevation, map and OpenStreetMap servers that I pay for out of pocket. If TerraPrinter saved you time — or printed something you're proud of — a coffee genuinely keeps the lights on.
One-off, no account needed — handled by Buy Me a Coffee.
roof:direction / roof:orientation tags. Parliament Hill, churches, and detailed buildings read correctly instead of as flat boxes or pyramids.building:part massing — towers, spires, tiered roofs, arches — so the preview matches the printed model instead of showing flat-topped boxes. Part footprints that replace a base outline are dropped, and raised parts sit at their correct min_height./osm/ endpoint backed by a full-planet osm2pgsql import (~686M buildings, 260M highways, 62M water, 86M landcover, 30M structures). Fetching is now cache-friendly, rate-limit free, and dramatically faster for dense cities like Boston, NYC, and London. A single config constant lets the frontend fall back to the public Overpass API if the local mirror is ever down.localStorage and flow through to the GLB preview. Defaults match the historical built-in palette so existing models look unchanged until you pick new colors.<m:basematerials> resource with one base color per layer, and each object references it via pid/pindex. Slicers like Bambu Studio and PrusaSlicer now open exported 3MF files with every layer pre-assigned its correct color for multi-material printing — previously 3MF files opened as a single gray object.bridge=yes are preserved when they cross water (instead of getting clipped) and their deck is anchored to a flat approach-terrain Z instead of sampling the DEM river bed. Bridges now render as seamless continuations of the road network crossing rivers, with printable flat slabs that connect cleanly to the approach roads at both ends.tunnel=yes (roads, trails, or railways) is skipped entirely. Approach roads — which are separate non-tunnel OSM ways — naturally terminate at the portal location, giving a clean entrance/exit appearance without synthesizing portal geometry.