Is there a way to add a layer in Openlayers 4 containing only OpenStreetMap labels (for cities and roads mainly).? I know how to display OSM layers with and without labels using these links:


I would like to display a layer containing only labels and not geometries over a satellite image.

Any idea on how I can achieve that?

  • 1
    As an aside, are you sure that you really want to use those tile links? tiles.wmflabs.org/osm/9/253/166.png/status suggests a tile dating from 2015. The underlying data may be even older. Mar 23, 2018 at 14:14
  • I am not actually, I used those links to better explain what I wanted to achieve. I am simply using this to display OSM basemap, I believe it displays the latest OSM data: var map = new ol.Map({ target: 'map', layers: [ new ol.layer.Tile({ source: new ol.source.OSM() })] Thank you for your remark though, it is good to know that these tiles are pretty old.
    – EliseB
    Mar 26, 2018 at 14:25

1 Answer 1


Map Compare lists a few, mostly ugly, label-only tile servers:

  • ESRI Boundaries & Places
  • TomTom Labels

Additionally, Leaflet Provider Demo lists some better looking ones:

  • CartoDB.PositronOnlyLabels
  • CartoDB.DarkMatterOnlyLabels
  • Stamen.TonerLabels

If they don't fit you can still render your own OSM tiles with a customized style sheet.

I can't provide any exact tile URLs for you since there are no links to the corresponding tile server documentation. You can either search for the documentation yourself or use your browser to determine the tile URLs getting accessed while viewing these maps.

Remember to respect the usage policy of the tile server you choose.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.