Skip to content
Official and academic sources Not verified yet

Permanent resident population by age group and nationality category

bfs-statpop-age-structure

Publisher
OFS/BFS
Access method
pxweb
Table id
px-x-0102010000_101
Licence
BFS terms of use OPEN-BY: "Open use. Must provide the source."
Coverage
Geography national · referenceDay 31 December · from 2010 · to 2025
Gaps
National totals only (the table also has cantons, districts and communes). Both sexes together. Single years of age are summed into broad groups; the single years are not kept.
Used on
WORK, PROB poverty-cost-of-living.old-age-pensions
Known limits
Nationality is a legal status (Swiss citizens, including naturalised persons, and foreign nationals); it says nothing about origin. The permanent resident population includes foreign nationals with a residence permit of at least 12 months and, since 2010, persons in the asylum process with at least 12 months of residence (STATPOP definition). Counts are on 31 December, while the labour force survey (bfs-sake-labour-status) gives yearly averages: compare the two only with that in mind (see the cross-checks on /work-and-support). The old-age ratio uses 65 as a fixed age; the AHV reference age for women was 64 until the AHV 21 reform raises it from 2025.

How current is this data?

Freshness
Up to date

According to its update rhythm, no newer edition is expected yet.

Period covered
2010–2025
Last change of the data
Last check of the source
Update rhythm
Yearly

Ledger note (in English): Yearly, with the definitive STATPOP results in late August (2025 data on 20.08.2026).

Votara checks the source
Every week, and every day from 3 days before to 14 days after an announced publication date

The state is computed each time the site is built; this page shows it as of . Results of the accuracy checks

Transformations

  1. PxWeb POST (json-stat2): Switzerland (8100), permanent resident population (Bevölkerungstyp 1), sex total (-99999), every nationality category (total, Schweiz, Ausland) and every single year of age 0 … "100 Jahre und mehr", every year. Script: scripts/fetch/bfs-statpop-age-structure.ts
  2. Single years summed into age_0_14, age_15_64 and age_65_plus (these three add up to the total), plus age_18_64 (denominator of the invalidity rate in bsv-iv-pensions) and age_20_64 (denominator of the old-age ratio). The fetcher fails unless the single years add up to the published total and Swiss + foreign = total in every year and group.
  3. old_age_ratio = age_65_plus ÷ age_20_64 × 100, two decimals: residents aged 65 and over per 100 residents aged 20 to 64 (the BFS definition of the "Altersquotient"). A ratio of two published counts, computed by Votara.