Germany

    Germany Postal Code Format Explained

    The German Postleitzahl explained: five digits, leading zeros, how regions are grouped, valid format examples and mistakes to avoid on forms.

    Updated 14 October 2026 · 3 min read

    A German postal code, the Postleitzahl or PLZ, is exactly five digits long and contains only numbers. There are no letters, no spaces inside the code and no separating dash. It is written directly before the town name.

    Structure

    The first digit groups the country into large postal regions. The following digits narrow the code down to a sorting area, a town or a district of a larger city. The code is built for mail sorting by the postal operator and does not follow state boundaries exactly, so a PLZ can sit close to a border between federal states and does not always match the administrative area people expect.

    Small municipalities usually share one code. Larger cities are divided into many codes, and neighbouring codes can belong to adjacent parts of the same city. Large organisations with high mail volumes can have a code of their own, which is why a code sometimes belongs to a single company or building.

    Examples of valid format

    These are generic values that illustrate shape and are not tied to a particular address:

    • 12345
    • 01234
    • 98765

    A value with four digits, six digits, letters or a hyphen is not a valid German code.

    Leading zeros

    Some German postal codes begin with 0. This is a legitimate part of the code. Software that stores the code as an integer will drop the zero and produce a four-digit value. Always store and transmit it as a text field with a fixed length of five.

    Common mistakes

    • Treating the code as a number, which removes leading zeros.
    • Writing the country letter D before the code, as in D-12345. This was once used on international mail but is not part of the code itself.
    • Putting the town before the code, which follows the English order and not the German one.
    • Using an old four-digit code from before the current system.
    • Assuming one code means one town. Cities have many and some towns share one.

    Validation tips

    A reasonable form check is five characters, all digits. Beyond that, whether a code actually exists for a given town needs a lookup against the postal operator's directory, as explained in how to find a German postal code.

    How UPCS relates

    A UPCS code such as DE-XXXX-XXXX (placeholder) is not a PLZ. It is a separate code for a 3 m x 3 m cell and can be stored next to the PLZ when the exact point matters. Return to the Germany overview or read how German addresses are written.

    Frequently asked questions

    Can a German postal code start with zero?

    Yes. Some codes begin with 0, so they must be stored as text. Storing them as numbers drops the leading zero and breaks the code.

    Is the German postal code written before or after the city?

    Before. The five-digit code is written first, followed by the town name, for example 12345 Beispielstadt.