303.525 datasets geïndexeerd1.419 uitgevers
Open Data IndexDe index van open data over Nederland
Open Data Index›Uitgezochte vraag
Uitgezocht · 3 bronnen · 3 stappen

Is er meer overlast in mijn buurt dan vorig jaar?

De politie telt overlastmeldingen per buurt en per maand, dus deze vraag kun je echt beantwoorden: zet dezelfde maanden van dit jaar en vorig jaar naast elkaar. In heel Nederland kwamen er van januari tot en met september 2026 380.026 meldingen binnen, 7,9% meer dan in dezelfde maanden van 2025. Ruim vier vijfde van die stijging komt van meldingen over verwarde personen (van 126.584 naar 149.519). In Utrecht daalde het totaal juist met 2%, terwijl Lunetten-Zuid en Transwijk-Noord driekwart meer meldingen hadden. Een melding is geen gebeurtenis, kleine buurten schommelen sterk en vóór maart 2021 registreerde de politie anders.

Kort antwoordLandelijk wel: 380.026 overlastmeldingen in januari tot en met september 2026, tegen 352.128 in dezelfde maanden van 2025 (+7,9%). Per buurt verschilt het sterk. Draai het script met je eigen gemeentecode.

Geregistreerde overlast: 462 duizend meldingen per jaar in 2025, 65% meer dan in 2012

Geregistreerde overlast, 2012 – 2025, in duizend meldingen per jaar. Het hoogste punt was 2021 (537).

Bron: CBS, tabel 47024NED (Geregistreerde overlast; soort overlast, wijk en buurt) · opgehaald 18 oktober 2026Open de tabel Los blok

Stap voor stap

  1. 1

    Zoek je buurtcode op (BU…) in de wijk- en buurtkaart.

  2. 2

    Haal de maandcijfers van die buurt op uit de overlasttabel.

  3. 3

    Deel door het aantal inwoners uit de kerncijfers, voor een eerlijke vergelijking.

Koppelen via buurtcode (BU)

Begin met AI

Plak deze prompt in Claude of ChatGPT. Hij noemt de echte endpoints, de koppelsleutel en de valkuilen, zodat de assistent meteen bruikbare code schrijft. Controleer de uitkomst altijd met de bron zelf.

Bouw een kleine webpagina (één HTML-bestand met JavaScript) waarin ik een gemeente kies en per buurt zie of er dit jaar meer of minder overlast is dan vorig jaar.

Data: politiecijfers via CBS, OData v3, geen sleutel, CORS staat open:
https://dataderden.cbs.nl/ODataApi/OData/47024NED/TypedDataSet?$filter=Overlast eq '0.0.0 ' and substringof('BU0344',WijkenEnBuurten) and Perioden eq '2026MM09'&$format=json

Wat je moet weten:
- GeregistreerdeOverlast_1 is het aantal meldingen. Perioden: '2026MM09' is een maand, '2025JJ00' een heel jaar.
- Sleutels hebben een vaste lengte en zijn met spaties aangevuld: '0.0.0 ', 'E33   ', 'GM0344    ', 'NL00      '. Zonder die spaties krijg je een lege lijst en geen foutmelding.
- Soorten (dimensie Overlast): 0.0.0 totaal, E33 verward persoon, E35 jeugd, E38 alcohol of drugs, E41 zwervers, M22 geluidshinder overig.
- Buurtnamen: /WijkenEnBuurten?$filter=Municipality eq 'GM0344'. Gemeenten zijn de regels waarvan de Key met GM begint.
- Maximaal 10.000 rijen per antwoord; volg odata.nextLink.
- Maanden zonder meldingen kunnen ontbreken of met 0 in de data staan: tel een ontbrekende maand als 0.
- Vergelijk januari tot en met de nieuwste maand van dit jaar met dezelfde maanden van vorig jaar, niet de laatste maand met de vorige.
- De politie werkt oude maanden achteraf bij: haal altijd de hele reeks opnieuw op. Vóór maart 2021 is anders geregistreerd (trendbreuk).

Uitkomst: bovenaan het totaal voor de gemeente en de nieuwste maand in de data. Daaronder een sorteerbare tabel per buurt met meldingen vorig jaar, dit jaar en het verschil in procent. Buurten met minder dan 50 meldingen grijs, met 'te klein om te vergelijken'.
Optioneel: meldingen per 1.000 inwoners met AantalInwoners_5 uit CBS 86358NED (kerncijfers 2026), gekoppeld op buurtcode. Buurtcodes kunnen per jaar verschillen; laat buurten zonder koppeling weg en zeg hoeveel het er zijn.

Probeer het zelf

Een klein script dat de kern van de vraag beantwoordt. Nodig: Python 3.10+ en requests. Getest op 2026-10-15; hieronder de echte uitvoer van die proefdraai.

# Overlast per buurt: de eerste negen maanden van 2026 tegen dezelfde maanden van 2025.
# Bron: politie via CBS, tabel 47024NED (dataderden.cbs.nl). Geen sleutel nodig.
import requests

UA = {"User-Agent": "opendataindex-voorbeeld/0.2 (+https://opendataindex.nl)"}
BASIS = "https://dataderden.cbs.nl/ODataApi/OData/47024NED"
GEMEENTE = "0344"   # Utrecht; zoek je eigen code op (GM + 4 cijfers)
MAANDEN = 9         # januari t/m september: de nieuwste maand in de tabel

def rijen(filter_):
    url, uit = f"{BASIS}/TypedDataSet", []
    params = {"$filter": filter_, "$select": "WijkenEnBuurten,Perioden,GeregistreerdeOverlast_1", "$format": "json"}
    while url:   # max 10.000 rijen per antwoord; volg odata.nextLink
        j = requests.get(url, params=params, headers=UA, timeout=60).json()
        uit += j["value"]
        url, params = j.get("odata.nextLink"), None
    return uit

perioden = [f"{j}MM{m:02d}" for j in (2025, 2026) for m in range(1, MAANDEN + 1)]
per = " or ".join(f"Perioden eq '{p}'" for p in perioden)
# Let op: '0.0.0 ' (totaal) heeft een spatie aan het eind, net als de andere sleutels.
data = rijen(f"Overlast eq '0.0.0 ' and substringof('BU{GEMEENTE}',WijkenEnBuurten) and ({per})")
namen = {b["Key"].strip(): b["Title"] for b in requests.get(
    f"{BASIS}/WijkenEnBuurten", params={"$filter": f"Municipality eq 'GM{GEMEENTE}'", "$format": "json"},
    headers=UA, timeout=60).json()["value"]}

som = {}
for r in data:
    jaar = r["Perioden"][:4]
    buurt = r["WijkenEnBuurten"].strip()
    som.setdefault(buurt, {"2025": 0, "2026": 0})[jaar] += r["GeregistreerdeOverlast_1"] or 0

t25 = sum(v["2025"] for v in som.values()); t26 = sum(v["2026"] for v in som.values())
print(f"Gemeente GM{GEMEENTE}, {len(som)} buurten, jan-sep: 2025 {t25:,} -> 2026 {t26:,} meldingen ({(t26 - t25) / t25:+.1%})")
print("\nGrootste stijging (buurten met minstens 50 meldingen in 2025):")
groot = [(b, v) for b, v in som.items() if v["2025"] >= 50]
for b, v in sorted(groot, key=lambda x: x[1]["2026"] / x[1]["2025"], reverse=True)[:10]:
    print(f"  {b}  {namen.get(b, '?')[:28]:28} {v['2025']:>5} -> {v['2026']:>5}  ({(v['2026'] - v['2025']) / v['2025']:+.0%})")
Uitvoer
Gemeente GM0344, 111 buurten, jan-sep: 2025 13,583 -> 2026 13,311 meldingen (-2.0%)

Grootste stijging (buurten met minstens 50 meldingen in 2025):
  BU03440223  2e Daalsebuurt en omgeving      67 ->   124  (+85%)
  BU03440823  Transwijk-Noord                168 ->   295  (+76%)
  BU03440712  Lunetten-Zuid                  168 ->   293  (+74%)
  BU03440415  Tuinwijk-Oost                   73 ->   111  (+52%)
  BU03441013  Vleuten                         83 ->   126  (+52%)
  BU03441032  De Meern-Zuid                   66 ->   100  (+52%)
  BU03440433  Wittevrouwen                    83 ->   125  (+51%)
  BU03440221  Nijenoord, Hoogstraat en omg    56 ->    81  (+45%)
  BU03440931  Leidsche Rijn-Centrum          232 ->   327  (+41%)
  BU03440423  Voordorp en Voorveldsepolder    82 ->   112  (+37%)

De bronnen3

Geregistreerde overlast per buurtUitgewerkt

Politie, via CBSNederland, buurt

Elke maand telt de politie hoeveel meldingen van overlast er binnenkwamen, per buurt en per soort: van verwarde personen en jeugd tot geluidshinder en drugs. CBS publiceert de cijfers als open tabel, met een maand vertraging.

OpenAPIDownloadVeiligheid
Actueel
bijgewerkt gisteren

Kerncijfers wijken en buurten

CBSNederland, buurt

Ruim honderd cijfers per buurt: inwoners naar leeftijd, huishoudens, WOZ-waarde, inkomen, uitkeringen, auto's en afstand tot voorzieningen. Elk jaar een nieuwe tabel.

OpenAPIDownloadBevolkingWonen en ruimteEconomie
Actueel
bijgewerkt gisteren

Wijk- en buurtkaart

CBS en Kadaster, via PDOKNederland, buurt

De officiële grenzen van alle gemeenten, wijken en buurten, als kaartlaag (WFS) en als download. De geometrie die je nodig hebt om buurtcijfers op een kaart te zetten.

OpenKaartlaagDownloadWonen en ruimte
Bereikbaar
jaarlijks

Hoe de bronnen samenkomen

Meer voorbeelden met deze data

Ook in de indexen

Datasets uit data.overheid.nl, het Nationaal Georegister, CBS, Eurostat en de stadsportalen die bij deze vraag passen.

Andere uitgezochte vragen