Part of a Data Solution
- Explore →
Postal Codes Solution
Every worldwide postal-code dataset in one bundle — the ultimate global reference for precise postal codes.
Premium
You're viewing a free sample
Get the complete dataset — all rows and files — delivered instantly after checkout, with lifetime access to the latest version.
- Secure checkout via Stripe
- Instant download after payment
- Lifetime access to the latest version
- Creative Commons Attribution 4.0 International license
API Access
Access dataset files directly from scripts, code, or AI agents.
Browse dataset files
API Access
Access dataset files directly from scripts, code, or AI agents.
Each file has a stable URL (r-link) that you can use directly in scripts, apps, or AI agents. These URLs are permanent and safe to hardcode.
Start with these files — they give you everything you need to understand and access the dataset.
- 1. Fetch datapackage.yaml to inspect schema and resources
- 2. Download data resources listed in datapackage.yaml
- 3. Read README.md for full context
Data Files
postal-codes-dk-sample
| Field | Type | Description | Constraints | Title |
|---|---|---|---|---|
| country_code | string | ISO 3166-1 alpha-2 -- always DK | Country Code | |
| postal_code | string | Danish postal code (4 digits) | { "pattern": "^\\d{4}$" } | Postal Code |
| place_name | string | Postdistrikt (postal district) name, as maintained by DAWA/PostNord | Place Name | |
| admin_name1 | string | Region -- all 5 covered | Administrative Name 1 | |
| admin_code1 | string | ISO 3166-2:DK code, country prefix stripped (e.g. 84 for DK-84) | Administrative Code 1 | |
| admin_name2 | string | Kommune (municipality) -- 99/99 covered, including Christianso; 8 postal codes deliberately re-pointed from the source's first-listed municipality to ensure full coverage, see ATTRIBUTION.txt | Administrative Name 2 | |
| admin_code2 | string | DAWA kommune kode (4-digit) -- no ISO code exists at this tier for Denmark | Administrative Code 2 | |
| admin_name3 | string | Not populated -- Postdistrikt (place_name) is not a distinct third administrative tier in Denmark's own structure | Administrative Name 3 | |
| admin_code3 | string | Not populated | Administrative Code 3 | |
| latitude | number | DAWA visueltcenter (visual center of the postal code's polygon), WGS84, 5dp | Latitude | |
| longitude | number | DAWA visueltcenter, WGS84, 5dp | Longitude | |
| accuracy | string | AREA throughout -- per-code polygon visual center, not a street/address-level point | Accuracy | |
| alternative_city_name | string | Not populated in this release -- DAWA carries no alternate-name field | Alternative City Name |
Download
Download sample CSVAbout
- Last updated
- 12 October 2026
- Total rows
- 100
- Format
- CSV
- File size
- 8.64 kB
- Sources
- DAWA / Dataforsyningen (Klimadatastyrelsen) -- Danish postal districts and municipalities, snapshot of 2026-08-29 (DAWA has since been retired)
- Datafordeler DAR (Danmarks Adresseregister) -- live postal code and name check
- Statistics Denmark, StatBank table FOLK1A -- regions and municipalities (CC BY 4.0 equivalent)
About this dataset
Postal Codes Dataset for Denmark (DK)
This dataset contains Danish postal codes with their postal district, region and municipality (kommune), and a representative coordinate per postal code. It covers every region and every municipality, including Christiansø.
Column definitions, row count, size and last-updated date are in datapackage.yaml.
Data Sources
- Postal districts and municipality admin data: © Klimadatastyrelsen (the Danish government data agency, earlier named SDFI), from the national address and geography registers served by DAWA / Dataforsyningen and Datafordeler, CC BY 4.0. Postal codes originate from PostNord/PostDanmark.
- Regions and municipalities (names and codes): Source: Statistics Denmark, StatBank.dk/folk1a, used under Statistics Denmark's terms (equivalent to CC BY 4.0).
- Coordinates: the visual center of each postal code's polygon in the same register.
Changes made to the source data: where a postal code spans more than one municipality in the source register, the first-listed municipality is used for admin_name2/admin_code2, except for a few codes that were deliberately re-pointed to a different listed municipality so that every municipality is represented by at least one row (Christiansø, Glostrup, Herlev, Hvidovre, Mariagerfjord, Rødovre and Sorø never appear first in the source ordering for any code).
Not endorsed by, or affiliated with, Klimadatastyrelsen or PostNord.
Known limitations
- Many postal codes span more than one municipality in the source register; each row carries only one of them.
admin_name3,admin_code3andalternative_city_nameare not populated.- Coordinates are a per-code visual center point, not a street or address-level location.
Usage
The dataset files are available in CSV format and can be accessed and downloaded using
the links provided in datapackage.yaml.
postal_code and admin_code2 must be read as text (dtype=str) – a naive pd.read_csv() can otherwise strip leading zeros.
For other inquiries, contact datahub@datopian.com