German Aircraft Markings
By Emmanuel Gustin

Much of the information here was complied by John Bradley.

July 1933

In July 1933 the Hakenkruez or Swastika was applied on the port side of the aircraft in a Red band with a White circle. The opposite side of the aircraft carried the tri-coloured band. These colours were, top to bottom, Black, White, and Red.

Most aircraft themselves carried civilian registrations that followed a specific set of guidelines for both land and sea-planes. This code/registration system is as follows:


Class  Regist.   Personnel and Weights
A1     D-Y...    1 Person, all up weight 500 Kg
A2     D-E...    1 to 3 Persons, all up weight 1,000 Kg
B1     D-J...    1 to 4 Persons, all up weight between 1,000
                 and 2,5000 Kg
B2     D-O...    1 to 8 Persons, all up weight between 2,500
                 and 5,000 Kg
C      D-U...    Single engined
       D-A       Multi-engined all up weight over 5,000 Kg


Identical to landplanes except for the following:
   A1                     All up weight is 600 Kg
   A2                     All up weight is 2,200 Kg
   B                      All up weight is 5,000 Kg
   C                      All up weight is over 5,500 Kg
NOTE: All though the B1 group is set down for codes commencing with D-J... no example has ever been found, all aircraft in this group have been registered as D-I...

The remaining three letters in the registration system were allocated in alphabetical sequence that started at AAA and ended with ZZZ. Therefore the codes in each class were as follows:

  A1      D-YAAA to D-YZZZ
  A2      D-EAAA to D-EZZZ
  B1      D-IAAA to D-IZZZ
  B2      D-OAAA to D-OZZZ
  C       D-UAAA to D-UZZZ
          D-AAAA to D-AZZZ
D-IAAA to D-IZZZ was normally allocated to experimental military aircraft.

Spring 1936

In the Spring of 1936, a series of changes came into force. These included the application of the Balkenkreuz. On the fuselage it was placed at the mid-point between the wing and tail unit. On the wings they were placed at either end of the registration markings which in truth meant that they were normally placed near the wing tips.

The combination of the military markings (Hakenkreuz and Balkenkreuz) and civilian registrations (D-.... ) lasted for only a brief period. By June of 1936, two additional marking changes came into effect. The Hakenkreuz replaced the tri-coloured tail band on the starboard side of the aircraft, and military codes were issued to replace the registration letters. As it would take some time to fully implement these new orders, some aircraft were seen to carry a combination of the old and new codes.

A third set of markings was also adopted at this same time. The Jagdgeschwadern were give colours to add to their aircraft. These colours were normally applied to the nose of the aircraft. The colours and the units were:

  JG 131    Black
  JG 132    Red
  JG 134    Brown
  JG 232    Green
  JG 233    Blue
  JG 234    Orange
Part of the new marking changes mentioned above included the adoption of a set of military codes. This new system consisted of 5 characters with two to the left and three to the right of the Balkenkreuz.

A breakdown of this system reveals the following means of identifying the aircraft to its unit:

First Numeral:
Second Numeral:
Numerical position of the Geschwader within the Luftkreis [*]
Aircraft code within the Staffel
Third Numeral:
Gruppe within the Geschwader
Fourth Numeral:
Staffel within the Gruppe
[*] Note that because both the land and sea based reconnaissance Staffeln / Gruppen never reached sufficient size to form full Geschwader, the second character in their respective codes were always a zero.

An example would be 32+F25 which was a Do 23 from KG 253.

Unit identification numbers also contained information, as follows:

First number:
Numerical position with the Luftkreis
Second number:
Class of aircraft
Third number:
It should also be noted that the last number of the unit identity was repeated as the first number of the code group (i.e. Hs 123 of St.G. 165 coded 52+J13).

Seven numerals were allocated to identify the various aircraft classes. They are listed below as:

  Numeral      Type of Duty                      Example               
  0            Armed reconnaissance              Ku.Fl.Gr. 206 [*]
               (Sea based)
  1            Short Range Reconnaissance        Aufkl.Gr (H)/114       
               (Land based)
  2            Long Range Reconnaissance         Aufkl.Gr. (F)/125       
               (Land based)
  3            Fighter                           JG 132
  4            Heavy fighter                     JG(s) 141 [**]
  5            Heavy bomber                      KG 154               
  6            Dive bomber                       St.G. 165
  7            Transport
  8            Multi-purpose
[*] Coastal units or Ku.Fl.Gr. acted as independent units containing the normal three Staffeln that are normally associated with any Gruppe. However, the Gruppe identity coincided with the first numeral of the unit identity i.e. I/Ku.Fl.Gr. 106, II/Ku.Fl.Gr. 206, III/Ku.Fl.Gr 306 etc.. The unit identity could also be determined by reading the first three numbers in reverse i.e. an He 59 coded 60+A13 belonged to Ku.Fl.Gr. 106 or a Do 18 coded 60+A42 belonged to Ku.Fl.Gr 406.

[**] The 's' designation stood for schwere which meant heavy. Though seen in documentation, it was not usually seen in more general documentation. Only four heavy fighter units were formed. These being JG 141, JG 142, JG 143, and JG 144. They were all later redesignated as Zerstorergruppen.

Within the training organization, the code system was based on that used by the other units. There was a minor difference that must be noted here. It is shown in the table below.

First Letter:
Always an S to denote a School aircraft
First Numeral:
Second Letter:
Flight identity within the school
Third and Fourth Numeral:
Numerical identity of the aircraft within the entire school
An example includes an He 46 coded S2+A38 from a Flugzeugfuhrerschule.

Each school had flights that were believed to have been termed Staffeln to conform with other Luftwaffe units. These flights were identified by letters.

In addition to the powered aircraft within the Luftwaffe, there were also a number of gliders especially at the A-schules were the ab initio training was carried out. These aircraft carried only the Hakenkreuz on the tail and no Balkenkreuz as these aircraft were engaged on second line duties. A three part code was devised that used the letter D followed by a number in Roman numerals, which identified the Luftkreis. This was followed by a number in the Arabic style which was the aircraft's individual identity. A hyphen was used to separate the three elements of the code.

During this pre-war phase, Geschwader, especially fighters, were broken down into:

  • the Geschwaderstab;
  • I Gruppe consisting of 1, 2, and 3 Staffeln;
  • II Gruppe consisting of 4, 5, and 6 Staffeln;
  • and III Gruppe with 7, 8, and 9 Staffeln.
When the Lehr Geschwader was formed at Griefswald during 1937, it was to develop tactics and handling of various aircraft. It was eventually to expand to 8 Gruppen. The best known were LG 1 and LG2. There status was shown by their codes, L1 and L2 respectively, of which the L indicated that they were owned by a higher authority than the Luftkreis.

In October 1938, with the formation of Luftkreiskommando VII, the Luftkreiskommando consisted of:

  Luftkreiskommando I                Konigsberg
  Luftkreiskommando II               Berlin
  Luftkreiskommando III              Dresden
  Luftkreiskommando IV               Munster
  Luftkreiskommando V                Munchen
  Luftkreiskommando VI               Kiel
  Luftkreiskommando VII              Hanover


Luftwaffe aircraft engaged in second line duties such as training, communications, ambulance, transport etc, used civil registrations. In January 1939 the D prefix was deleted and substituted by the WL for Wehrmacht Luft to show military ownership. An example is WL-A+HAN, an He 59B-2 used in the ambulance role. Note that in this case the + is not a Balkenkreuz but a Red Cross on a circular White background. The exceptiom to this were those prototype aircraft which retained full civilian registration as well as the Hakenkreuz.

The expansion of the Luftwaffe in the years immediately preceeding the war required some administrative changes. In February 1939, the newly formed Luftflotten (Air Fleets) were created. Luftflotte 1 encompassed Northern and Eastern Germany plus East Prussia, Luftflotte 2 took in North-West Germany and Luftflotte 3 covered South-West Germany. In March of 1939, Luftflotte 4 was formed to take in South East Germany, Austria, and Czechoslavakia. Within each of the Luftflotten was a Luftgau (Air District) which took over the duties of the old Luftkreis. These duties consisted in the main of administrative affairs. Operational functions were controlled within the Luftflotten by Fliegerdivision (Air Division). These were later renamed Fliegerkorps (Air Corps).

These new Luftflotten led to a reorganization of the identities of the Luftwaffe units within the Luftflotten. Those within Luftflotte 1 were allocated the numbers 1 to 25; Luftflotte 2 received the numbers 26 to 50; Luftflotte 3 received 51 to 75, and Luftflotte 4 acquired 76 to 99. In addition Gruppen (not Geschwadern) whose identity ended in 0 or 1 were formed in Luftflotte 1; those ending in 2 were formed in Luftflotte 2; those ending in 3 were formed in Luftflotte 3; and those ending in 4 were formed in Luftflotte 4. This perpetuated at least one small aspect of the previous code allocations. Just prior to the beginning of the war, colours were introduced to indicate the Staffeln within each Gruppe. These were White for the first Staffel, Red for the second, and Yellow for the third Staffel. It must be noted that these colours were used to designate the first, second, and third Staffeln within each Gruppe. The actual number of the Staffeln could in fact be a higher numebr than 1, 2, or 3. The table below shows the breakdown of the colours, Staffeln, and Gruppen.

Fighters: Jagdverbande

Gruppe          I        II       III        IV      Colour
Staffel         1        4         7         10      White
Staffel         2        5         8         11      Red
Staffel         3        6         9         12      Yellow

Bomber: Kampfverbande

Stab           Last Letter of Code              Aircraft Letter Colour 
Geschwader     A                                Blue or Green
Gruppe I       B                                Blue or Green
Gruppe II      C                                Blue or Green
Gruppe III     D                                Blue or Green
Gruppe IV      E (F)                            Blue or Green
Gruppe V       F (G)                            Blue or Green

Gruppe         I         II       III        IV      V       
------         -         --       ---        --      -        Staffel
Colour         White     Red      Yellow     Blue    Green    Colour
Staffel        1         4        7          10      13       White
Last Letter    H         M        R          U       X        

Staffel        2         5        8          11      14       Red
Last Letter    K         N        S          V       Y

Staffel        3         6        9          12      15       Yellow
Last Letter    L         P        T          W       Z
If more than 15 Staffeln existed within a unit, they would receive the following letters:

Staffel        16        17       18         19      20
Last Letter    Q         J        O          E       I [*]
[*] NOTE: These Staffeln may or may not have allocated to a VI or even VII Gruppe.

Within the bomber units, the aircraft distribution was usually as follows:

   3 aircraft             Kette          e.g. Stabskette
   9 to 12 aircraft       Staffel
  27 to 36 aircraft       Gruppe         e.g. of three Staffeln
  81 to 108 aircraft      Geschwader     e.g. of three Gruppen       
A system replacing the five digit codes with a four digit system was instituted almost on the eve of the war. These codes are the more familiar Stammkenzeichen consisting of two digits then the Balkenkreuz then the remaining two digits. It must be noted that these codes too were not uniform in their application right away. Some of the older five digit codes are known to have carried until the last months of 1939, well after the Invasion of Poland.

Additional Information

As of May 1936, a Geschwader consisted, usually, of a Geschwader Stab, with four aircraft; three Gruppen Stabs., with three aircraft each for a total of nine; and nine Staffeln with nine aircraft each for a total of 81 aircraft. The total number of aircraft for the entire Geschwader was 94.

A Gruppe consisted of three Staffeln; a Staffel consisted of three Ketten; and a Kette had three aircraft.

Geschwader designations consisted of three digits. The first stood for the unit's number in the Luftkreis. The second stood for the type of unit, and the third digit was the number of the Luftkreis.

Around the time of the Battle of Britain, the breakdown of numbers of aircraft for the fighter organizations were as follows:

    2 aircraft              Rotte
    3 aircraft              Kette       e.g Stadskette
    4 aircraft              Schwarm     e.g. Stabsschwarm
   12 to 14 aircraft        Staffel
   36 to 42 aircraft        Gruppe       e.g of three Staffeln
  108 to 126 aircraft       Geschwader   e.g. of three Gruppen
The breakdown of the Gruppen within the Geschwader and subsequent Staffeln are as indicated:


   1 STAFFEL               4 STAFFEL                    7 SATFFEL
   2 STAFFEL               5 STAFFEL                    8 STAFFEL
   3 STAFFEL               6 STAFFEL                    9 STAFFEL

Tail Bands

In 1941, tail bands were added as part of the markings for aircraft on the Eastern Front and the Mediterranean. A white band round the aft fuselage was carried by aircraft in the Mediterranean and southern Russia; a white band was carried in central and northern Russia and Scandinavia. Often wing tips and cowling were painted in the same color. In mid 1944 a more complicated system of 'Reichsverteidigung' (defense of the reich) tail bands was introduced for fighter units.

   JG=093 : Single white band
   JG=094 : Black, white and black band
   JG=095 : Black and yellow band
   JG  11 : Yellow band
   JG  27 : Green band
   JG  51 : Green, white and green band
   JG  52 : Red and white band
   JG  53 : Black band
   JG  77 : White and Green band
   JG 300 : Blue, white and blue band.
The 'Gruppe' within the Jagdgeschwader was identified by markings within the band; a narrow horizontal stripe was added for the II. Gruppe and a narrow vertical one for the III. Gruppe. The Gruppe markings were placed inside or on top of the bands. According to the book, the total width of the band was 900mm. This was often ignored.

Fighter Markings

German fighter units had their own markings system, which is summarized below. For the non-alphabetic symbols, the following convention is used: '~' indicates the a curved line, resembling an U with down-turned tips. '|' indicates a vertical line, '-' a horizontal line, and '+' a cross. '<' indicates a forward pointing '<', but when this is repeated as '<<', the second symbol was painted inside the first one, often as a triangle. For the circle I use 'o', and for the solid ball '·'

A Jagdgeschwader was made up of three (later four) Gruppen, indicated with Roman numbers. Each Gruppe had three Staffeln, of 12 aircraft, labelled with arabic numbers; these were numbered continously -- 7. Staffel was part of III. Gruppe. The point has the meaning of 'th' in German, so '2.' means '2nd'. The Staff (Stab) of each Gruppe had also four aircraft, and so did the staff of the geschwader. Theoretical strength was thus about 124 aircraft. The aircraft of the officers had special markings, placed in front of the German cross:

   Geschwader Commander:   <<|  or <<-)
   Geschwader Vice-Commander:   <|
   Geschwader first officer:   <-
   Staff Major:    <||
   Geschwader technical officer:   <|
   Gruppe Commander:   <<
   Gruppe vice-commander:   <
   Gruppe technical officer:   <o
   Staffel commander:    1
The Staffel commander, known as 'Staffelkapitän' (but not necessarily having the rank of captain) was sometimes also identified by a small flag on the antenna mast.

The Gruppen were indicated by symbols placed after the cross:

   I. Gruppe      (none)
   II. Gruppe     -
   III. Gruppe    ~ or |
   IV. Gruppe     · or +
While Staff- and Gruppe-markings were in black with white borders, a distinction between Staffeln was made by varying the colors of the symbols and numbers of aircraft:

   1. Staffel, 4. Staffel, 7. Staffel:white
   2. Staffel, 5. Staffel, 8. Staffel:red
   3. Staffel, 6. Staffel, 9. Staffel:yellow
   Additional Staffeln: blue
So an aircraft with a Yellow 5 and a ~ painted on it belonged to the 9. Staffel, part of the III. Gruppe. There were, however, many exceptions on this system, which was complicated and only applied to jagdgeschwader.

Some Examples

Code Band Type Year Unit -------- ---- ------------- ---- --------------- +H[y]L y Fw 189A-1 1943 Nahaufklaringsgruppe 1 +F[w] y Ju 87G-1 1943 10 (Panzer) Staffel, SL 2 <<+O[b] y Hs 123A 1942 4. Staffel, SL 2 1H+F[r]K w He 111H-6 1943 2. Staffel, KG 26 1H+AK He 111 1940 1. Staffel, KG 26 1K Storkampfgruppe Lw Kdo Don 1K+EL He 46E 1943 3. / NsGr 4 20+K2 He 70F-1 1936 3. Staffel, Aufklarungsgr. (F)/123 2Z+OP Bf 110G-4/R1 1944 6. Staffel, NJG 6 3C+GR Bf 110E-1/U1 1941 7. Staffel, NJG 4 3U+Z[r]S w Bf 110E 1942 8. / ZG 26 3W+OD Fokker C.VE 1944 NSGr 11 4D+HH Ju 88A-1 1940 1. Staffel, KG 30 4M+K[w]H Bf 110E-1 1942 Erganzungs-Zerstorergruppe 4R+UR Ju 88G-1 1944 7. Staffel, NJG 2 4X NSGr 7 5+~ Bf 109E-3 1940 III. Gruppe, JG 2 5+~[y] y Bf 109F-2 1941 III. Gruppe, JG 54 5+I Bf 109E-3 1940 9. Staffel, JG 26 52+H[w]7 Hs 123A 1937 7./St.G. 165=20 5B NSGr 10 5D+LK Hs 126B-1 1941 2.(H)/Aufklarungsgruppe 31 5F+RM Do 17P 1940 4. Staffel, (F)/14 5J+GN He 111H-16 1942 5./KG 4 5K+DA Do 17Z-2 1940 Stab, KG 3 5K+GA He 111H-22 1944 KG 3 6A NSGr 12 6G+LR Ju 87B-1 1940 4. Staffel, StG 1 6G+A[g]C y Ju 87B-2 1941 Stab 2, StG 1 6J NSGr 8 7A+NH w Ju 88D 1(F)/121 7R+BK ? Ar 196A 2. Staffel, SAGr 125 7R+E[r]K w Ar 196A-3 1942 2. Staffel, SAGr 125 7R+H[y]L w Bv 138C-1 1943 3. Staffel, SAGr 125 7R+PL ? Bv 138C-1 1943 SAGr 125 8C Storkampfgruppe Lw Kdo Ost 9[y]+ y Bf 109G-6 1944 I. Gruppe, JG 52 9K+F[w]H Me 262A-2a 1945 1. Staffel, KG 51 9W+C[y]L Ju 88G-6b 1944 I. Gruppe, NJG 101 B3+B[y]L w Ju 88A-4 1942 I. Gruppe, KG 54 CB+AF Hs 123A 1942 4./Sch. G. 2 D3+CH y Fw 58C 1943 1./Storkampfgruppe Luftflotte 6 D3 NSGr 2 D5+D[r]S Bf 110G-4d/R3 1943 8. Staffel, NJG 3 E8 NSGr 9 F6+AL w Ju 88A-4 Aufklarungsgruppe 122 F8+E[r]K y Fw 200C-3 1943 2. Staffel, KG 40 F8+GL Fw 200C-3/U1 3. Staffel, KG 40 G2+B[w]H Ju 188D-2 1944 1. Staffel, (F)/124 G[b]+ b Hs 129B-2 1943 4. Staffel, (Panzer) Slachtgescwhader G9+I[r]N y Bf 110C-4B 1940 5. Staffel, Zerstorergeschwader 1 H1+EN ? Fw 189A-1 1941 5. Aufklarungsstaffel (H)/12 L1+DH Bf 110D 1941 1. / NJG 3 L2+E[r]N Hs 123A 1940 5. Staffel, LG 2 M8+GP Bf 110C-3 1940 6. Staffel, Zerstorergeschwader 76 M9 Storkampfgruppe Lfl.4 Q1+J[b]C y Ju 88A-14 1944 Stab II. ZG 1. S2+B[w]C Ju 87B 1941 Stab 11., StG 77 S2+M[w]R Ju 87R 1941 7 / StG 77 S7+EN Ju 87G-1 1944 5. Staffel, 2/StG 3 S7+K[w]H w Ju 87B-2 1942 1 / StG 3 S7+K[r]S w Ju 87D-1/Trop 1942 8 / StG 3 S9+CB Bf 110D 1940 Stab/Erprobungsgruppe 210 S9+C[g]D y Bf 109E-7B 1941 Gruppe-Stab, III. Gruppe, SKG 210 T6+AN Ju 87B-2 1940 5. Staffel, StG 2 T6+B[y] y Ju 87D-1 1942 III. Gruppe, StG 3 T6+H[y]L Ju 87B-2 1940 3 / StG 2 U5+D[y]L Do 17Z-2 1940 3. Staffel, KG 2 U5+H[y]T Do 17Z-2 1940 9. Staffel, KG 2 U5+N[y]T Do 216E-2/R19 1942 9. Staffel, KG 2 U8+JN Bf 110C-1 1940 5. Staffel, Zerstorergeschwader 26 U9+JC Go 145A 1944 2. / NSGr 3 V4+EU He 111H-3 1940 KG 1 V7+1E[w] Fw 189A-2 1943 1. Staffel, AGr 32 V8 NSGr 1 G1+AN He 111P-2 1940 5. Staffel, KG 55
  AGr     : Aufklaringsgruppe        
  ErpG    : Erprobungsgruppe         
  JG      : Jagdgeschwader           
  KG      : Kampfgeschwader          
  NJG     : Nachtjagdgeschwader
  NSGr    : Nachtslachtgeschwader
  SAGr    : See Aufklaringsgruppe
  Sch. G. : Slachtgruppe
  StG     : Stukageschwader
  ZG      : Zerstorergeschwader