Self-hosted Dutch vector tiles
A complete vector tileserver for the Netherlands, built from OpenStreetMap data. Full national coverage, free up to 10,000 requests/day with no API key. Built and hosted on our own infrastructure.
GET https://tiles.daltcore.com/tiles/netherlands.pmtiles
This is a first release for internal and community use. Coverage and refresh schedule may change as usage grows.
One point per address, colored by energy label (A dark green through G red). Sourced from Kadaster BAG and EP-Online, refreshed monthly.
Churches (OSM), rijksmonumenten (RCE/PDOK) and old buildings built before 1940 (Kadaster BAG), each toggled independently.
Shops, food & drink, tourism, health, education, transport and public services, ranked so the most important places show first at lower zoom.
NO2, PM2.5 and PM10 on a 1km grid from RIVM's Grootschalige Concentratiekaarten Nederland (GCN).
Population density by municipality, district and neighbourhood (CBS Wijk- en Buurtkaart via PDOK), each level toggled independently.
What is in the archive
One file, the whole country. No accounts, no per-tile requests.
| Field | Value |
|---|---|
| Format | PMTiles, a single-file vector tile archive. |
| Coverage | Full Netherlands, from OpenStreetMap data. |
| Source | Geofabrik Netherlands extract of OpenStreetMap. |
| Zoom levels | 0 to 14, country overview down to street level. |
| Refresh | Weekly, Sunday 03:00 CET, fully automated. |
| Size | Around 645 MB for the current build. |
| Path | Description |
|---|---|
tiles.daltcore.com/tiles/netherlands.pmtiles |
Full vector tile archive, served with HTTP range requests. Free up to 10,000 requests/day; use an API key for a higher monthly quota. |
preview.tiles.daltcore.com |
MapLibre GL JS demo viewer, with layer toggles and a light/dark theme switch. Always free, no key needed. |
| Tier | Limit |
|---|---|
| Free | 10,000 requests/day per IP address, no API key needed. Basic map layers: roads, buildings, water, land use and place names. |
| With API key | Custom monthly quota. Adds points of interest, administrative boundaries, aeroway data and an energy-label point per address. Contact us for a key. |
| Category | Tier |
|---|---|
| Roads | Free |
| Buildings | Free |
| Land use & water | Free |
| Labels & style | Free |
| Boundaries & aeroway | Premium |
| POIs | Premium |
| Energy labels | Premium |
| Air quality | Premium |
| Heritage | Premium |
| Demographics | Premium |
| Boundaries & nature | Premium |
| Postal areas | Premium |
| BAG buildings | Premium |
Serving
Tiles are served with CORS enabled and HTTP range request support, so any PMTiles-aware client can read individual tiles without downloading the whole archive. Requests to the tile archive pass through a small gateway that enforces the rate limit above; it forwards range requests transparently.
Add it to your map
A few lines with MapLibre GL JS and the pmtiles protocol handler.
import { Protocol, FetchSource, PMTiles } from "pmtiles";
import maplibregl from "maplibre-gl";
const protocol = new Protocol();
maplibregl.addProtocol("pmtiles", protocol.tile);
// No key: basic layers (roads, buildings, water, land use, place names).
map.addSource("netherlands", {
type: "vector",
url: "pmtiles://https://tiles.daltcore.com/tiles/netherlands.pmtiles",
});
// With an API key: same URL, full layer set (+ poi, boundaries, aeroway,
// energy labels).
const headers = new Headers({ "X-API-Key": "YOUR_KEY" });
const source = new FetchSource("https://tiles.daltcore.com/tiles/netherlands.pmtiles", headers);
protocol.add(new PMTiles(source));
Same URL either way: the response depends on whether a valid X-API-Key header is present.
Built on OpenStreetMap data.
Tiles are generated from Geofabrik's Netherlands extract of OpenStreetMap, converted to vector tiles with Planetiler. A new archive is built automatically every week.
One file, the full country, replaced on every rebuild.
A scheduled job regenerates the archive from the latest OpenStreetMap data every week.
Vector tiles from a country overview down to street level detail.
Questions, feedback or a use case that needs more?
Get in touch. We are curious what you build with it.
- info@daltcore.com
- Phone
- 038 202 28 59
- Location
- Kampen, the Netherlands