← All sources

Belgium File

Vehicle registrations in Belgium straight from the FPS Mobility and Transport (DIV, the vehicle registration service) — the monthly open-data files behind ACEA's Belgian figure, published on the 2nd of the following month, about three weeks before ACEA. New cars (Whole), private and VAT-registered keepers, vans, lorries and buses, monthly from 2013, with plug-in and non-plug-in hybrids counted separately.

2026-10
Latest period held
39.9%
TTM BEV share (Whole)
6
Variants

Raw source

Go and check the numbers yourself:

FPS Mobility and Transport (FOD Mobiliteit en Vervoer / SPF Mobilité et Transports) — monthly vehicle registrations (open data, CC0) ↗

How the data flows

Origin
Belgian vehicle register (Directie Inschrijving van de Voertuigen / Direction pour l'Immatriculation des Véhicules — DIV), FPS Mobility and Transport
Download

The fetcher asks the file server for the monthly CSVs by name (YYYYMM_Immatriculations-Inschrijvingen.csv), starting three months before the last DIV month in the CSV and stepping forward until the server answers 404 ("not published yet"). There is no directory listing. A run whose target month is already a DIV row in every CSV makes no request; a backfill also reads the 28 MB history file 2013–2024.

Pick the vehicles

Each file is an aggregate — one row per month, new or used vehicle, new or reused plate, keeper type, engine-size band, use group and fuel, with a count. Only new vehicles are counted; the use group decides the variant and, for passenger cars, the keeper type decides Private or Industry.

New Vehicle Flag?
  • Used vehiclein no variant (imports and domestic resales cannot be told apart)
  • New vehicle
    Vehicle use group?
    • Passenger car
      Keeper type?
      • Natural/Legal Person (not VAT-registered)Whole+Private
      • Legal Person (VAT)Whole+Industry
    • Light goods vehicleVans
    • Lorry, Tractor unit for semitrailerHDV
    • BusBuses
    • trailers, caravans, motorcycles, agricultural and special vehicles, motor caravansin no variant
Powertrain

DIV's fuel field ("Fuel Plus") decides the column. Plug-in hybrids and other hybrids have values of their own; DIV does not tell full from mild hybrids.

Fuel Plus?
  • ElectricityBEV
  • Plug-in Hybrid Petrol / Gasoil / LPG / …PHEV
  • Hybrid Petrol / Gasoil / LPGHEV
    full and mild hybrids together
  • PetrolPETROL
    no hybrids
  • GasoilDIESEL
    no hybrids
  • LPG, CNG, LNG, Hydrogen, Other, emptyOTHERS
Checks before writing

The header must be exactly DIV's 14 columns and every row of a monthly file must belong to that month. Unknown use-group, fuel, keeper or vehicle-flag values may not exceed 2% of a month (below that they go to OTHERS with a warning). A Whole month below a quarter of the usual volume is not written. Whole is compared with the ACEA row it replaces and the difference reported (more than 2% is flagged); it is not enforced, because three of ACEA's Belgian rows were wrong.

Render

Each new or changed month re-renders the country. Shares are read from the CSV as column ÷ TOTAL and grouped into three curves. A generalized Weibull S-curve is fitted to the BEV and the ICE share, and the charts, the fitted parameters, the twelve-month totals and the uncertainty bands are rewritten.

Which curve does a CSV column count towards?
  • BEVBEV
  • PHEV or EREV (plug-in hybrids, range extenders)
    Does the source split plug-ins from other hybrids?
    • yesPHEV
    • no — one combined hybrid figure (parked in HEV)ICE
      the PHEV curve is left out, never drawn at zero
  • HEV or MHEV (full and mild hybrids — no plug)ICE
  • petrol, diesel, gas, flex-fuel, othersICE

Definitions & scope

AcquisitionFile — downloaded as a data file (XLSX / Parquet / ODS / zip)
Vehicle scopeRegistrations of new vehicles in the month as DIV booked them — a new car counts whether it got a new plate or a plate transferred from the keeper's previous car (Belgian plates follow the owner). Used-vehicle registrations are not written (see caveats).
HEV (full hybrids)DIV's fuel field has "Plug-in Hybrid Petrol / Gasoil / LPG" for plug-in hybrids (→ PHEV) and "Hybrid Petrol / Gasoil / LPG" for every other hybrid (→ HEV). DIV does not tell full from mild hybrids, so HEV here counts both — about 2.5 times ACEA's full-hybrid figure for Belgium, with PETROL and DIESEL correspondingly lower (they hold no hybrid at all). BEV + PHEV + the rest is unaffected.
BackfillEvery variant is DIV from 2013-01 (the start of the history file). The former ACEA rows — Whole quarterly 2018-01…2022-09 and every ACEA row of Vans/HDV/Buses (yearly 2021–2022, then quarterly) — are kept in data/Belgium_legacy.csv. Whole's ACEA monthly rows 2022-10…2026-08 were replaced; each DIV row's note keeps ACEA's figure where it differed.
Authnone

Variants

Each variant is its own series with its own CSV. Not every variant is charted in the gallery — the CSV is the authoritative record either way.

VariantWhat it countsHeldRaw data
WholeNew passenger cars registered in Belgium (DIV "New vehicle", use group Passenger car — new plate or a transferred plate), monthly from 2013-01. The figures behind ACEA's Belgian series; DIV runs ~0.4% above it.2013-01 – 2026-10
166 rows
data/Belgium.csv
PrivateNew passenger cars whose keeper is not VAT-registered (DIV keeper type "Natural/Legal Person") — in practice private persons. From 2013-01. Private + Industry = Whole.2013-01 – 2026-10
166 rows
data/Belgium_Private.csv
IndustryNew passenger cars whose keeper is a VAT-registered legal person (DIV "Legal Person (VAT)") — companies, leasing and rental fleets; Belgium's large company-car market — plus the few rows without a keeper type (0–63 cars a month), so that Private + Industry = Whole. From 2013-01.2013-01 – 2026-10
166 rows
data/Belgium_Industry.csv
VansNew light goods vehicles (camionnettes, up to 3.5 t). Monthly from 2013-01 (yearly/quarterly ACEA before, kept in data/Belgium_legacy.csv).2013-01 – 2026-10
166 rows
data/Belgium_Vans.csv
HDVNew lorries and tractor units for semi-trailers (over 3.5 t). Monthly from 2013-01 (ACEA before, kept in data/Belgium_legacy.csv).2013-01 – 2026-10
166 rows
data/Belgium_HDV.csv
BusesNew buses and coaches (DIV use group Bus). Monthly from 2013-01 (ACEA before, kept in data/Belgium_legacy.csv).2013-01 – 2026-10
166 rows
data/Belgium_Buses.csv

History we hold

Every bar is the span actually present in our stored CSV — breaks in a bar are real gaps in the series, not rendering. Cadence is shown on the right.

2014201620182020202220242026WholeWhole: 2013-01 → 2026-10monthlyPrivatePrivate: 2013-01 → 2026-10monthlyIndustryIndustry: 2013-01 → 2026-10monthlyVansVans: 2013-01 → 2026-10monthlyHDVHDV: 2013-01 → 2026-10monthlyBusesBuses: 2013-01 → 2026-10monthly

Whole 2013-01–2026-10 (166 rows), Private 2013-01–2026-10 (166 rows), Industry 2013-01–2026-10 (166 rows), Vans 2013-01–2026-10 (166 rows), HDV 2013-01–2026-10 (166 rows), Buses 2013-01–2026-10 (166 rows).

Which fuel columns this source fills

A blank column almost never means "no such cars" — it means this source does not split them out, and those vehicles are counted inside another column. Check the caveats for where they land.

BEVPHEVHEVPETROLDIESELOTHERS
Wholereportedreportedreportedreportedreportedreported
Privatereportedreportedreportedreportedreportedreported
Industryreportedreportedreportedreportedreportedreported
Vansreportedreportedreportedreportedreportedreported
HDVreportedreportedreportedreportedreportedreported
Busesreportedalways zeroreportedreportedreportedreported

reported   column exists but is zero in every row   not reported by this source. Hover a cell for the row count.

Caveats