Kelsey Taylor, Lead Cartographer + Designer
June 20, 2025
Maintaining a family of related map styles
Efficient cartography with Stamen’s style builder
Clients
Stamen helps our clients produce about 50 distinct projects per year, many with long-term partners. We’ve worked with 100s of unique clients over Stamen’s history, everywhere around the globe.
“We need a map style for our app”
“We need a map style for our app”
“We actually need a light and dark mode of the map”
“We need a map style for our app”
“We actually need a light and dark mode of the map”
“What if we let the user select what language they want the map in”
“We need a map style for our app”
“We actually need a light and dark mode of the map”
“What if we let the user select what language they want the map in”
“Wouldn’t it be cool if we could offer HERE data in Europe but OSM everywhere else”
You can see how quickly one map becomes dozens of maps…
How do we tackle the tesseract?
Build system 101
Why did we build something?
Merge conflicts with multiple contributors
Found many inconsistencies
Break up work between collaborators
Why did we build something?
How do we scale up our work without magnifying these problems?
Merge conflicts with multiple contributors
Found many inconsistencies
Break up work between collaborators
Build system 101
Everything lives in a template
Layers are the layers in your stylesheet
Variables pull out bits of layers that are repeated across styles or that change together across styles
Variants are the parameters that differentiate your output styles
V A R I A N T
L A Y E R
V A R I A N T
V A R I A N T
L A Y E R
V A R I A B L E
What does the build system enable us to do?
From a technical perspective
Maintain several related styles
Allow easy differentiation between styles
Allow for different data sources
Avoid inconsistencies between styles
Maintain several related styles
x basemap
y basemap
z basemap
Allow easy differentiation between styles
“Default” political view
India political view
Allow for different data sources
Avoid inconsistencies between styles
From a process perspective
Break work down into a componentized, code-based system that is easy for cartographers to use
Make it easy to review work without merge conflicts
Implement our larger suite of tools
Break work down into a componentized, code-based system that is easy for cartographers to use
Make it easy to review work without merge conflicts
Kelsey is working on the color palette for the light reference map
Alan is working on improvements to admin boundaries across all styles
Implement our larger suite of tools
Route simulator
Maperture
Figmasset
Map GL Style Diff
Chartographer
viewer
icon design
interactive legend
preview experience
view diff
R O U T E S I M U L A T O R
M A P E R T U R E
Have we used the style builder for client work?
A few client examples
Client A (complex)
Client B (simple)
5 styles
Each style in 3 data sources (OpenData, HERE, Grab)
Variants to support 22 different sets of political views
212 styles in total
Amazon Location Service
6 styles
Each style in 3 data sources (OpenData, HERE, Grab)
Variants to support 22 different sets of political views
282 styles in total
Amazon Location Service
Let us know if we can help with a project!
kelsey@stamen.com