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 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.yml to inspect schema and resources
- 2. Download data resources listed in datapackage.yml
- 3. Read README.md for full context
Data Files
Postal Codes Data Resource for Austria, AT
| Field | Description | Title |
|---|---|---|
| country_code | ISO 3166-1 alpha-2 code for the country. | Country Code |
| postal_code | Postal code for the location. | Postal Code |
| place_name | Name of the city, town, or place. | Place Name |
| admin_name1 | Primary administrative division (e.g., state, region). | Administrative Name 1 |
| admin_code1 | Code for the primary administrative division. | Administrative Code 1 |
| admin_name2 | Secondary administrative division (e.g., county, district). | Administrative Name 2 |
| admin_code2 | Code for the secondary administrative division. | Administrative Code 2 |
| admin_name3 | Tertiary administrative division (e.g., municipality, borough). | Administrative Name 3 |
| admin_code3 | Code for the tertiary administrative division. | Administrative Code 3 |
| latitude | Latitude coordinate of the place. | Latitude |
| longitude | Longitude coordinate of the place. | Longitude |
| accuracy | Accuracy level of the latitude and longitude coordinates. | Accuracy |
| alternative_city_name | Alternative name(s) for the city or place. | Alternative City Name |
Download
Download sample CSVAbout
- Last updated
- 30 August 2026
- Total rows
- ...
- Format
- CSV
- File size
- 2.15 MB
About this dataset
Austria (AT) — internal licensing notes
Source research, 2026-08-29 — sellability + reproducibility audit
Clean GO. GeoNames' postal export already carries all three admin tiers for Austria — no gap to fill, no second source needed. This is a stronger starting point than most single-source builds in this catalogue (compare AL/ZA, which needed a gazetteer join or shipped with columns empty).
The source — GeoNames AT
https://download.geonames.org/export/zip/AT.zip # 264 KB, 19,225 rows
Licence CC-BY-4.0, verified against export/zip/readme.txt on
2026-08-29 — Austria carries no per-country caveat (the readme's only
restricted countries are GB, CL, CN, IE, MT, AR, BR).
Verified directly against the raw source file: all three admin tiers are genuinely populated, not empty like South Africa's:
admin_name1/admin_code1— Bundesland (state), 9/9 covered (Burgenland…Wien), GeoNames' own numeric code (01…09).admin_name2— Politischer Bezirk (political district), 94 distinct values.admin_name3/admin_code3— Gemeinde (municipality), 2,117 distinct values, with GeoNames' own 5-digit Gemeindekennziffer asadmin_code3.- 124 of 19,225 rows have empty admin2/admin3 — not investigated further in this pass (likely PO-box/special codes with no municipality), disclose rather than guess if the actual build hits this.
ISO 3166-2:AT derivation verified 2026-08-29 against Wikipedia's
ISO_3166-2:AT page: GeoNames' own Bundesland numbering (01…09) maps
1:1, in the same order, to AT-1…AT-9 (Burgenland=1, Kärnten=2,
Niederösterreich=3, Oberösterreich=4, Salzburg=5, Steiermark=6, Tirol=7,
Vorarlberg=8, Wien=9). Trivial crosswalk, no ambiguity.
A possibly-better official alternative — noted, not pursued this pass
Austria's telecom/postal regulator RTR (Rundfunk und Telekom
Regulierungs-GmbH) publishes the official PLZ-Verzeichnis as genuine open
data (csv/xlsx/xml/json, updated monthly) via data.gv.at
(katalog/dataset/f76ed887-00d6-450f-a158-9f8b1cbbeebf). This is likely a
stronger official byline than GeoNames and worth checking before a real
build — but the licence field on that dataset page did not resolve during
this research pass (empty JS-rendered fetch, and a direct CKAN API call
also returned nothing) and was not independently confirmed. Do not
assume it is open without checking — data.gv.at datasets are usually
CC BY 4.0 (Austria's standard open-government licence) but this specific
one needs its own verification before switching away from the
already-verified GeoNames path.
licence_status (proposed — needs human sign-off before shipping)
{
"channel": "postal-codes-r2",
"source_url": "https://download.geonames.org/export/zip/AT.zip",
"licence_id": "CC-BY-4.0",
"collected_at": "2026-08-29",
"decision": "compatible",
"decided_by": "claude-session-2026-08-29",
"decided_at": "2026-08-29"
}
Proposed tier
B ($49). Single official-quality source (GeoNames) normalised in place — real work (ISO code derivation, admin-tier cleanup) but no second authoritative provider consolidated onto it. Same shape as AT's neighbours in this tier: IT (single-source GeoNames rebuild with ISO code derivation), PH.
Verdict
Build it. No licensing obstacle, no coverage gap — Austria is one of the few countries in this batch where the postal export alone already carries a complete 3-tier admin hierarchy.
Build — 2026-08-30 (local only, not published)
Built via datasets/at/scripts/build_postal_codes_product.py. One thing
not caught in research: 220 (postal_code, place_name) pairs collide (444
rows) — real border localities listed once per municipality they touch
(e.g. "Weissenbach", postal code 9500, spans both Villach Stadt and
Villach Land). Real primary key is (postal_code, place_name, admin_code3),
verified unique across all 19,225 rows.
| value | |
|---|---|
| Final rows | 19,225 |
| Bundeslaender covered | 9/9 |
| Political districts | 94 |
| Municipalities (Gemeindekennziffer) | 2,120 |
| Distinct postal codes | 2,501 |
| Rows with empty admin2/admin3 | 124 (likely PO-box/special codes) |
ISO 3166-2:AT crosswalk used as already verified in research (GeoNames' 01-09 -> AT-1..AT-9, same order).
Frictionless validation: valid: True.
Status: built and validated locally only. Nothing published to R2,
nothing committed to git. datasets/at/README.md and datapackage.yml
updated in place (tier B, premium_source_key: at/at.zip, real
sources/licenses, replacing the "Multiple sources" placeholder).