On this subpage we describe the methodology of our analysis. By way of introduction, we present various relevant vehicle characteristics. These characteristics include our possible identification features and the values we calculate. We then go into detail about the different sources and what data we obtain from them. Then we explain the general methodology. Finally, we discuss the different graphs we use, explaining any special features that arise because of the underlying data.

Technical basics

Depending on our data set, we use a combination of brand name, model series name, manufacturer code number (HSN) and model code (TSN) for identification. The HSN is assigned by the KBA and is a four-digit number that uniquely identifies a vehicle manufacturer. However, a manufacturer must have certain significance for the German region in order to receive such an HSN. The TSN is a three-digit alphanumeric designation which, in combination with an HSN, identifies a vehicle model precisely. However, even with this combination, some vehicle characteristics cannot be clearly determined.

The vehicle characteristics we examine include: Number, gross battery capacity, battery material, charging speed and charging connection type. Capacity and charging speed can only be determined with limits, as several models are sometimes combined under one HSN-TSN combination. To reflect this in our data, we calculate a minimum and maximum value in addition to the expected value. Differences can also occur in charging connections and battery material within a vehicle type.

Because charging speed and charging port types differ for AC charging (standard charging) and DC charging (fast charging), we evaluate these values separately. Throughout the analysis, we also consider plug-in hybrids (PHEV) and pure electric cars (BEV) separately to provide a differentiated overview.


We use the vehicle registrations (FZ) of the Federal Motor Transport Authority (KBA) as the basis for our data. The data we use represent the stock and the new registrations of passenger cars. The stock figures are published annually or, to a lesser degree of granularity, quarterly, and the new registrations monthly. In the following, we will only discuss the contents of the FZ that are relevant for us.

In FZ2, the stock on 1 January in Germany and the individual federal states is given with the manufacturer’s name and TSN. This FZ is published annually and sometimes includes large numbers of vehicles under “Other”.

FZ6 also includes the stock on 1 January in Germany. This data set is more accurate than FZ2 and is usually published earlier.

In FZ10, the new registrations within a month are published. Since several HSN-TSN combinations are assigned within a model series, this representation is somewhat less accurate. Comparatively small vehicle groups are also grouped under Other, creating additional uncertainty.

FZ27 summarises the stock figures according to different drive types. These data are published for the first day of each quarter. As there is no distinction between vehicle model or type code number, this data set cannot be used for a detailed analysis.

In addition, FZ1 contains, among other things, the official stock of vehicles with a specific drive type in Germany and individual federal states.

The KBA data is intersected with an internal database which contains the technical parameters for many TSN-HSN combinations.


Before we start our analysis, we initialise all total values to be calculated with 0. Capacity, AC charging speed and DC charging speed each have 3 entries representing maximum value, minimum value and computedvalue. Number has 2 entries in which the official number and the number we detected are stored. This can be used in combination with the true number of vehicles as a quality criterion for analysis. For the other properties, there is one entry per possible value. For example, AC charging port type includes 2 entries because type 1 ports and type 2 ports exist.

In the course of the analysis, we repeatedly add values to our original zero values to determine the total values for all passenger cars in Germany combined.

We start by scanning a vehicle registration table (see above) concerning a date. Entries without sufficient precision or significance, such as “Other” or “Together”, are not evaluated in order to keep maximum and minimum values within reasonable limits.

Important entries are assigned to vehicle characteristics from our database using the identification features. We mostly use HSN and TSN as identifiers. Often, it is not possible to assign unique vehicle characteristics because differences can occur within a model series or vehicle types. When evaluating an entry, we only use those that we can clearly assign to one of the categories electric car (BEV) or plug-in hybrid (PHEV). All other entries have little significance due to the very different vehicle property values resulting from the different categories, lead to unnecessarily high uncertainties and are therefore not evaluated directly.

In the case of substantial entries, we determine the maximum, minimum and average values for gross capacity, AC charging speed and DC charging speed. In doing so, we sometimes have to resort to net capacity instead of gross capacity due to missing information in our vehicle characteristics table. For charging plugs and battery material, we read which types and materials occur and add equal parts of the number to the corresponding total value. We also add the number to the value representing our detected vehicles. This methodology results in a certain degree of uncertainty, since within an HSN-TSN combination, large uncertainties can occur, especially with regard to installed fast-charging capability and battery capacity.

To compensate for the error caused by unrecognised vehicles, the results are scaled with regard to the proportion of recognised vehicles. We store this set of total values together with the location, drive type and relevant date in a table in our database that is specific to this vehicle registration.


Germany and federal states: stock

The FZ2 serves as the basis. The manufacturer names given are translated internally into HSN. The data are given at both national and federal state level.

Germany: stock

These results are based on FZ6. The breakdown within FZ is based on HSN and TSN. Although this data represents only Germany and is available for a smaller time period than FZ2, an analysis of this data is useful because of the precise breakdown.

Germany: New registrations

This data, derived from FZ10, represents the increase in individual values within a month due to new registrations. The breakdown is based on brand and model series. In contrast to other FZs, additional information is included here on how many vehicles in the group are electric cars (BEV) or plug-in hybrids (PHEV). This avoids sorting out groups that belong to more than one drive type. The results of this FZ are the least precise because the subdivision only by model series and brand is comparatively imprecise.

It should be noted that the subdivision between plug-in hybrids and other hybrids has only existed since 2021. This is why we overestimate the number of new plug-in hybrids beforehand. However, errors are also minimised here by scaling at the end of the analysis.

Germany: stock with additional updates

This graph is the result of combining the previous values. The stock values of the respective 1 January (FZ6, or FZ2 before 1 January 2018) are supplemented by the new registrations from FZ10. We only consider new registrations within the year and not deregistrations, as these are not published. Deregistrations are taken into account by the stock figures on 1 January. For our results, this means that all de-registrations in a year erroneously fall on December of that year and uncertainty increases during the year due to the use of the relatively inaccurate FZ10.

Stock by drive type:

This is not a calculation , but simply a visualisation of data that can be read directly from FZ27.