Outdoor maps that show the climb ahead.

The Streets basemap with the ground under it: shaded relief, contour lines with their heights, and 3D terrain, worldwide. The map is touring the Alpe d'Huez by itself; drag it to take over.

Where it lands in your product.

Nobody ships a terrain tileset. They ship a route planner where the col is visibly a col, a trail page with the ridge in relief, a ride card that tilts into the valley. This is what Outdoor looks like from the outside.

The same map, with the ground under it.

Streets and Outdoor are one basemap; Outdoor adds shaded relief and contour lines from worldwide elevation data. The valley, the hairpins and the ridge appear without a single extra request from your side.

Real roofs on the same map
The Alpe d'Huez slope in 3D with shaded relief and labelled contour lines every 250 metres© OpenStreetMap contributors

Contours drawn in the browser.

The lines are computed from the elevation tiles on the visitor's machine, so they stay crisp at every zoom, carry their heights, and follow the terrain when the camera tilts into 3D.

The same data, as an API

One map session, the terrain switched on

  1. Streets map opensno extra unit
1unit, relief and 3D included

same session as Streets
same monthly pool

Relief and 3D cost nothing extra.

Terrain rides in the same map session as the basemap. Turn on hillshade, contours and 3D and the session is still one unit; only a call to the Elevation API is its own.

See what a month costs
outdoor.ts
import { Map, MapStyle } from '@rijwind/sdk';

const map = new Map({
  container: 'map',
  style: MapStyle.OUTDOOR, // relief + contour lines
  center: [6.05, 45.07], zoom: 13,
});

map.setTerrain3D(true); // same session, same unit

One style name, one method for 3D.

The SDK turns on relief and contours with the style, and 3D with one call. Bring your own MapLibre instead and the docs carry the manual terrain and contour setup.

Read the styles guide

Terrain is in the session already.

Opening any map issues one short-lived session, and it signs the elevation archive alongside the basemap. Outdoor just uses it. Switch from Streets to Outdoor, tilt into 3D: same session, same unit.

How sessions work, in the docs ↗
one map session
  1. {
  2. "url": "https://cdn.rijwind.com/tiles/planet.pmtiles?token=…&expires=1789039007",// the worldwide vector basemap, signed for this session; every Streets variant draws from it
  3. "terrainUrl": "https://cdn.rijwind.com/tiles/terrain.pmtiles?token=…&expires=1789039007",// elevation for hillshade, contours and 3D, in the same session at no extra unit
  4. "satelliteUrl": "https://cdn.rijwind.com/tiles/satellite.pmtiles?token=…&expires=1789039007",// imagery, plus sibling archives for ocean, base and the high-resolution aerial layers
  5. "satelliteNlUrl": "…", "satelliteBaseUrl": "…", "satelliteOceanUrl": "…", "satelliteBesUrl": "…",
  6. "buildings": { "countries": ["NL"], "baseUrl": "https://cdn.rijwind.com/buildings", … },// real 3D building models, per covered country, growing
  7. "expiresAt": 1789039007// minutes away on purpose; the SDK fetches the next one before it lapses, still the same session, still one unit
  8. }

The short version.

Everything a developer scans a product page for, in one place, without the adjectives.

Map sessionOutdoor, Streets or both in one map: still one.
1 unit
Relief, contours, 3DTerrain rides in the same session as the basemap.
no extra unit
Contour linesCrisp at every zoom, height labels, drape over 3D.
drawn in the browser
Terrain resolutionWorldwide. Finer national data: not yet.
about 30 m
Heights as numbersSame terrain, one unit per request.
Elevation API
Pistes, lifts, route networksRelief and contours on Streets today; topo layers are planned.
not yet
Bring your own MapLibreManual terrain and contour setup in the docs.
yes
CoverageEvery basemap variant works underneath.
worldwide
Free tierHard cap. No card, no sales call.
10,000 units / month
Paid plansOne unit pool across maps, geocoding and routing, plus a spending cap you set.
from €5 / month
ServingEuropean CDN for tiles and terrain, EU-issued sessions. DPA and sub-processor list published.
EU, end to end

Numbers as of September 2026. The pricing page has the full ladder.

Outdoor, answered.

What is the Outdoor map?

The Streets basemap with terrain on top: shaded relief that shows the shape of the land, contour lines with their heights, and optional 3D so the camera can tilt into a valley. Same roads, water, places and labels as Streets, so nothing you built on Streets changes.

What is it for?

Cycling and hiking apps, route planners that want the climb visible before the ride, trail and park websites, outdoor gear brands, ski and mountain-bike resorts, and any product where the ground matters more than the street grid.

How is it priced?

Like every style: one unit per map session. Terrain rides in the same session as the basemap, so relief, contours and 3D add nothing. Ten thousand sessions a month are free; paid plans start at five euros.

Where do the contour lines come from?

They are computed in the visitor's browser from the same elevation tiles that shade the relief, rather than pre-drawn as a tileset. That is why they stay sharp at any zoom, carry height labels, and drape correctly over 3D terrain. It also means they need a browser with WebGL, like the rest of the map.

How detailed is the terrain?

Worldwide elevation on a grid of about 30 metres. Mountains, valleys, ridges and rolling hills read clearly; a single embankment or a cutting narrower than the grid is smoothed. Finer national elevation data, down to a metre in some countries, is planned but not in yet.

Can I get the heights as numbers too?

Yes. The Elevation API samples the same terrain for points or along a route, so a profile chart under the map matches the relief on it. That is a separate request and costs one unit per call.

Where is it weakest?

Outdoor is relief and contours on the street basemap, not a full topographic map yet. There are no ski pistes, lifts, or hiking and cycling route networks drawn as layers, and no surface colouring for paths. Those are on the list, but do not buy this page expecting them today.

Do I have to use your SDK?

No. The SDK sets the style and 3D with one option and one call. With your own MapLibre you add the terrain source, the hillshade layer and the contour generator yourself; the docs carry the exact setup, and it is a few dozen lines.

Is there a free tier?

Yes. The free plan includes 10,000 units a month with no card and no sales call, which is 10,000 map sessions if that is all you spend them on. It is a hard cap, so a traffic spike cannot produce a bill.

Where are my visitors' requests served from?

Tiles, terrain included, come from a European CDN and the session is issued from the European Union, end to end. No part of the path touches a US-controlled provider. We publish a DPA and a full sub-processor list.

Show them the climb.

Ten thousand sessions a month, free. The same key covers search, routing and elevation when you get to them.

new Map({ style: MapStyle.OUTDOOR })Get an API key
No credit card. No sales call. A spending cap you set yourself.Read the styles guide