303,489 datasets indexed1,419 publishers
Open Data IndexThe index of open data about the Netherlands
Open Data Index›Worked-out question
Worked out · 2 sources · 2 steps

How many cars in my municipality are electric?

An exact count is not possible: CBS and RDW publish no open count of electric cars per municipality, and the RDW vehicle register has no addresses. Nationally it is known: on 1 January 2026, 2,023,337 of the 9,415,540 passenger cars had electricity as their main fuel (21.5%, hybrids included, CBS 85237NED), but per province that table only gives the total. Per municipality and neighbourhood, the 2026 key figures split privately owned cars only into 'petrol' and 'other': nationally 22.1% do not run on petrol, from about 15% in Aalten to 35% in Rozendaal. Diesel is included there too, and the 1.15 million cars registered to companies are missing.

Short answerAcross the Netherlands, more than one in five passenger cars runs (partly) on electricity: 21.5% on 1 January 2026, against 3.7% in 2019. For your municipality the closest open figure is the share of privately owned cars not running on petrol; in Utrecht that is 24.4%.

Privately owned cars not running on petrol: highest in Rozendaal (35%), lowest in Aalten and 1 other municipality (15%)

Privately owned cars not running on petrol per municipality, 2026, in percent of privately owned cars. Netherlands as a whole: 22. 342 municipalities with a figure.

Source: CBS, tabel 86358NED (Kerncijfers wijken en buurten 2026), eigen berekening · opgehaald 18 oktober 2026 · selection: PersonenautoSParticulierenOverige_107 / PersonenautoSParticulieren_105 × 100Open the table Single block

Step by step

  1. 1

    The key figures count cars per neighbourhood by fuel.

  2. 2

    For make, model and year: the RDW vehicle register (without addresses).

Join on buurtcode; kenteken

Start with AI

Paste this prompt into Claude or ChatGPT. It names the real endpoints, the join key and the pitfalls, so the assistant writes usable code straight away. Always check the result against the source itself.

Build a web page with a map of Dutch municipalities showing what share of privately owned cars does not run on petrol, with the national growth of electric cars below it.

Municipalities: CBS key figures for districts and neighbourhoods 2026, OData v3, no key, CORS is open:
https://opendata.cbs.nl/ODataApi/OData/86358NED/TypedDataSet?$filter=substringof('GM',WijkenEnBuurten)&$select=WijkenEnBuurten,Gemeentenaam_1,PersonenautoSParticulieren_105,PersonenautoSParticulierenOverige_107&$format=json

What you need to know:
- Share = PersonenautoSParticulierenOverige_107 / PersonenautoSParticulieren_105. 'Other' is diesel, LPG, battery electric, plug-in hybrid, hybrid, hydrogen and the rest. So don't call it 'electric'.
- Field numbers differ per edition (in 86165NED, the 2025 key figures, they end in _104 and _106). Look them up via /DataProperties.
- Keys are padded with spaces to 10 characters: 'GM0344    ', 'NL00      '. Municipality names have trailing spaces too.
- Boundaries: the municipal boundaries of the CBS district and neighbourhood map via PDOK, joined on the GM code.

National: CBS 85237NED with $filter=Bouwjaar eq 'T001378' (all construction years) and the fields Perioden, TotaalNederland_1 and Elektriciteit_18 (as of 1 January, from 2019). Electricity is the main fuel; hybrids are included. Per province this table only has the total number of cars, not the fuel.

What is not possible: counting electric cars per municipality. RDW (opendata.rdw.nl, dataset m9d7-ebf2, fuel in 8ys7-d773, joinable on licence plate) has make and fuel per plate, but no address. Cars registered to companies are not in the key figures.

Output: a map with a legend in percent and a tooltip with name, count and share, the national figure next to it, and below the map a line chart of the national electric share from 2019 to now. Put the definitions as a source line under both charts.

Try it yourself

A small script that answers the core of the question. Needs: Python 3.10+ en requests. Tested on 2026-10-15; below is the real output of that run.

# Hoeveel auto's rijden er elektrisch in mijn gemeente? Wat open data wél kan zeggen:
# (1) landelijk het aandeel elektrisch (incl. hybrides) per 1 januari, CBS 85237NED;
# (2) per gemeente alleen 'benzine' en 'overige brandstof' bij auto's van particulieren, CBS 86358NED.
import requests

UA = {"User-Agent": "opendataindex-voorbeeld/0.2 (+https://opendataindex.nl)"}
CBS = "https://opendata.cbs.nl/ODataApi/OData"
GEMEENTE = "GM0344"   # Utrecht

def rijen(tabel, **params):
    return requests.get(f"{CBS}/{tabel}/TypedDataSet", params={**params, "$format": "json"},
                        headers=UA, timeout=60).json()["value"]

print("Nederland, personenauto's op 1 januari (CBS 85237NED):")
for r in rijen("85237NED", **{"$filter": "Bouwjaar eq 'T001378'",   # totaal alle bouwjaren
                               "$select": "Perioden,TotaalNederland_1,Elektriciteit_18"}):
    tot, el = r["TotaalNederland_1"], r["Elektriciteit_18"]
    print(f"  {r['Perioden'][:4]}: {el:>9,} van {tot:>9,} elektrisch ({el / tot:5.1%})")
print("  (Elektriciteit = hoofdbrandstof; hybrides tellen mee. Per provincie geeft de tabel alleen het totaal.)\n")

# Kerncijfers 2026: veldnamen hebben elk jaar een ander volgnummer (_105, _106, ...): kijk in DataProperties.
# Sleutels zijn aangevuld met spaties tot 10 tekens: 'GM0344    ', 'NL00      '.
velden = "WijkenEnBuurten,Gemeentenaam_1,PersonenautoSParticulieren_105,PersonenautoSParticulierenOverige_107"
for code in ("NL00", GEMEENTE):
    r = rijen("86358NED", **{"$filter": f"WijkenEnBuurten eq '{code:<10}'", "$select": velden})[0]
    tot, ov = r["PersonenautoSParticulieren_105"], r["PersonenautoSParticulierenOverige_107"]
    print(f"{r['Gemeentenaam_1'].strip() or 'Nederland':10} particuliere auto's {tot:>9,}, niet op benzine {ov:>9,} ({ov / tot:5.1%})")
print("\n'Niet op benzine' = diesel, lpg, elektrisch, hybride en de rest samen. CBS en RDW publiceren")
print("geen open telling van elektrische auto's per gemeente; het RDW-register heeft geen adres.")
Output
Nederland, personenauto's op 1 januari (CBS 85237NED):
  2019:   314,311 van 8,442,982 elektrisch ( 3.7%)
  2020:   401,917 van 8,584,391 elektrisch ( 4.7%)
  2021:   526,122 van 8,686,419 elektrisch ( 6.1%)
  2022:   724,986 van 8,827,709 elektrisch ( 8.2%)
  2023:   957,886 van 8,917,107 elektrisch (10.7%)
  2024: 1,254,510 van 9,067,393 elektrisch (13.8%)
  2025: 1,621,141 van 9,247,810 elektrisch (17.5%)
  2026: 2,023,337 van 9,415,540 elektrisch (21.5%)
  (Elektriciteit = hoofdbrandstof; hybrides tellen mee. Per provincie geeft de tabel alleen het totaal.)

Nederland  particuliere auto's 7,924,682, niet op benzine 1,747,986 (22.1%)
Utrecht    particuliere auto's   109,445, niet op benzine    26,699 (24.4%)

'Niet op benzine' = diesel, lpg, elektrisch, hybride en de rest samen. CBS en RDW publiceren
geen open telling van elektrische auto's per gemeente; het RDW-register heeft geen adres.

The sources2

Key figures for districts and neighbourhoods

CBSNetherlands, neighbourhood

Over a hundred figures per neighbourhood: residents by age, households, property values, income, benefits, cars and distance to amenities. A new table every year.

OpenAPIDownloadPopulationHousing and landEconomy
Up to date
updated yesterday

RDW registered vehicles

RDWNetherlands, licence plate

Data on every Dutch licence plate: make, model, fuel, weight and inspection expiry. No personal data.

OpenAPIDownloadTraffic and transport
Up to date
updated 9 hours ago

How the sources fit together

More examples with this data

Also in the indexes

Datasets from data.overheid.nl, the National Georegister, CBS, Eurostat and city portals that fit this question.

Other worked-out questions