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

France administrative boundaries

18 regions, 101 departments and 34,875 communes, each with its official code, in GeoJSON, TopoJSON, GeoPackage, Shapefile, layered SVG, CSV and SQL.

The package also includes Monaco and Andorra, in a folder of its own with the same files: it is not sold on its own.

Get the free sample
regions
18
departments
101
communes
34,875
edition
Outline of France

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.

Île-de-France: the communes of Yvelines, coloured by area, among the other departments.

What is in the package

Levels and identifiers

LevelEntitiesIdentifier
country1FR
regions18FR-R-<official code>
departments101FR-P-<official code>
communes34,875FR-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. The history lists 4,240 suppressed communes with their successor.

Formats and scales

Format full 100m 1km 10km light
GeoJSON 656.8 MB 47.4 MB 14.1 MB 140 KB 805 KB
TopoJSON 120.1 MB 19.3 MB 11.5 MB 64 KB 466 KB
Shapefile 552.3 MB 39.7 MB 11.6 MB 121 KB 675 KB
SVG - 50.2 MB 12.9 MB 98 KB 848 KB
  • full: the boundaries as published by the source.
  • 100m: simplified within 100 m and coherent: communes, departments and regions 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, regions and departments only: small maps and maps of many countries.
  • At the borders with the neighbouring countries (Belgium, Germany, Italy, Luxembourg, Spain and Switzerland) the 100m, 1km and 10km boundaries share the same vertices as in their packages, so the maps fit without gaps or overlaps.
  • light: country, regions and departments 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/fr.gpkg (660.3 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 (48.0 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 (2.7 MB), 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/regions.csv 18 The regions: official code, names, area, population, bounding box, centre and label point.
code, name, 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/provinces.csv 101 The departments: 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 34,875 The communes: 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/codes.csv 34,995 Every entity in other datasets, as Wikidata declares it: the Wikidata item, ISO 3166-2, GeoNames and the OpenStreetMap relation.
id, level, code, wikidata, iso_3166_2, geonames, osm_relation
tables/names.csv 36,550 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 208,046 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 4,240 The suppressed communes 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 149 files of the package, with their size.

ATTRIBUTION.md2 KB
CHANGELOG.md0 KB
LICENSE.md2 KB
README.md15 KB
data/geojson/100m/country.geojson697 KB
data/geojson/100m/municipalities.geojson42.5 MB
data/geojson/100m/provinces.geojson3.0 MB
data/geojson/100m/regions.geojson1.4 MB
data/geojson/10km/country.geojson30 KB
data/geojson/10km/provinces.geojson71 KB
data/geojson/10km/regions.geojson40 KB
data/geojson/1km/country.geojson98 KB
data/geojson/1km/municipalities.geojson13.3 MB
data/geojson/1km/provinces.geojson480 KB
data/geojson/1km/regions.geojson206 KB
data/geojson/full/municipalities.geojson508.9 MB
data/geojson/full/provinces.geojson84.8 MB
data/geojson/full/regions.geojson63.1 MB
data/geojson/light/country.geojson38 KB
data/geojson/light/provinces.geojson578 KB
data/geojson/light/regions.geojson189 KB
data/geopackage/fr.gpkg660.3 MB
data/json/tree.json2.7 MB
data/shapefile/100m/country.cpg0 KB
data/shapefile/100m/country.dbf0 KB
data/shapefile/100m/country.prj0 KB
data/shapefile/100m/country.shp575 KB
data/shapefile/100m/country.shx0 KB
data/shapefile/100m/municipalities.cpg0 KB
data/shapefile/100m/municipalities.dbf4.1 MB
data/shapefile/100m/municipalities.prj0 KB
data/shapefile/100m/municipalities.shp31.2 MB
data/shapefile/100m/municipalities.shx273 KB
data/shapefile/100m/provinces.cpg0 KB
data/shapefile/100m/provinces.dbf8 KB
data/shapefile/100m/provinces.prj0 KB
data/shapefile/100m/provinces.shp2.5 MB
data/shapefile/100m/provinces.shx1 KB
data/shapefile/100m/regions.cpg0 KB
data/shapefile/100m/regions.dbf1 KB
data/shapefile/100m/regions.prj0 KB
data/shapefile/100m/regions.shp1.1 MB
data/shapefile/100m/regions.shx0 KB
data/shapefile/10km/country.cpg0 KB
data/shapefile/10km/country.dbf0 KB
data/shapefile/10km/country.prj0 KB
data/shapefile/10km/country.shp27 KB
data/shapefile/10km/country.shx0 KB
data/shapefile/10km/provinces.cpg0 KB
data/shapefile/10km/provinces.dbf8 KB
data/shapefile/10km/provinces.prj0 KB
data/shapefile/10km/provinces.shp48 KB
data/shapefile/10km/provinces.shx1 KB
data/shapefile/10km/regions.cpg0 KB
data/shapefile/10km/regions.dbf1 KB
data/shapefile/10km/regions.prj0 KB
data/shapefile/10km/regions.shp34 KB
data/shapefile/10km/regions.shx0 KB
data/shapefile/1km/country.cpg0 KB
data/shapefile/1km/country.dbf0 KB
data/shapefile/1km/country.prj0 KB
data/shapefile/1km/country.shp83 KB
data/shapefile/1km/country.shx0 KB
data/shapefile/1km/municipalities.cpg0 KB
data/shapefile/1km/municipalities.dbf4.1 MB
data/shapefile/1km/municipalities.prj0 KB
data/shapefile/1km/municipalities.shp6.6 MB
data/shapefile/1km/municipalities.shx273 KB
data/shapefile/1km/provinces.cpg0 KB
data/shapefile/1km/provinces.dbf8 KB
data/shapefile/1km/provinces.prj0 KB
data/shapefile/1km/provinces.shp394 KB
data/shapefile/1km/provinces.shx1 KB
data/shapefile/1km/regions.cpg0 KB
data/shapefile/1km/regions.dbf1 KB
data/shapefile/1km/regions.prj0 KB
data/shapefile/1km/regions.shp174 KB
data/shapefile/1km/regions.shx0 KB
data/shapefile/full/municipalities.cpg0 KB
data/shapefile/full/municipalities.dbf4.1 MB
data/shapefile/full/municipalities.prj0 KB
data/shapefile/full/municipalities.shp423.8 MB
data/shapefile/full/municipalities.shx273 KB
data/shapefile/full/provinces.cpg0 KB
data/shapefile/full/provinces.dbf8 KB
data/shapefile/full/provinces.prj0 KB
data/shapefile/full/provinces.shp71.2 MB
data/shapefile/full/provinces.shx1 KB
data/shapefile/full/regions.cpg0 KB
data/shapefile/full/regions.dbf1 KB
data/shapefile/full/regions.prj0 KB
data/shapefile/full/regions.shp52.9 MB
data/shapefile/full/regions.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.dbf8 KB
data/shapefile/light/provinces.prj0 KB
data/shapefile/light/provinces.shp474 KB
data/shapefile/light/provinces.shx1 KB
data/shapefile/light/regions.cpg0 KB
data/shapefile/light/regions.dbf1 KB
data/shapefile/light/regions.prj0 KB
data/shapefile/light/regions.shp158 KB
data/shapefile/light/regions.shx0 KB
data/topojson/100m/fr.topojson19.3 MB
data/topojson/10km/fr.topojson64 KB
data/topojson/1km/fr.topojson11.5 MB
data/topojson/full/fr.topojson120.1 MB
data/topojson/light/fr.topojson466 KB
examples/choropleth-svg.html1.7 MB
examples/drill-down-d3.html1.0 MB
examples/leaflet-geojson.html580 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.html3.0 MB
flags/FR.svg0 KB
sql/mysql.sql48.8 MB
sql/postgis.sql48.0 MB
sql/sqlserver.sql48.8 MB
svg/100m/layers.svg25.3 MB
svg/100m/municipalities.svg22.5 MB
svg/100m/provinces.svg1.6 MB
svg/100m/regions.svg763 KB
svg/10km/layers.svg52 KB
svg/10km/provinces.svg31 KB
svg/10km/regions.svg14 KB
svg/1km/layers.svg6.5 MB
svg/1km/municipalities.svg6.1 MB
svg/1km/provinces.svg258 KB
svg/1km/regions.svg106 KB
svg/light/layers.svg434 KB
svg/light/provinces.svg315 KB
svg/light/regions.svg99 KB
tables/changes.csv0 KB
tables/codes.csv1.9 MB
tables/country.csv0 KB
tables/history.csv182 KB
tables/municipalities.csv7.2 MB
tables/names.csv2.6 MB
tables/neighbours.csv8.5 MB
tables/provinces.csv19 KB
tables/regions.csv4 KB

The package of France is not on sale yet. You can try it now: get the free sample, Corsica (2 departments and 360 communes) with the same files and formats.