OpenStreetMap Tags: Complete Reference for Export
Tags are the foundation of OpenStreetMap data. Every object on the map (building, road, park, cafe) is described by a set of "key=value" pairs. Understanding tags is important for two tasks: getting the right data during export and correctly interpreting the result.
How the Tag System Works
Every OSM object has one or more tags in key=value format:
building=yes
name=Moscow Kremlin
tourism=attraction
historic=castle
Tags are free-form — there's no rigid schema. Any mapper can add any tag. But the community has agreed on standard tags that are supported by renderers, navigators, and exporters.
Object Types
- Node — a point. Address, tree, streetlight, ATM.
- Way — a line or closed polygon. Road, fence, building, lake.
- Relation — a group of objects. Bus route, region boundary, multipolygon.
Key Tags by Category
building — Buildings
building=yes — building (type unspecified)
building=residential — residential building
building=apartments — apartment building
building=commercial — commercial building
building=industrial — industrial building
building=retail — retail building
building=church — church
building=school — school building
building=hospital — hospital building
building=garage — garage
building=shed — shed
Additional building tags:
building:levels=5 — number of floors
building:material=brick — wall material
building:colour=#ff0000 — building color
roof:shape=flat — roof shape (flat, gabled, hipped, dome)
addr:street=Lenin St — street
addr:housenumber=42 — house number
During export: the "Buildings" layer contains all objects with building=*. Floor count is used for 3D export (STL, glTF, IFC).
highway — Roads and Paths
highway=motorway — motorway
highway=trunk — trunk road
highway=primary — primary road
highway=secondary — secondary road
highway=tertiary — tertiary road
highway=residential — residential street
highway=service — service road
highway=footway — footpath
highway=cycleway — cycleway
highway=path — path
highway=track — track
highway=pedestrian — pedestrian area
highway=steps — stairs
highway=bus_stop — bus stop
Additional road tags:
name=Main Street — name
lanes=4 — number of lanes
maxspeed=60 — speed limit (km/h)
surface=asphalt — surface type
oneway=yes — one-way
bridge=yes — bridge
tunnel=yes — tunnel
lit=yes — lit
During export: the "Roads" layer includes all highway=* objects. Line width depends on road type (motorway thicker, footway thinner).
amenity — Amenities
amenity=restaurant — restaurant
amenity=cafe — cafe
amenity=bar — bar
amenity=fast_food — fast food
amenity=school — school
amenity=kindergarten — kindergarten
amenity=university — university
amenity=hospital — hospital
amenity=clinic — clinic
amenity=pharmacy — pharmacy
amenity=bank — bank
amenity=atm — ATM
amenity=post_office — post office
amenity=fuel — gas station
amenity=parking — parking
amenity=police — police station
amenity=fire_station — fire station
amenity=library — library
amenity=theatre — theater
amenity=cinema — cinema
amenity=place_of_worship — place of worship
During export: the "POI" layer contains all objects with amenity=* and other "point" tags.
landuse — Land Use
landuse=residential — residential area
landuse=commercial — commercial zone
landuse=industrial — industrial zone
landuse=retail — retail zone
landuse=forest — managed forest
landuse=meadow — meadow
landuse=farmland — farmland
landuse=cemetery — cemetery
landuse=military — military area
During export: the "Landuse" layer is rendered as filled polygons. Color depends on type.
natural — Natural Features
natural=water — water body (lake, pond)
natural=wood — natural forest
natural=grassland — grassland
natural=wetland — wetland
natural=beach — beach
natural=peak — mountain peak
natural=coastline — coastline
leisure — Leisure and Recreation
leisure=park — park
leisure=garden — garden
leisure=playground — playground
leisure=pitch — sports field
leisure=sports_centre — sports center
leisure=swimming_pool — swimming pool
shop — Shops
shop=supermarket — supermarket
shop=convenience — convenience store
shop=clothes — clothing store
shop=electronics — electronics store
shop=bakery — bakery
tourism — Tourism
tourism=hotel — hotel
tourism=museum — museum
tourism=attraction — attraction
tourism=viewpoint — viewpoint
waterway — Waterways
waterway=river — river
waterway=stream — stream
waterway=canal — canal
How Tags Affect Export
Map Layers
During export in osm2cdr, data is grouped into layers based on tags:
| Layer | Main Tags | Description |
|---|---|---|
| Buildings | building=* | All structures |
| Roads | highway=* | Road network |
| Water | natural=water, waterway=* | Water features |
| Green | landuse=forest, leisure=park | Green areas |
| POI | amenity=, shop=, tourism=* | Points of interest |
| Landuse | landuse=* | Land use areas |
| Railways | railway=* | Railways |
| Boundaries | boundary=administrative | Boundaries |
Filtering During Export
You can include or exclude layers:
{
"bbox": [37.58, 55.74, 37.65, 55.76],
"format": "svg",
"layers": ["roads", "buildings", "water"]
}
Tags and 3D Export
For 3D formats (STL, glTF, IFC), floor tags are critical:
building:levels=5 → building height = 5 * 3m = 15m
building:height=20 → exact height = 20m (priority over levels)
roof:shape=dome → dome roof instead of flat
Tags and Navigation Formats
For Garmin IMG, OsmAnd OBF, and other navigation formats:
highway=* — road type (affects routing)
maxspeed=60 — speed for ETA calculation
oneway=yes — traffic direction
access=private — access restriction
Finding Tags
TagInfo
taginfo.openstreetmap.org — the main OSM tag reference. Shows usage frequency, geographic distribution, combinations, and trends.
OpenStreetMap Wiki
wiki.openstreetmap.org — documentation for all standard tags.
Overpass Turbo
overpass-turbo.eu — tool for querying OSM data by tags.
Tips for Working with Tags
-
Don't rely on a single tag. A cafe might be
amenity=cafe,cuisine=coffee, orshop=coffee. -
Check regional differences. Schools in Russia are often tagged
amenity=school+isced:level=1, while in Germany it'samenity=school+school=primary. -
Consider nesting. A building may contain multiple POIs: ground floor pharmacy, second floor dentist.
-
name:en vs name. For English export, use
name:enif available. Thenametag may be in any language. -
Validate data. Tags like
building:levels=five(text instead of number) are real cases. Always check value formats.
Conclusion
The OSM tag system is flexible and powerful but requires understanding. For quality export, it's important to know which tags describe the objects you need and how they're grouped into layers. TagInfo and the OSM Wiki are indispensable tools for working with tags.