Commune changes since 2000 (mergers and number changes)
bfs-commune-mutations
- Publisher
- OFS/BFS
- Access method
api- Table id
agvchapp mutations- Licence
- opendata.swiss terms of use "terms_open": "Open use."
- Coverage
- Geography communes · from 2000-01-01 · to 2026-01-01
- Gaps
- Pure territory exchanges between communes are excluded (includeTerritoryExchange=false). Renames and district changes that keep the BFS number are not in the file.
- Used on
- STORY-09, AGORA-20, AGORA-22
- Known limits
- A merged commune's data cannot be split back; population or vacancy series for the new commune are only comparable over time if the source publishes them on a fixed commune state (STATPOP does, see bfs-commune-population).
- Verification
- verification date: 2026-10-31 · method: Reconciled the commune set of STATPOP (stats.swiss DF_STATPOP_NATCAT_SEX_AGE_GEO, commune state 2025, 2115 communes) with the register on 31.10.2026 (2110) using the six mutations of 1.1.2026 in this file — the result is the identical set of BFS numbers, which also equals the stats.swiss codelist CL_KT_BEZ_GDE_SNAP_2026 (independent BFS publication). · checkedValue: 2026-01-01: 2016 Fétigny + 2027 Ménières → 2056 Fétigny-Ménières; 2278 Ulmiz → 2262 Gurmels; 2520 Halten + 2529 Oekingen → 2525 Kriegstetten; 4122 Villnachern → 4095 Brugg; 700 Moutier → 6831 Moutier · checkedAgainst: https://disseminate.stats.swiss/rest/codelist/CH1/CL_KT_BEZ_GDE_SNAP_2026__NUTS22021100/1.0.0
- Processed file
- data/processed/bfs-commune-mutations.csv
How current is this data?
- Freshness
- Checks failing
The automatic checks could not read the source several times in a row, or have not succeeded for longer than planned. The data shown dates from the last successful check.
- Period covered
- 01.01.2000–01.01.2026
- Last change of the data
- Last check of the source
- Update rhythm
- Continuous
Ledger note (in English): Continuous; most mutations take effect on 1 January and are announced in the preceding months.
- Votara checks the source
- Every day
The state is computed each time the site is built; this page shows it as of . Results of the accuracy checks
Transformations
- GET /api/communes/mutations (CSV). Step codes from the eCH-0071 code table in BFS "Historisiertes Gemeindeverzeichnis der Schweiz — Erläuterungen und Anwendungen" (2021, https://dam-api.bfs.admin.ch/hub/api/dam/assets/18484929/master): 21 Neugründung, 23 Namensänderung, 24 Neue Bezirks-/Kantonszuteilung, 26 Gebietsänderung, 27 Formale Neunummerierung, 29 Aufhebung. Script: scripts/fetch/bfs-commune-mutations.ts
- change = merged — the old commune was abolished (initial step 29) and went into new_bfs_number (terminal step 21 = new commune from a fusion, 26 = incorporation into an existing commune). The commune that receives another one keeps no row of its own unless its number changed.
- change = renumbered — the commune continued under a different BFS number (e.g. change of canton, step 24, Moutier BE 700 → JU 6831 on 1.1.2026; incorporations that produced a new number, e.g. Andelfingen 30 → 291 on 1.1.2023).
- Dates converted from DD.MM.YYYY to ISO; names as published at the time of the mutation. Chains (A → B → C) are kept as separate rows; resolve them transitively to reach today's commune.