At a glance
- 2,078 communes ingested across all 26 cantons
- 15 cantons sourced from live machine-readable sources (CSV/JSON/XLS/PDF)
- 11 cantons partly curated from cantonal authority publications
- 26 of 26 cantonal scales transcribed from ESTV Kantonsblätter 2026
Per-canton lineage
| Canton | Communes | Year | Format | Source |
|---|---|---|---|---|
| ZH | 160 | 2026 | CSV | Statistisches Amt Kanton Zürich (OGD CSV) |
| BE | 334 | 2026 | fin.be.ch Steueranlage 2026 (PDF) | |
| VD | 304 | 2026 | XLS | État de Vaud Arrêtés d'imposition 2026 (XLS) |
| AG | 197 | 2026 | ag.ch Steuerfüsse 2026 v4 (PDF) | |
| VS | 115 | 2026 | vs.ch Coefficients communes 2022-2027 (PDF) | |
| SO | 108 | 2026 | so.ch Statistische Mitteilung 2026 (PDF) | |
| TI | 99 | 2025 | ti.ch FU-MCC2025 (PDF, transcribed) | |
| GR | 100 | 2026 | gr.ch Gemeindesteuerfüsse 2026 (PDF) | |
| FR | 121 | 2025 | JSON | opendata.fr.ch 18_03_coefficients (JSON API) |
| BL | 86 | 2025 | HTML | statistik.bl.ch 2025 (transcribed) |
| TG | 80 | 2025 | CSV | data.tg.ch sk-stat-70 (CSV via OGD) |
| LU | 79 | 2025 | XLSX | lustat.ch per-commune XLSX sweep |
| SG | 77 | 2025 | sg.ch Steuerfüsse 2025 (PDF) | |
| JU | 52 | 2026 | jura.ch quotités 2026 (PDF) | |
| GE | 45 | 2026 | transcribed | silgeneve.ch ArCA 2026 decree |
| SH | 27 | 2025 | sh.ch Steuerfüsse 2025 (PDF) | |
| NE | 24 | 2026 | HTML | ne.ch coefficients 2026 (HTML, transcribed) |
| ZG | 11 | 2025 | curated | zg.ch (curated, all 11 communes) |
| NW | 11 | 2025 | curated | steuern-nw.ch (curated, Einheiten ×100) |
| SZ | 10 | 2025 | curated | sz.ch (curated, top 10) |
| AR | 10 | 2025 | curated | ar.ch (curated, Einheiten ×100) |
| UR | 10 | 2025 | curated | ur.ch (curated, top 10) |
| OW | 7 | 2025 | curated | ow.ch (curated, Einheiten ×100) |
| AI | 5 | 2025 | curated | ai.ch Bezirke (curated) |
| GL | 3 | 2025 | curated | gl.ch (curated, 3 communes) |
| BS | 3 | 2025 | curated | BS canton = Basel city only (curated) |
Cantonal tax scales
All 26 cantons' “einfache Steuer” bracket schedules come from ESTV Kantonsblätter 2026 (one PDF per canton at https://www.estv2.admin.ch/stp/kb/<canton>-<lang>.pdf), cross-referenced with each canton's Steuergesetz article number. BL uses a continuous logarithmic formula, exactly encoded.
Federal tax scale
Federal direct tax 2026 brackets (single + married + lump-sum) are from the ESTV Kreisschreiben. Bracket thresholds reflect the cold-progression adjustment (0.1 % for 2026 per EFD).
Social-insurance figures (2026)
- AHV/IV/EO employee rate: 5.3 % (BSV)
- ALV: 1.1 % on first CHF 148 200; solidarity 0.5 % above (BSV)
- BVG entry threshold: CHF 22 680 (BSV)
- BVG coordination deduction: CHF 26 460 (BSV)
- BVG maximum insurable salary: CHF 90 720 (BSV)
- Pillar 3a max with 2nd pillar: CHF 7 258 (BSV)
- Pillar 3a max without 2nd pillar: CHF 36 288 (20 % of net income capped)
Refresh cadence
Cantonal commune Steuerfuss data is published October–December each year (after commune budget votes). We re-run our fetcher in late October. The yearly cron script lives at /deploy/cron-refresh.sh; diffs are reviewed in a human-approved PR before deployment.
Cantonal tax scales are stable across years (cold-progression adjustments aside) — we transcribe once per year.
Reporting errors
If you find a Steuerfuss or bracket that doesn't match the canton's official publication, email data@optiqo.ch with the commune/canton, the value you expected, and a link to the official source. We patch and redeploy within 48 hours.