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.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-it-sample
| Field | Type | Description | Constraints | Title |
|---|---|---|---|---|
| country_code | string | ISO 3166-1 alpha-2 country code — always IT | { "pattern": "^IT$", "required": true } | Country Code |
| postal_code | string | 5-digit Italian postal code (CAP) | { "pattern": "^\\d{5}$", "required": true } | Postal Code |
| place_name | string | Comune or locality name as supplied by the source | Place Name | |
| admin_name1 | string | Region name (Regione), as spelled by the source — see README | Administrative Name 1 | |
| admin_code1 | string | Official ISO 3166-2:IT region code, prefix stripped — derived from the region name, not taken from the source's own field | { "pattern": "^\\d{2}$" } | Administrative Code 1 |
| admin_name2 | string | Province name (Provincia) | Administrative Name 2 | |
| admin_code2 | string | 2-letter province sigla (e.g. MI, RM, NA) | { "pattern": "^[A-Z]{2}$" } | Administrative Code 2 |
| admin_name3 | string | Not provided by this source — always blank | Administrative Name 3 | |
| admin_code3 | string | Not provided by this source — always blank | Administrative Code 3 | |
| latitude | number | Latitude, decimal degrees (WGS84) | Latitude | |
| longitude | number | Longitude, decimal degrees (WGS84) | Longitude | |
| accuracy | string | GeoNames accuracy of latitude/longitude. GeoNames documents 1=estimated, 4=geonameid, 6=centroid of addresses or shape; other values (e.g. 3) occur upstream without documentation. Empty where GeoNames gives none. | Accuracy | |
| alternative_city_name | string | Alternative or historic name for the place where known | Alternative City Name |
Download
Download sample CSVAbout
- Last updated
- 6 October 2026
- Total rows
- 100
- Format
- CSV
- File size
- 6.96 kB
About this dataset
Postal Codes Dataset for Italy (IT)
This dataset lists Italian postal codes (CAP, Codice di Avviamento Postale) with place names, regions, provinces and coordinates, across every region and province.
Column definitions, row count, size and last-updated date are in datapackage.yaml.
Data Sources
- Postal codes, place names, provinces and coordinates: © GeoNames postal code export for Italy, CC BY 4.0.
Changes made to the source data: region codes (admin_code1) derived from the region name against the ISO 3166-2:IT code table, replacing the source's own internal numbering; rows sorted by region, province, postal code and place name.
Not endorsed by, or affiliated with, GeoNames.
Known limitations
- CAP is not one-to-one with place: large cities (Roma, Milano, …) have many CAPs and many comuni/localities share a single CAP. The primary key is (
postal_code,place_name), neverpostal_codealone. - Region names are kept exactly as the source spells them (e.g. "Abruzzi" rather than "Abruzzo", "Friuli-Venezia Giulia" with a hyphen); only the code was corrected.
- There is no third administrative tier, and
alternative_city_nameis empty.
Usage
The dataset files are available in CSV format and can be accessed and downloaded using
the links provided in datapackage.yaml. Read postal_code as text, never as a number:
Italian codes can start with zero (00118).
For other inquiries, contact datahub@datopian.com