# Leefbaarometer liveability index

An estimate of how pleasant a place is to live, for every inhabited 100 by 100 metre square in the Netherlands, and aggregated per neighbourhood, district, postcode area and municipality. The model uses 45 features of the living environment (94 underlying variables), such as amenities, noise and insecurity. Measurements for 2002 to 2024, with five sub-scores.

- Publisher: Ministerie van Binnenlandse Zaken en Koninkrijksrelaties
- Area: Netherlands · Finest detail: 100 metres
- Period: 2002 – 2024 · Refreshed: every few years
- Access: Open · Licence: CC0 1.0
- Join keys: buurtcode (BU), wijkcode (WK), gemeentecode (GM), postcode (PC4), rastercel (100 m)
- Status: ok (2026-07-01) · nieuwste meting: 2024
- URL: https://www.leefbaarometer.nl/page/Opendata

## What can you do with it?
- **Which neighbourhoods improved?.** The service has ready-made layers for the change between an earlier year and 2024, per neighbourhood. Find the neighbourhoods in your municipality with the largest decline.
- **Municipalities side by side.** In 2024 Vlieland scored highest and Roosendaal lowest of the 342 municipalities. All municipalities fell in class 5 to 9.
- **Where is the problem?.** The five sub-scores (housing stock, physical environment, amenities, social cohesion, nuisance and insecurity) show which part pulls a neighbourhood down. They exist for 2014, 2018, 2020, 2022 and 2024.
- **Model next to measurement.** Put the nuisance and insecurity sub-score next to police-recorded nuisance in the same neighbourhood. Where do they differ?

## How to process it
1. **Choose a layer.** The WFS has 359 layers, the WMS 430: the 71 extra are scale-dependent maps without a level in the name (16 Oct 2026). The name tells you what's in it: level (clippedgrid, buurt, wijk, pc4, gemeente) + kind (score, afwijking, ontwikkeling) + year, sometimes with a sub-score (_fys, _onv, _soc, _vrz, _won). For example buurtscore24 or wijkontwikkeling20_24.
   `https://geo.leefbaarometer.nl/lbm3/ows?service=WFS&version=2.0.0&request=GetCapabilities`
2. **Fetch the scores without shapes.** Use propertyName to list only the fields you want. Leave out geom and the response stays small. With outputFormat=csv you get a table (lbm rounded to 4 decimals).
   `https://geo.leefbaarometer.nl/lbm3/ows?request=GetFeature&service=WFS&version=2.0.0&typeNames=lbm3:buurtscore24&outputFormat=csv&propertyName=id,name,gemeente,lbm,kscore`
3. **Read the fields carefully.** lbm is the total score, kscore the class on the map (higher is better). afw is the deviation from the Dutch average. fys, onv, soc, vrz and won are the sub-scores, also as deviation from the average.
4. **For GIS or the whole grid.** The 2024 100-metre layer has 382,664 cells. Download the Excel files (zip, 511 MB) and the Geopackage with shapes (zip, 282 MB) instead.
   `https://www.leefbaarometer.nl/resources/open-data-leefbaarometer-meting-2024.zip`

## Interesting combinations
- Do lower-income neighbourhoods score lower on liveability? → [cbs-kwb](https://www.opendataindex.nl/en/bron/cbs-kwb.md) via buurtcode (BU). The id field is the neighbourhood code (BU00140000). Join to income from the key figures of the same year and check that the boundaries match.
- Does the model see nuisance where the police record it? → [politie-overlast](https://www.opendataindex.nl/en/bron/politie-overlast.md) via buurtcode (BU). Compare the onv sub-score (nuisance and insecurity) with the number of nuisance reports per resident per neighbourhood.

## Similar sources
- [cbs-kwb](https://www.opendataindex.nl/en/bron/cbs-kwb.md): Factual figures per neighbourhood (residents, income, housing), no liveability verdict. Many of those figures feed into the Leefbaarometer model.
- [Atlas Leefomgeving](https://www.atlasleefomgeving.nl): Maps of separate environmental factors (air, noise, greenery) at your address, without a single total score.

## What to watch out for
- **A prediction, not a survey.** The score is a statistical estimate based on features of the environment. The ministry itself says that the real situation on the ground needs further research.
- **Every two years, with a delay.** The downloads of the 2024 measurement date from 1 July 2026. Anyone describing a neighbourhood in 2027 is using figures about 2024.
- **Sub-scores not for every year.** For 2002, 2008, 2012 and 2016 there are only total scores. Since version 3.0 (2021) older years have been aligned with the new model; don't compare with old version 2.0 publications.
- **Grid scores are spread out.** The model calculates per 6-character postcode. A 100-metre cell is a weighted average of the postcodes that fall in it.

## API (OGC WFS 2.0.0)

- Base: https://geo.leefbaarometer.nl/lbm3/ows
- Access: No key. Fees: ?; access constraints: ?. (from the description)
- Formats: application/gml+xml; version=3.2, GML2, KML, SHAPE-ZIP, application/json, application/vnd.google-earth.kml xml, application/vnd.google-earth.kml+xml, csv, gml3, gml32, json, text/csv, text/javascript, text/xml; subtype=gml/2.1.2, text/xml; subtype=gml/3.1.1, text/xml; subtype=gml/3.2
- Size: 12147 features in lbm3:buurtscore24 (tested)
- Filtering: OGC Filter Encoding (FES 2.0); PropertyIsLessThan, PropertyIsGreaterThan, PropertyIsLessThanOrEqualTo, PropertyIsGreaterThanOrEqualTo, PropertyIsEqualTo, PropertyIsNotEqualTo, PropertyIsLike, PropertyIsBetween, PropertyIsNull, PropertyIsNil, Disjoint, Equals, DWithin, Beyond, Intersects, Touches, Crosses, Within, Contains, Overlaps, BBOX, After, Before, Begins, BegunBy, TContains, During, TEquals, TOverlaps, Meets, OverlappedBy, MetBy, EndedBy

### Endpoints
- `GET ?request=GetCapabilities`: service description
- `GET ?request=DescribeFeatureType`: fields of a layer (XSD)
- `GET ?request=GetFeature`: the features themselves, with geometry
- `GET ?request=GetPropertyValue`: only the values of one field
- `GET ?request=ListStoredQueries`: stored queries
- `GET ?request=DescribeStoredQueries`: stored query details
- `GET ?request=CreateStoredQuery`: CreateStoredQuery
- `GET ?request=DropStoredQuery`: DropStoredQuery
- `GET ?request=LockFeature`: LockFeature
- `GET ?request=GetFeatureWithLock`: GetFeatureWithLock
- `GET ?request=Transaction`: Transaction

### Parameters
- `typeNames`: which layer: lbm3:buurtafwijking02, lbm3:buurtafwijking08, lbm3:buurtafwijking12, lbm3:buurtafwijking14, lbm3:buurtafwijking16, lbm3:buurtafwijking18, lbm3:buurtafwijking20, lbm3:buurtafwijking22, lbm3:buurtafwijking24, lbm3:buurtontwikkeling02_24, lbm3:buurtontwikkeling08_24, lbm3:buurtontwikkeling12_24, lbm3:buurtontwikkeling14_24, lbm3:buurtontwikkeling14_24_fys, lbm3:buurtontwikkeling14_24_onv, lbm3:buurtontwikkeling14_24_soc, lbm3:buurtontwikkeling14_24_vrz, lbm3:buurtontwikkeling14_24_won, lbm3:buurtontwikkeling16_24, lbm3:buurtontwikkeling18_24, lbm3:buurtontwikkeling18_24_fys, lbm3:buurtontwikkeling18_24_onv, lbm3:buurtontwikkeling18_24_soc, lbm3:buurtontwikkeling18_24_vrz, lbm3:buurtontwikkeling18_24_won, lbm3:buurtontwikkeling20_24, lbm3:buurtontwikkeling20_24_fys, lbm3:buurtontwikkeling20_24_onv, lbm3:buurtontwikkeling20_24_soc, lbm3:buurtontwikkeling20_24_vrz, lbm3:buurtontwikkeling20_24_won, lbm3:buurtontwikkeling22_24, lbm3:buurtontwikkeling22_24_fys, lbm3:buurtontwikkeling22_24_onv, lbm3:buurtontwikkeling22_24_soc, lbm3:buurtontwikkeling22_24_vrz, lbm3:buurtontwikkeling22_24_won, lbm3:buurtscore02, lbm3:buurtscore08, lbm3:buurtscore12, lbm3:buurtscore14, lbm3:buurtscore14_fys, lbm3:buurtscore14_onv, lbm3:buurtscore14_soc, lbm3:buurtscore14_vrz, lbm3:buurtscore14_won, lbm3:buurtscore16, lbm3:buurtscore18, lbm3:buurtscore18_fys, lbm3:buurtscore18_onv, lbm3:buurtscore18_soc, lbm3:buurtscore18_vrz, lbm3:buurtscore18_won, lbm3:buurtscore20, lbm3:buurtscore20_fys, lbm3:buurtscore20_onv, lbm3:buurtscore20_soc, lbm3:buurtscore20_vrz, lbm3:buurtscore20_won, lbm3:buurtscore22, lbm3:buurtscore22_fys, lbm3:buurtscore22_onv, lbm3:buurtscore22_soc, lbm3:buurtscore22_vrz, lbm3:buurtscore22_won, lbm3:buurtscore24, lbm3:buurtscore24_fys, lbm3:buurtscore24_onv, lbm3:buurtscore24_soc, lbm3:buurtscore24_vrz, lbm3:buurtscore24_won, lbm3:clippedgridafwijking02, lbm3:clippedgridafwijking08, lbm3:clippedgridafwijking12, lbm3:clippedgridafwijking14, lbm3:clippedgridafwijking16, lbm3:clippedgridafwijking18, lbm3:clippedgridafwijking20, lbm3:clippedgridafwijking22, lbm3:clippedgridafwijking24, lbm3:clippedgridontwikkeling02_24, lbm3:clippedgridontwikkeling08_24, lbm3:clippedgridontwikkeling12_24, lbm3:clippedgridontwikkeling14_24, lbm3:clippedgridontwikkeling14_24_fys, lbm3:clippedgridontwikkeling14_24_onv, lbm3:clippedgridontwikkeling14_24_soc, lbm3:clippedgridontwikkeling14_24_vrz, lbm3:clippedgridontwikkeling14_24_won, lbm3:clippedgridontwikkeling16_24, lbm3:clippedgridontwikkeling18_24, lbm3:clippedgridontwikkeling18_24_fys, lbm3:clippedgridontwikkeling18_24_onv, lbm3:clippedgridontwikkeling18_24_soc, lbm3:clippedgridontwikkeling18_24_vrz, lbm3:clippedgridontwikkeling18_24_won, lbm3:clippedgridontwikkeling20_24, lbm3:clippedgridontwikkeling20_24_fys, lbm3:clippedgridontwikkeling20_24_onv, lbm3:clippedgridontwikkeling20_24_soc, lbm3:clippedgridontwikkeling20_24_vrz, lbm3:clippedgridontwikkeling20_24_won, lbm3:clippedgridontwikkeling22_24, lbm3:clippedgridontwikkeling22_24_fys, lbm3:clippedgridontwikkeling22_24_onv, lbm3:clippedgridontwikkeling22_24_soc, lbm3:clippedgridontwikkeling22_24_vrz, lbm3:clippedgridontwikkeling22_24_won, lbm3:clippedgridscore02, lbm3:clippedgridscore08, lbm3:clippedgridscore12, lbm3:clippedgridscore14, lbm3:clippedgridscore14_fys, lbm3:clippedgridscore14_onv, lbm3:clippedgridscore14_soc, lbm3:clippedgridscore14_vrz, lbm3:clippedgridscore14_won, lbm3:clippedgridscore16, lbm3:clippedgridscore18, lbm3:clippedgridscore18_fys, lbm3:clippedgridscore18_onv, lbm3:clippedgridscore18_soc, lbm3:clippedgridscore18_vrz, lbm3:clippedgridscore18_won, lbm3:clippedgridscore20, lbm3:clippedgridscore20_fys, lbm3:clippedgridscore20_onv, lbm3:clippedgridscore20_soc, lbm3:clippedgridscore20_vrz, lbm3:clippedgridscore20_won, lbm3:clippedgridscore22, lbm3:clippedgridscore22_fys, lbm3:clippedgridscore22_onv, lbm3:clippedgridscore22_soc, lbm3:clippedgridscore22_vrz, lbm3:clippedgridscore22_won, lbm3:clippedgridscore24, lbm3:clippedgridscore24_fys, lbm3:clippedgridscore24_onv, lbm3:clippedgridscore24_soc, lbm3:clippedgridscore24_vrz, lbm3:clippedgridscore24_won, lbm3:gemeenteafwijking02, lbm3:gemeenteafwijking08, lbm3:gemeenteafwijking12, lbm3:gemeenteafwijking14, lbm3:gemeenteafwijking16, lbm3:gemeenteafwijking18, lbm3:gemeenteafwijking20, lbm3:gemeenteafwijking22, lbm3:gemeenteafwijking24, lbm3:gemeenteontwikkeling02_24, lbm3:gemeenteontwikkeling08_24, lbm3:gemeenteontwikkeling12_24, lbm3:gemeenteontwikkeling14_24, lbm3:gemeenteontwikkeling14_24_fys, lbm3:gemeenteontwikkeling14_24_onv, lbm3:gemeenteontwikkeling14_24_soc, lbm3:gemeenteontwikkeling14_24_vrz, lbm3:gemeenteontwikkeling14_24_won, lbm3:gemeenteontwikkeling16_24, lbm3:gemeenteontwikkeling18_24, lbm3:gemeenteontwikkeling18_24_fys, lbm3:gemeenteontwikkeling18_24_onv, lbm3:gemeenteontwikkeling18_24_soc, lbm3:gemeenteontwikkeling18_24_vrz, lbm3:gemeenteontwikkeling18_24_won, lbm3:gemeenteontwikkeling20_24, lbm3:gemeenteontwikkeling20_24_fys, lbm3:gemeenteontwikkeling20_24_onv, lbm3:gemeenteontwikkeling20_24_soc, lbm3:gemeenteontwikkeling20_24_vrz, lbm3:gemeenteontwikkeling20_24_won, lbm3:gemeenteontwikkeling22_24, lbm3:gemeenteontwikkeling22_24_fys, lbm3:gemeenteontwikkeling22_24_onv, lbm3:gemeenteontwikkeling22_24_soc, lbm3:gemeenteontwikkeling22_24_vrz, lbm3:gemeenteontwikkeling22_24_won, lbm3:gemeentescore02, lbm3:gemeentescore08, lbm3:gemeentescore12, lbm3:gemeentescore14, lbm3:gemeentescore14_fys, lbm3:gemeentescore14_onv, lbm3:gemeentescore14_soc, lbm3:gemeentescore14_vrz, lbm3:gemeentescore14_won, lbm3:gemeentescore16, lbm3:gemeentescore18, lbm3:gemeentescore18_fys, lbm3:gemeentescore18_onv, lbm3:gemeentescore18_soc, lbm3:gemeentescore18_vrz, lbm3:gemeentescore18_won, lbm3:gemeentescore20, lbm3:gemeentescore20_fys, lbm3:gemeentescore20_onv, lbm3:gemeentescore20_soc, lbm3:gemeentescore20_vrz, lbm3:gemeentescore20_won, lbm3:gemeentescore22, lbm3:gemeentescore22_fys, lbm3:gemeentescore22_onv, lbm3:gemeentescore22_soc, lbm3:gemeentescore22_vrz, lbm3:gemeentescore22_won, lbm3:gemeentescore24, lbm3:gemeentescore24_fys, lbm3:gemeentescore24_onv, lbm3:gemeentescore24_soc, lbm3:gemeentescore24_vrz, lbm3:gemeentescore24_won, lbm3:pc4afwijking02, lbm3:pc4afwijking08, lbm3:pc4afwijking12, lbm3:pc4afwijking14, lbm3:pc4afwijking16, lbm3:pc4afwijking18, lbm3:pc4afwijking20, lbm3:pc4afwijking22, lbm3:pc4afwijking24, lbm3:pc4ontwikkeling02_24, lbm3:pc4ontwikkeling08_24, lbm3:pc4ontwikkeling12_24, lbm3:pc4ontwikkeling14_24, lbm3:pc4ontwikkeling14_24_fys, lbm3:pc4ontwikkeling14_24_onv, lbm3:pc4ontwikkeling14_24_soc, lbm3:pc4ontwikkeling14_24_vrz, lbm3:pc4ontwikkeling14_24_won, lbm3:pc4ontwikkeling16_24, lbm3:pc4ontwikkeling18_24, lbm3:pc4ontwikkeling18_24_fys, lbm3:pc4ontwikkeling18_24_onv, lbm3:pc4ontwikkeling18_24_soc, lbm3:pc4ontwikkeling18_24_vrz, lbm3:pc4ontwikkeling18_24_won, lbm3:pc4ontwikkeling20_24, lbm3:pc4ontwikkeling20_24_fys, lbm3:pc4ontwikkeling20_24_onv, lbm3:pc4ontwikkeling20_24_soc, lbm3:pc4ontwikkeling20_24_vrz, lbm3:pc4ontwikkeling20_24_won, lbm3:pc4ontwikkeling22_24, lbm3:pc4ontwikkeling22_24_fys, lbm3:pc4ontwikkeling22_24_onv, lbm3:pc4ontwikkeling22_24_soc, lbm3:pc4ontwikkeling22_24_vrz, lbm3:pc4ontwikkeling22_24_won, lbm3:pc4score02, lbm3:pc4score08, lbm3:pc4score12, lbm3:pc4score14, lbm3:pc4score14_fys, lbm3:pc4score14_onv, lbm3:pc4score14_soc, lbm3:pc4score14_vrz, lbm3:pc4score14_won, lbm3:pc4score16, lbm3:pc4score18, lbm3:pc4score18_fys, lbm3:pc4score18_onv, lbm3:pc4score18_soc, lbm3:pc4score18_vrz, lbm3:pc4score18_won, lbm3:pc4score20, lbm3:pc4score20_fys, lbm3:pc4score20_onv, lbm3:pc4score20_soc, lbm3:pc4score20_vrz, lbm3:pc4score20_won, lbm3:pc4score22, lbm3:pc4score22_fys, lbm3:pc4score22_onv, lbm3:pc4score22_soc, lbm3:pc4score22_vrz, lbm3:pc4score22_won, lbm3:pc4score24, lbm3:pc4score24_fys, lbm3:pc4score24_onv, lbm3:pc4score24_soc, lbm3:pc4score24_vrz, lbm3:pc4score24_won, lbm3:referentiekaart_buurten_24, lbm3:referentiekaart_gemeenten_24, lbm3:referentiekaart_pc4_24, lbm3:referentiekaart_wijken_24, lbm3:wijkafwijking02, lbm3:wijkafwijking08, lbm3:wijkafwijking12, lbm3:wijkafwijking14, lbm3:wijkafwijking16, lbm3:wijkafwijking18, lbm3:wijkafwijking20, lbm3:wijkafwijking22, lbm3:wijkafwijking24, lbm3:wijkontwikkeling02_24, lbm3:wijkontwikkeling08_24, lbm3:wijkontwikkeling12_24, lbm3:wijkontwikkeling14_24, lbm3:wijkontwikkeling14_24_fys, lbm3:wijkontwikkeling14_24_onv, lbm3:wijkontwikkeling14_24_soc, lbm3:wijkontwikkeling14_24_vrz, lbm3:wijkontwikkeling14_24_won, lbm3:wijkontwikkeling16_24, lbm3:wijkontwikkeling18_24, lbm3:wijkontwikkeling18_24_fys, lbm3:wijkontwikkeling18_24_onv, lbm3:wijkontwikkeling18_24_soc, lbm3:wijkontwikkeling18_24_vrz, lbm3:wijkontwikkeling18_24_won, lbm3:wijkontwikkeling20_24, lbm3:wijkontwikkeling20_24_fys, lbm3:wijkontwikkeling20_24_onv, lbm3:wijkontwikkeling20_24_soc, lbm3:wijkontwikkeling20_24_vrz, lbm3:wijkontwikkeling20_24_won, lbm3:wijkontwikkeling22_24, lbm3:wijkontwikkeling22_24_fys, lbm3:wijkontwikkeling22_24_onv, lbm3:wijkontwikkeling22_24_soc, lbm3:wijkontwikkeling22_24_vrz, lbm3:wijkontwikkeling22_24_won, lbm3:wijkscore02, lbm3:wijkscore08, lbm3:wijkscore12, lbm3:wijkscore14, lbm3:wijkscore14_fys, lbm3:wijkscore14_onv, lbm3:wijkscore14_soc, lbm3:wijkscore14_vrz, lbm3:wijkscore14_won, lbm3:wijkscore16, lbm3:wijkscore18, lbm3:wijkscore18_fys, lbm3:wijkscore18_onv, lbm3:wijkscore18_soc, lbm3:wijkscore18_vrz, lbm3:wijkscore18_won, lbm3:wijkscore20, lbm3:wijkscore20_fys, lbm3:wijkscore20_onv, lbm3:wijkscore20_soc, lbm3:wijkscore20_vrz, lbm3:wijkscore20_won, lbm3:wijkscore22, lbm3:wijkscore22_fys, lbm3:wijkscore22_onv, lbm3:wijkscore22_soc, lbm3:wijkscore22_vrz, lbm3:wijkscore22_won, lbm3:wijkscore24, lbm3:wijkscore24_fys, lbm3:wijkscore24_onv, lbm3:wijkscore24_soc, lbm3:wijkscore24_vrz, lbm3:wijkscore24_won (from the description)
- `outputFormat`: e.g. application/json for GeoJSON (from the description)
- `srsName`: projection, e.g. EPSG:4326 for web maps (default EPSG:28992, RD) (from the description)
- `count / startIndex`: paging (from the description)
- `filter`: FES XML filter on fields or geometry (from the description)
- `bbox`: box in the chosen projection (platform)

### Fields (20)
`fid` int, `geom` geometrie, `id` string, `gemeente` string, `scale` string, `year` int, `lbm` double, `afw` double, `fys` double, `onv` double, `soc` double, `vrz` double, `won` double, `kscore` int, `kafw` int, `kfys` int, `konv` int, `ksoc` int, `kvrz` int, `kwon` int

### Limits and pitfalls
- At most 1,000,000 features per request (CountDefault). (from the description)
- Paging supported: count and startIndex (ImplementsResultPaging). (from the description)
- The 2024 100-metre layer has 382,664 cells. Request it in chunks with count and startIndex, or use the download. (tested)
- Counts in 2024 (resultType=hits): 342 municipalities, 3,245 districts, 12,147 neighbourhoods, 3,859 postcode areas (pc4), 382,664 grid cells. (tested)
- An unknown field in propertyName returns 400 with the list of allowed fields: fid, geom, id, name, gemeente, scale, year, lbm, afw, fys, onv, soc, vrz, won, kscore, kafw, kfys, konv, ksoc, kvrz, kwon. (tested)
- Default in RD (EPSG:28992). With srsName=EPSG:4326 you get longitude and latitude. (tested)
- There is also a WMS for map images: https://geo.leefbaarometer.nl/lbm3/ows?service=WMS&version=1.3.0&request=GetCapabilities (from the description)

### Example
```
https://geo.leefbaarometer.nl/lbm3/ows?request=GetFeature&service=WFS&version=2.0.0&typeNames=lbm3:buurtscore24&outputFormat=application/json&count=2&propertyName=id,name,gemeente,year,lbm,kscore
```

## How to fetch it

### curl
```bash
curl "https://geo.leefbaarometer.nl/lbm3/ows?request=GetFeature&service=WFS&version=2.0.0&typeNames=lbm3:gemeentescore24&outputFormat=csv&propertyName=id,name,lbm,kscore"
```

### python
```python
import requests

r = requests.get("https://geo.leefbaarometer.nl/lbm3/ows", params={
    "request": "GetFeature", "service": "WFS", "version": "2.0.0",
    "typeNames": "lbm3:gemeentescore24", "outputFormat": "application/json",
    "propertyName": "id,name,lbm,kscore"})
gemeenten = sorted((f["properties"] for f in r.json()["features"]), key=lambda p: p["lbm"])
for p in gemeenten[:3] + gemeenten[-3:]:
    print(p["id"], p["name"], round(p["lbm"], 3), "klasse", p["kscore"])
```

## What you can build with it
- [Housing market dashboard for your municipality](https://www.opendataindex.nl/en/bouwen/woningmarkt-dashboard.md): One page per municipality with sale prices, WOZ value, housing stock, construction years, dwelling size and liveability, next to the national average. All from open APIs without a key.


## What is in it: 430 map layers

All Leefbaarometer layers, by level and year, read from the WMS and WFS every night. Each year has the score, the deviation from the national average, the sub-scores and the change since that year.

- Kinds: kaartlaag 430
- With an API call on the dataset page: 430
- Search: https://www.opendataindex.nl/api/catalogus/leefbaarometer?q=… or the MCP function zoek_datasets with herkomst=leefbaarometer
- Every row has its own page: https://www.opendataindex.nl/en/dataset/leefbaarometer/<key>

### Folders
- Buurten (72): 2024 (8), 2022 (13), 2020 (13), 2018 (13), 2016 (3), 2014 (13), 2012 (3), 2008 (3) …
- Gemeenten (72): 2024 (8), 2022 (13), 2020 (13), 2018 (13), 2016 (3), 2014 (13), 2012 (3), 2008 (3) …
- Postcodegebieden (pc4) (72): 2024 (8), 2022 (13), 2020 (13), 2018 (13), 2016 (3), 2014 (13), 2012 (3), 2008 (3) …
- Rastercellen (100 m) (71): 2024 (7), 2022 (13), 2020 (13), 2018 (13), 2016 (3), 2014 (13), 2012 (3), 2008 (3) …
- Schaalafhankelijke kaarten (71): 2024 (7), 2022 (13), 2020 (13), 2018 (13), 2016 (3), 2014 (13), 2012 (3), 2008 (3) …
- Wijken (72): 2024 (8), 2022 (13), 2020 (13), 2018 (13), 2016 (3), 2014 (13), 2012 (3), 2008 (3) …

## Examples with real figures (2)

For each example the finding, the reference date and the call that fetches exactly these figures.

- **Neighbourhoods by liveability (Leefbaarometer): good or very good is the largest part, 51% in 2024** (2024). Table lbm3:buurtscore24. [Example](https://www.opendataindex.nl/en/voorbeeld/leefbaarometer-buurten-klassen)
  - `https://geo.leefbaarometer.nl/lbm3/ows?request=GetFeature&service=WFS&version=2.0.0&typeNames=lbm3:buurtscore24&resultType=hits&cql_filter=kscore%20IN%20(7%2C8)`
- **Liveability score (Leefbaarometer): highest in Vlieland (4.47 points), lowest in Roosendaal (3.97 points)** (2024). Table lbm3:gemeentescore24. [Example](https://www.opendataindex.nl/en/voorbeeld/leefbaarometer-gemeenten)
  - `https://geo.leefbaarometer.nl/lbm3/ows?request=GetFeature&service=WFS&version=2.0.0&typeNames=lbm3:gemeentescore24&outputFormat=application/json&propertyName=id,name,lbm,afw`
