Map Icons (a.k.a. symbols or pictograms) are commonly used as a cartographic technique to represent different map features. Often icons are used to represent different POI types in more magnified maps, but icon graphics can also be used on areas or even linear features. The use of map icons, as with all other cartographic style choices, is under the control of developers/designers when they configure rendering software, and with OpenStreetMap you can experiment with this yourself! Many people use OpenStreetMap in this way, and so many icon sets have been designed (and often shared) by the community.
On this page we list various sets of icons. Of course every renderer and every generated map uses only a subset of the shared icon collections. Additionally each rendering will render something for only a subset of the tags found within OpenStreetMap data. It is a cartographic choice as to which tags should be rendered with an icon. See Map Features to see a big list of many tags in the OpenStreetMap data, but the data is not limited even to that list.
For graphic design tips please refer to /Map Icons Standards, /WikiProject Pictograms.
There are many sets of icons and rendering systems are hugely flexible in which icons are used, so it's perhaps unfortunate that people tend to be most interested in the icons used in the renderer defaults.
Standard tile layer (openstreetmap-carto)
|food, money, some amenity||#734a08|
|small details, man_made||#666666|
The Standard tile layer appearing on openstreetmap.org is the default OSM rendering.
- Files (SVG) are on GitHub
- If you miss an icon you might open a new issue or look for suitable collections (see below).
- For the design policy, see Github.
osmarender was a rendering system with default icons as follows. This is no longer available as a layer on openstreetmap.org due to the tiles@home system being shut down
- .PNG at osmarender SVN, .SVG (overview, mostly PD license)
- show as many features as possible, let the users decide
- see Osmarender/Symbols
Other OSM projects
- JOSM - offline editor - .PNG at JOSM SVN, .SVG picked from /Map Icons Collection (overview)
- iD - offline editor - .SVG at symbols
- Potlatch - flash online editor - .PNG at Potlatch2 SVN
- Organic Maps - Offline maps of all countries, fast renderer, offline search - .SVG at symbols / night symbols
- Osmand - GPS Navigation and map application - .SVG at style-icons
- Navit - Linux Navigation System - .PNG, .SVG, .XPM at Navit SVN
- Traveling Salesman - testing router - .PNG at SVN picked from /Map Icons Collection
- OpenStreetBrowser - symbols (file names all start with "OSB_")
- FreieTonne - Symbols
- OpenSeaMap - Seamark_Objects
Icons designs are of course copyrightable creative works, but it's such a shame to introduce awkward niggling legal doubts, hampering the use of what is essentially a very basic element of a graphical map. As such it is sensible to release icon designs with a public domain or CC0 license. Some icon sets listed on this page are released as such. We should aim to state clearly where there are exceptions to this (but users may wish to double-check with the original artists)
Because .SVG vector graphics are preferred to generate different resolutions of an icon, it is recommended that icons be created with a tool such as Inkscape, OpenOffice Draw, or similar. To work with the exported .PNG image files, GIMP is recommended.
Matching Map Icons with Map Features
As the category and icon names don't match the OSM map features tags, you'll need to match a map feature with an icon:
The JOSM "ex mappaint" style has a wide range of mappings of OSM map features to the icons, see: elemstyles.xml - it's probably a very good idea that JOSM and other programs will show the same icons for the same map features.
To create a more "map features" like structure of the icons, you can call the script create_osm.sh. Based on an XSLT transformation of the above mentioned elemstyles.xml, this script creates a directory called osm. Then you'll have a set of directories named after the map features keys (e.g. highway) containing icons named after the values (e.g. stop.png). Please note:
- the different icon themes will have a varying level of completeness of the OSM features, classic.small will have the most complete set of them
- for the XSLT transformation, you'll need xsltproc from the libxslt package installed
Internal Icon collections
- Icon set by Bryan Quinion
- /WikiProject Pictograms
- Project of the week - Be artistic!
- User:UrSuS and UrSuS Kosmos Rules
- User:Sergionaranja's 2020 Iconset
- Osmic (CC0 OSM Icons) - https://github.com/gmgeo/osmic
External Icon Resources
- OSGeo Map Symbol set
- MapBox Maki Icon set ... also Maki - web cartography icons from MapBox
- Map Icons Collection with custom colouring
- Professional association of American graphics - Symbol Signs (and on Wikimedia Commons)
- US National Park Service - Map Symbols & Patterns for NPS Maps
- PIANC nautical symbols
- Wikimedia Commons - Nautical Chart Icons (reference here)
External Symbol Resources
- OpenLayers Symbols
- thenounproject.com - mostly PD, some CC licensed.
- Wikimedia Commons
- Unicode Transport and Map Symbols In version 6.0.0 of the Unicode standard a character range for "Transport and Map Symbols" was added.
- AIGA symbol signs see also AIGA ans SVG files
- www.sjjb.co.uk/mapicons - SVG map icons (CC0)
Other Icon Tips
- /Map Icons Standards
- Tango Icon Theme Guidelines
- Pictograms, Icons & Signs - Roger Hubner , ISBN 0500286353.
- Inkscape Open Symbols offers open source SVG symbol sets that can be used as Inkscape symbols and will soon offer cleaned up versions of the SJJB SVG Map Icons, see https://github.com/Xaviju/inkscape-open-symbols/issues/39