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.
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, some amenity||#734a08|
|small details, money, man_made||#666666|
The Standard tile layer appearing on openstreetmap.org is a Mapnik rendering.
- Files (SVG) are on GitHub
- If you miss an icon you might open a new issue or look for suitable collections (see below).
- SVG only
- flat (single colour [usually black], no gradients, no outlines)
- clean (reduced complexity where possible)
- sharp (aligned to pixel grid)
- single point of view (avoid use of perspective where possible)
- common canvas size (usually 14x14px)
- .PNG at osmarender SVN, .SVG picked from /Map Icons Collection (overview, mostly PD license)
- Add icon requests via OSM Trac ticket, maintained by ? or edit the stylesheets from SVN yourself
- show as many features as possible, let the users decide
- see Osmarender/Symbols
Other OSM projects
- Potlatch flash online editor - .PNG at Potlatch2 SVN
- JOSM offline editor - .PNG at JOSM SVN, .SVG picked from /Map Icons Collection (overview)
- 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:Sergionaranja's 2020 Iconset
- Osmic (CC0 OSM Icons) - https://github.com/nebulon42/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 Park Service - Map Symbols & Patterns for NPS Maps (downloadable in structured form)
- 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