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-ua-sample
| Field | Type | Description | Constraints | Title |
|---|---|---|---|---|
| country_code | string | ISO 3166-1 alpha-2 -- always UA | Country Code | |
| postal_code | string | Ukrainian postal code (5 digits) | { "pattern": "^\\d{5}$" } | Postal Code |
| place_name | string | Locality/place name (Cyrillic), as GeoNames' postal export records it | Place Name | |
| admin_name1 | string | Oblast / city-with-special-status -- 26/27 covered, resolved via a coordinate-based join against GeoNames' own gazetteer, see ATTRIBUTION.txt | Administrative Name 1 | |
| admin_code1 | string | ISO 3166-2:UA code | Administrative Code 1 | |
| admin_name2 | string | Raion (district) -- 130/136 covered; empty for Kyiv City and Sevastopol City, which are not subdivided into national raions | Administrative Name 2 | |
| admin_code2 | string | GeoNames' own raion code (not an independently verified official code) | Administrative Code 2 | |
| admin_name3 | string | Not populated -- no source reaches a third tier nationally | Administrative Name 3 | |
| admin_code3 | string | Not populated | Administrative Code 3 | |
| latitude | number | GeoNames postal-export latitude (WGS84) | Latitude | |
| longitude | number | GeoNames postal-export longitude (WGS84) | Longitude | |
| accuracy | string | AREA throughout -- coarse city/town-level point, shared across all codes in that place | Accuracy | |
| alternative_city_name | string | Not populated in this release | Alternative City Name |
Download
Download sample CSVAbout
- Last updated
- 2 October 2026
- Total rows
- 100
- Format
- CSV
- File size
- 5.72 kB
About this dataset
Postal Codes Dataset for Ukraine (UA)
This dataset lists Ukrainian postal codes with place names, oblasts and cities with special status (every one except Sevastopol, which has no rows in the source), raions (not every raion is covered) and WGS84 coordinates. GeoNames' postal export is joined to GeoNames' own gazetteer dump for raion coverage, replacing a prior release that shipped every raion field as a duplicate of the oblast name.
Column definitions, row count, size and last-updated date are in datapackage.yaml.
Data Sources
- Postal codes and place names: © GeoNames, postal code export for Ukraine, CC BY 4.0 – commercial use permitted on attribution alone, no share-alike.
- Oblast and raion assignment, coordinates: the GeoNames gazetteer for Ukraine and the GeoNames admin2 codes table (raion names), same publisher and licence.
Changes made to the source data: oblast and raion assigned by matching each postal row's place name against the GeoNames gazetteer (nearest populated place by coordinates when no name matches); admin_code1 set to the ISO 3166-2:UA code with the English oblast name; accuracy set to AREA; coordinates rounded to 5 decimal places.
Not endorsed by, or affiliated with, GeoNames.
Known limitations
- No official bulk postal-code source exists for Ukraine: Ukrposhta's own site offers only a single-address lookup tool, not a downloadable list.
- The postal export carries no raion data (its
admin_name2only repeats the oblast name), so raions come from the gazetteer join above. The gazetteer's primary names are Latin transliterations, so Cyrillic place names are matched against its alternate names. admin_code2(raion) values are GeoNames' own internal raion codes, not an independently verified official code registry. The gazetteer reflects the post-2020 raion structure.- Kyiv City and Sevastopol City have an empty
admin_name2/admin_code2: they are cities with special status and are not subdivided into the national raions. - No
admin_name3/admin_code3: no source reaches a third administrative tier nationally. - Occupied territory: Crimea (UA-43) and Sevastopol City (UA-40) are Ukrainian territory under ISO 3166 and Ukrainian law and are included on that basis. They have been outside actual Ukrainian civil administration since 2014, and parts of Donetsk (UA-14), Luhansk (UA-09), Zaporizhzhia (UA-23) and Kherson (UA-65) oblasts have been under Russian occupation since 2022. Rows in these areas reflect GeoNames' postal data and should not be read as confirmation of current, operating Ukrainian postal service there.
- Sevastopol City (UA-40) has no rows: GeoNames' Ukrainian postal export contains no postal codes there. This is a real gap in the source, disclosed rather than backfilled with an invented code.
Usage
The dataset files are available in CSV format and can be accessed and downloaded using
the links provided in datapackage.yaml.
For other inquiries, contact datahub@datopian.com