Demo version. Please do not buy: purchases are test only and will not be processed.

Mexico administrative boundaries

32 states and 2,478 municipalities, each with its official code, in GeoJSON, TopoJSON, GeoPackage, Shapefile, layered SVG, CSV and SQL.

Get the free sample
states
32
municipalities
2,478
edition
Outline of Mexico

One of the examples in the package

A layered SVG coloured from a table with a few lines of plain JavaScript: every entity is a path whose id is its official code. The page shows a part of the country: the two levels share the same borders, so they fit without gaps. The package has every entity of every level.

Mexico City: its boroughs, coloured by area, among the neighbouring states.

What is in the package

Levels and identifiers

LevelEntitiesIdentifier
country1MX
states32MX-P-<official code>
municipalities2,478MX-M-<official code>

Every entity has the same identifier in every file: it is the feature id in GeoJSON and TopoJSON, the id of the path in SVG and the id column of the tables.

Formats and scales

Format full 100m 1km 10km light
GeoJSON 96.3 MB 16.0 MB 3.0 MB 47 KB 675 KB
TopoJSON 17.6 MB 3.9 MB 1.3 MB 22 KB 342 KB
Shapefile 73.1 MB 12.3 MB 2.4 MB 36 KB 506 KB
SVG - 15.5 MB 2.8 MB 42 KB 653 KB
  • full: the boundaries as published by the source.
  • 100m: simplified within 100 m and coherent: municipalities and states share exactly the same border vertices.
  • 1km: simplified within 1 km and coherent like 100m, every level: the whole country on a web map.
  • 10km: simplified within 10 km and coherent, country and states only: small maps and maps of many countries.
  • At the borders with the neighbouring countries (United States) the 100m, 1km and 10km boundaries share the same vertices as in their packages, so the maps fit without gaps or overlaps.
  • light: country and states only, each level simplified on its own to a small file.
  • GeoJSON: one FeatureCollection per level, WGS84. TopoJSON: all the levels in one topology, shared borders are shared arcs.
  • GeoPackage: data/geopackage/mx.gpkg (93.6 MB), one file for QGIS and ArcGIS with every level at every scale as a layer (municipalities_100m) with its spatial index, and every table of the package.
  • Shapefile: one per level and scale, WGS84, UTF-8; the columns longer than ten characters are shortened (region, province, abbrev).
  • SVG: one file per level and one with every level as a layer, in a Lambert conformal conic projection; they open as layers in Illustrator, Figma and Inkscape.
  • SQL: a script for PostGIS, one for MySQL 8 and one for SQL Server (16.1 MB each). It creates one table with every entity of every level, its 100m boundary in WGS84 and its indexes.
  • JSON: data/json/tree.json (211 KB), the levels nested and sorted by name, without boundaries: what the select boxes of a form need.

Tables

CSV, UTF-8. Names in EN, IT, ES, FR, DE, NL, PT, besides the official one.

FileRowsContent
tables/country.csv 1 The country: names, population, bounding box, centre and label point.
code, name, population, min_lat, min_lng, max_lat, max_lng, center_lat, center_lng, label_lat, label_lng, id, name_en, name_it, name_es, name_fr, name_de, name_nl, name_pt
tables/provinces.csv 32 The states: official code, abbreviation, the code of the parent, names, area, population, bounding box, centre and label point.
code, name, abbreviation, region_code, area_km2, population, min_lat, min_lng, max_lat, max_lng, center_lat, center_lng, label_lat, label_lng, id, name_en, name_it, name_es, name_fr, name_de, name_nl, name_pt
tables/municipalities.csv 2,478 The municipalities: official code, the codes of the parents, names, area, population, elevation in metres (of the centre, or lowest and highest point, as the official source gives it), bounding box, centre and label point.
code, name, province_code, province_abbreviation, region_code, cadastral_code, chief_town, area_km2, population, elevation, elevation_min, elevation_max, elevation_mean, min_lat, min_lng, max_lat, max_lng, center_lat, center_lng, label_lat, label_lng, id, name_en, name_it, name_es, name_fr, name_de, name_nl, name_pt
tables/names.csv 2,511 Every name an entity is written with (official, each side of a bilingual name, translated), without accents and as a slug: to match a file that has names and no codes.
id, level, name, name_ascii, slug, kind
tables/neighbours.csv 14,628 The entities of the same level that share a border, both ways, with the length of the shared border in km.
level, id, neighbour_id, shared_border_km
tables/history.csv 0 The suppressed municipalities with the one that replaced them, for archives that still have the old codes; no rows where the official source gives no history.
code, name, province_code, replaced_by_code, replaced_by_name
tables/changes.csv 0 What changed from one edition of the package to the next, one row per entity added, removed, renamed, moved or with a new boundary: the same as CHANGELOG.md.
edition, date, level, id, name, change, before, after

Files

All the 113 files of the package, with their size.

ATTRIBUTION.md2 KB
CHANGELOG.md0 KB
LICENSE.md2 KB
README.md11 KB
data/geojson/100m/country.geojson881 KB
data/geojson/100m/municipalities.geojson12.8 MB
data/geojson/100m/provinces.geojson2.4 MB
data/geojson/10km/country.geojson9 KB
data/geojson/10km/provinces.geojson39 KB
data/geojson/1km/country.geojson94 KB
data/geojson/1km/municipalities.geojson2.5 MB
data/geojson/1km/provinces.geojson328 KB
data/geojson/full/municipalities.geojson76.0 MB
data/geojson/full/provinces.geojson20.3 MB
data/geojson/light/country.geojson42 KB
data/geojson/light/provinces.geojson632 KB
data/geopackage/mx.gpkg93.6 MB
data/json/tree.json211 KB
data/shapefile/100m/country.cpg0 KB
data/shapefile/100m/country.dbf0 KB
data/shapefile/100m/country.prj0 KB
data/shapefile/100m/country.shp658 KB
data/shapefile/100m/country.shx0 KB
data/shapefile/100m/municipalities.cpg0 KB
data/shapefile/100m/municipalities.dbf447 KB
data/shapefile/100m/municipalities.prj0 KB
data/shapefile/100m/municipalities.shp9.4 MB
data/shapefile/100m/municipalities.shx19 KB
data/shapefile/100m/provinces.cpg0 KB
data/shapefile/100m/provinces.dbf3 KB
data/shapefile/100m/provinces.prj0 KB
data/shapefile/100m/provinces.shp1.8 MB
data/shapefile/100m/provinces.shx0 KB
data/shapefile/10km/country.cpg0 KB
data/shapefile/10km/country.dbf0 KB
data/shapefile/10km/country.prj0 KB
data/shapefile/10km/country.shp6 KB
data/shapefile/10km/country.shx0 KB
data/shapefile/10km/provinces.cpg0 KB
data/shapefile/10km/provinces.dbf3 KB
data/shapefile/10km/provinces.prj0 KB
data/shapefile/10km/provinces.shp26 KB
data/shapefile/10km/provinces.shx0 KB
data/shapefile/1km/country.cpg0 KB
data/shapefile/1km/country.dbf0 KB
data/shapefile/1km/country.prj0 KB
data/shapefile/1km/country.shp71 KB
data/shapefile/1km/country.shx0 KB
data/shapefile/1km/municipalities.cpg0 KB
data/shapefile/1km/municipalities.dbf447 KB
data/shapefile/1km/municipalities.prj0 KB
data/shapefile/1km/municipalities.shp1.6 MB
data/shapefile/1km/municipalities.shx19 KB
data/shapefile/1km/provinces.cpg0 KB
data/shapefile/1km/provinces.dbf3 KB
data/shapefile/1km/provinces.prj0 KB
data/shapefile/1km/provinces.shp243 KB
data/shapefile/1km/provinces.shx0 KB
data/shapefile/full/municipalities.cpg0 KB
data/shapefile/full/municipalities.dbf447 KB
data/shapefile/full/municipalities.prj0 KB
data/shapefile/full/municipalities.shp57.4 MB
data/shapefile/full/municipalities.shx19 KB
data/shapefile/full/provinces.cpg0 KB
data/shapefile/full/provinces.dbf3 KB
data/shapefile/full/provinces.prj0 KB
data/shapefile/full/provinces.shp15.3 MB
data/shapefile/full/provinces.shx0 KB
data/shapefile/light/country.cpg0 KB
data/shapefile/light/country.dbf0 KB
data/shapefile/light/country.prj0 KB
data/shapefile/light/country.shp32 KB
data/shapefile/light/country.shx0 KB
data/shapefile/light/provinces.cpg0 KB
data/shapefile/light/provinces.dbf3 KB
data/shapefile/light/provinces.prj0 KB
data/shapefile/light/provinces.shp471 KB
data/shapefile/light/provinces.shx0 KB
data/topojson/100m/mx.topojson3.9 MB
data/topojson/10km/mx.topojson22 KB
data/topojson/1km/mx.topojson1.3 MB
data/topojson/full/mx.topojson17.6 MB
data/topojson/light/mx.topojson342 KB
examples/choropleth-svg.html1.2 MB
examples/drill-down-d3.html823 KB
examples/leaflet-geojson.html635 KB
examples/lib/LICENSES.md3 KB
examples/lib/d3.min.js273 KB
examples/lib/leaflet.css14 KB
examples/lib/leaflet.js144 KB
examples/lib/topojson-client.min.js7 KB
examples/point-lookup.html2.4 MB
flags/MX.svg157 KB
sql/mysql.sql16.2 MB
sql/postgis.sql16.1 MB
sql/sqlserver.sql16.2 MB
svg/100m/layers.svg7.9 MB
svg/100m/municipalities.svg6.4 MB
svg/100m/provinces.svg1.2 MB
svg/10km/layers.svg23 KB
svg/10km/provinces.svg19 KB
svg/1km/layers.svg1.4 MB
svg/1km/municipalities.svg1.2 MB
svg/1km/provinces.svg163 KB
svg/light/layers.svg337 KB
svg/light/provinces.svg316 KB
tables/changes.csv0 KB
tables/country.csv0 KB
tables/history.csv0 KB
tables/municipalities.csv582 KB
tables/names.csv193 KB
tables/neighbours.csv617 KB
tables/provinces.csv7 KB

The package of Mexico is not on sale yet. You can try it now: get the free sample, Colima (10 municipalities) with the same files and formats.