If you want to create a custom OpenStreetMap style you have three options: have a go yourself, use a map style editor, or use a custom cartography service.
OpenStreetMap provides global maps with incredible amounts of detail. Here at Thunderforest, we use OpenStreetMap data for all of our maps. We also actively contribute to the open-source project.
However, turning this raw data into a custom map is not easy. That’s one of the main reasons we founded Thunderforest back in 2011.
The raw OpenStreetMap data is free for everyone to use, including for commercial use. The maps you see on openstreetmap.org are a different matter.
The OpenStreetMap Foundation (OSMF) runs its own tile servers, but they render a single map style, designed to help volunteer mappers see and check their edits. There’s no way to change the colours, hide features you don’t need or add your own data – every tile is drawn once and looks the same to everyone.
The servers also run on donated resources with limited capacity. The OSMF Tile Usage Policy forbids heavy use, offers no guarantee of availability, and access can be withdrawn without notice. So even if the standard style suits you, it isn’t something to build a commercial product on.
To get a custom map, you need to render the data yourself – or have someone do it for you.
To create your own custom map, you need to render the OpenStreetMap data yourself. First you’ll need to find suitable hardware:
“In general, requirements will range from 10-20GB of storage, 4GB of memory, and a modern dual-core processor for a city-sized region to 1TB of fast storage, 24GB of memory, and a quad-core processor for the entire planet.”
But the real challenge is everything else you need to build and keep running:
Each piece is well documented on its own, but getting them all working together, and keeping them working, is a significant ongoing commitment.
If you’d like to try it yourself, Switch2OSM is the best place to start.
If running your own servers sounds like too much, there’s a halfway house: a map style editor, like Mapbox Studio. The provider handles the data, the servers and the updates, and you design the map’s appearance through a web interface. It’s a good option if you have cartographic expertise and are happy with the learning curve, but there are some limitations.
You can usually restyle most things that you can see: colours, fonts, line widths, labels and icons, and even add your own data on top.
What a style editor can’t do, though, is change what information is available. So if the map data don’t include the details you need – mountain bike trail grades, for example – you can’t show them. Nor can a style editor show you whether you should be using certain colours, or whether that road width is actually a good idea from the point of view of your users, or if there’s the right amount of contrast between foreground and background.
We’ve had a number of customers come to us from Mapbox, frustrated after they couldn’t get their custom map to look quite right using a style editor.
Whichever route you take – running your own servers or using a style editor – you still need to get the cartography right. Here are some of the challenges you’ll face. We’ve experienced all of them ourselves.
Showing terrain and hill shading brings significant cartographic complexity – shading without obscuring landcover, contours that don’t distract from paths, and so on. It takes a lot of trial and error to balance these. We’ve spent a long time getting it right!
OpenStreetMap provides incredible detail. This is great as raw material, but means you need to use cartographic expertise when designing your custom map. You need to pick out what is important, and make sure your maps are approachable for end users.
As much as we love OpenStreetMap, it does have some quirks. For example, the ‘highway’ tag refers to roads – but also to all paths and tracks, including hiking trails, bridleways, racing circuits, and so on. This means that if you only want to style roads, you need to carefully select the correct features. Otherwise your hiking trails will look just like your motorways!
If you don’t have the time, infrastructure or cartographic experience to create your own custom map, then a custom mapping service – like the one we offer – could be for you.
A custom mapping service is ideal for app and web developers working on commercial products.
With over 15 years’ mapping experience, we can quickly create whatever style you need. We’ll discuss your needs, understand your desired outcome, and make it happen.
We take care of everything covered above. We run the servers and keep the data up to date – our maps are updated hourly. We handle the tricky cartography, from terrain to choosing what to show at each zoom level. And because we build the map data ourselves, we’re not limited to what’s in someone else’s tiles.
You don’t need to specify every last detail, since this is where our experience comes in. We can spot potential problems and take care of them before they become an issue.
“I still find it so cool that my work on this allows me to say that I ‘commissioned a cartographer’ to work on something for me.”
Please read Custom Cartography for more details, including pricing.
OpenStreetMap is a great project. It is community-based, contains excellent data, and is free for everyone to use.
We’ve already spent years wrestling with all challenges cartographical – so you don’t have to!