DTM terrain model
The DTM is an elevation tile set for all of Austria: ground height without buildings and vegetation, encoded as color (Terrain-RGB). It works directly as raster-dem for hillshading and 3D terrain in MapLibre, Mapbox GL and compatible clients.
Use cases
Specifications
relief-terrainrgb- File
relief-terrainrgb-20250915-ed2e4341.pmtiles- Reference date
2025-09-15- Format
webp, encoding mapbox, 512 px- Zoom levels
z5–z16- Bounds (WGS84)
9.5306 / 46.3697 / 17.1661 / 49.0235 (W/S/O/N)- Vertical resolution
0.1 m (Terrain-RGB)- Vertical accuracy (source)
± 0.50 m per BEV, larger in high mountains- Height reference
EVRF2000 Austria, orthometric (EPSG:9274)- License
CC BY 4.0
Live map
Clicking reads the tile of the current zoom level (z16 at most) via range request, decodes the pixel at the click point with the
formula under “Encoding” and shows elevation and RGB value. With 3D enabled, the value of queryTerrainElevation is shown as well.
Add to your map
import * as maplibregl from "maplibre-gl";
maplibregl.addProtocol("pmtiles", new Protocol().tile);
const map = new maplibregl.Map({
container: "map",
center: [12.694, 47.074], zoom: 11, pitch: 60,
style: {
version: 8,
sources: { dem: { type: "raster-dem", url: "pmtiles://https://tiles.mapx.at/relief-terrainrgb-20250915-ed2e4341.pmtiles?access_token=YOUR_TOKEN", tileSize: 512, encoding: "mapbox", maxzoom: 16 } },
terrain: { source: "dem", exaggeration: 1.2 },
layers: [{ id: "hill", type: "hillshade", source: "dem" }]
}
});
map.on("click", (e) => console.log(map.queryTerrainElevation(e.lngLat)));Encoding
height_m = -10000 + (R · 65536 + G · 256 + B) · 0.1- Theoretical value range −10000 m to +1,667,721.5 m in steps of 0.1 m; in Austria the values lie between about 115 m (Lake Neusiedl) and about 3,798 m (Grossglockner).
- Values are rounded to 0.1 m when written (round half to even at exactly .5, see Rust code above); values outside the range are clamped.
- WebP lossless: lossy compression would directly corrupt the encoded elevations. Do not use alpha information; read the RGB bands unchanged (no color management, no premultiplied alpha).
- 512 × 512 pixels, no border (no 1 px skirt). In MapLibre specify
tileSize: 512andencoding: "mapbox".
In detail: Terrain-RGB.
Vertical resolution and accuracy
| Value | Meaning | |
|---|---|---|
| Vertical resolution | 0.1 m | smallest height step of the encoding |
| Deviation from source | ≤ 0.05 m | rounding during encoding, otherwise unchanged (lossless) |
| Vertical accuracy of the source | ± 0.50 m | stated by BEV for the ALS-DTM; larger deviations are possible in high mountains |
| Height reference | EVRF2000 Austria | orthometric heights (EPSG:9274), as in the source |
The encoding is five times finer than the accuracy of the survey, so it does not limit quality.
In the overview levels z15 to z5 each pixel is the mean of the finer level. The vertical resolution stays 0.1 m, but small peaks and summits are smoothed. For exact point heights read z16 or use the elevation API.
Horizontal resolution by zoom
At 47.5° N, 512 px tiles, Web Mercator:
| Zoom | m per pixel | Tile edge (km) | Note |
|---|---|---|---|
| z5 | 1,652 | 846 | |
| z6 | 826 | 423 | |
| z7 | 413 | 212 | |
| z8 | 207 | 106 | |
| z9 | 103 | 53 | |
| z10 | 52 | 26 | |
| z11 | 26 | 13 | |
| z12 | 13 | 6.61 | |
| z13 | 6.46 | 3.30 | |
| z14 | 3.23 | 1.65 | |
| z15 | 1.61 | 0.83 | |
| z16 | 0.81 | 0.41 | highest stored level (≈ 1 m source) |
| z17 | 0.40 | 0.21 | overzoom (client) |
The data come from a 1 m raster. z16 (about 0.8 m per pixel) is the finest level and preserves the resolution of the source.
There are no tiles above z16: from z17 MapLibre scales up the z16 tile (set maxzoom: 16).
Source and currency
The DTM is derived from the BEV ALS-DTM 1 m (airborne laser scanning, terrain only). The reference date is in the specifications and the file name; a file never changes, a new release is a new file.
- Source: BEV (Austrian Federal Office of Metrology and Surveying), reference date 15 Sep 2025.
Notes
- Quantization 0.1 m. The deviation from the source is within the rounding range.
- Vertical accuracy per BEV ± 0.50 m, see Vertical resolution and accuracy.
- The DTM shows the terrain without buildings, trees and bridges. For the surface there is the DSM.
- Coverage is the rectangle 9.53–17.17° E, 46.37–49.02° N. Outside Austria and in gaps the value is a smooth continuation of the terrain, not a measurement.
Attribution
Required under CC BY 4.0. Text:
Relief: BEV – ALS-DTM 1 m (reference date 15 Sep 2025), CC BY 4.0HTML (as in the PMTiles metadata; MapLibre picks it up automatically from the tileset):
Relief: <a href="https://data.bev.gv.at/geonetwork/srv/ger/catalog.search#/metadata/5ce253fc-b7c5-4362-97af-6556c18a45d9">BEV – ALS-DTM 1 m</a> (Stichtag 15.09.2025), CC BY 4.0More: License.