skip to main content

Styling Task Features

MapRoulette offers two different approaches to styling tasks:

  1. A subset of the simplestyle specification can be used to customize the appearance of features within a Task by including special feature properties in your taskโ€™s GeoJSON

  2. Styling rules can be setup in your challenge that style task features based on the values of task properties, such as OSM tags

Styling tasks directly with GeoJSON properties

To style tasks via GeoJSON, simply include the simplestyle properties directly on your feature. This provides you with complete flexibility in determining which tasks are to be styled, and how.

The following simplestyle properties can be used on task features:

PropertyDescriptionSupported Geometries
strokeOutline colorLineStrings, Polygons
stroke-widthThickness of outlineLineStrings, Polygons
stroke-opacityTranslucency of outlineLineStrings, Polygons
fillFill color (inside the outline)Polygons
fill-opacityTranslucency of the fillPolygons
marker-colorMap marker colorPoints
marker-sizeMap marker sizePoints

Some notes and caveats:

  • colors need to be expressed as web hex colors or (slightly riskier) common web color names
  • opacities need to be decimal numbers between 0.0 (transparent) and 1.0 (opaque)
  • marker-size must be one of small, medium, or large (medium is the normal size)
  • fill colors can obscure OSM labels, so be careful about high fill-opacity values
  • use of colors used by OSM or MapRoulette to convey special meaning could confuse your mappers


The following set of properties results in a Way being rendered with a purple stroke (outline) and 50%-opaque fuschia fill, as shown below:

"properties": {
"@id": "way/258145134",
"amenity": "community_centre",
"building": "yes",
"stroke": "#800080",
"fill": "#FF00FF",
"fill-opacity": "0.5"

Customizing task styling during challenge setup

On the โ€œConfigure property-based behaviorโ€ step when creating/editing a challenge, you can choose to customize task property styles.

Youโ€™ll be presented with the ability to specify one or more task styles that should be applied when a property filter/search matches on a task. In the screenshot below, roads with more than 2 lanes are being setup to be rendered as thick purple lines. You can setup multiple filters with their own styles to capture various scenarios.

Note that if a task matches multiple filters โ€“ or if the task also contains simplestyle GeoJSON properties (see above) โ€“ all of the matching styles will be merged and applied.

When working on a challenge that has custom styles applied, it may be useful to add the new Feature Style Legend widget to your workspace to serve as a basic reminder of what the custom styles indicate.


HOT has produced a video that goes into styling features in MapRoulette. Check it out!