New passenger-car registrations for Germany from the Kraftfahrt-Bundesamt (KBA).
The KBA (Kraftfahrt-Bundesamt) is Germany's federal motor-transport authority and the official vehicle register. It publishes monthly new-registration counts (Neuzulassungen) broken down by fuel type. Because it's the registry itself, coverage is complete — every registered car, not an association sample.
Germany is not pulled by the ACEA fetcher (which skips it). Its monthly figures come from the KBA press-release '…_merkmale.xlsx' workbook via scripts/fetch_germany.py (workflow fetch-germany.yml); OTHERS is the residual TOTAL − BEV − PHEV − HEV − PETROL − DIESEL (LPG, CNG, hydrogen, fuel-cell and any unlisted 'Sonstige'). Early rows (pre-automation, quarterly/modelled decimals) are left as-is.
Go and check the numbers yourself:
Newest stored month (2026-08) was read from this exact document ↗.
| Acquisition | File — downloaded as a data file (XLSX / Parquet / ODS / zip) |
|---|---|
| Vehicle scope | New passenger-car registrations (Neuzulassungen, class M1) — the KBA is the registry itself, so coverage is every registered car. |
| HEV (full hybrids) | split into its own column |
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.
| Variant | What it counts | Held | Raw data |
|---|---|---|---|
| Whole | New passenger-car registrations (Neuzulassungen) as reported by the KBA. | 2012-01 – 2026-08 176 rows | data/Germany.csv |
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.
Whole 2012-01–2026-08 (176 rows). Some rows additionally carry a time_interval of quarterly; the cadence shown is the spacing the periods actually have.
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.
| BEV | PHEV | HEV | PETROL | DIESEL | OTHERS | |
|---|---|---|---|---|---|---|
| Whole | reported | reported | reported | reported | reported | reported |
reported column exists but is zero in every row not reported by this source. Hover a cell for the row count.