Zurich vs Zug vs Geneva: your Swiss canton determines more than just your postcode
Switzerland has 26 cantons, each setting its own income tax rates. The difference between the most tax-efficient (Zug) and least efficient (Geneva) canton on a CHF 120,000 salary is CHF 1,416 per month — before you've made a single lifestyle decision.
Switzerland has no single national income tax rate. The federal government charges a direct federal tax (direkte Bundessteuer / impôt fédéral direct) that is the same for everyone across the country. But cantonal and communal taxes are set independently, and they dominate the total bill. On a typical professional salary, cantonal and municipal tax typically accounts for 55–70% of the total tax burden — far outweighing the federal component.
This means a software engineer earning CHF 130,000 in Zug genuinely takes home CHF 15,000–18,000 more per year than an identical engineer on the same salary in Geneva. That's not a marginal difference — it changes what kind of flat you can afford, whether you lease or buy a car, and whether you can invest meaningfully each month.
How Swiss cantonal tax works
Every canton publishes its own tax tariff. Cantonal income tax is typically structured as a base rate that municipalities then multiply by a local coefficient. The municipality of Zurich city, for example, has a higher coefficient than Küsnacht or Zollikon in the same canton. The system has three components that interact:
- Federal income tax (Bundessteuer): Same across all 26 cantons. Progressive schedule starting at 0.77% and reaching 11.5% on income above CHF 755,200. For most professionals, this adds roughly CHF 7,000–15,000/year.
- Cantonal income tax (Kantonssteuer): Each canton sets its own rate schedule. Zug is the lowest major canton. Valais, Graubünden, and Obwalden are also low. Geneva, Vaud, Basel-Stadt, and Bern are at the higher end.
- Municipal income tax (Gemeindesteuer): A multiplier applied to the cantonal tax. Cities tend to have higher multipliers than wealthy suburbs. Zurich city charges approximately 119% of the cantonal rate; neighbouring Kilchberg charges around 74%.
On top of these, Swiss employed workers pay:
- AHV/IV/EO (old-age and disability insurance): 5.3% of gross salary
- ALV (unemployment insurance): 1.1% on income up to CHF 148,200
- BVG (occupational pension, 2nd pillar): varies by age and employer, typically 6–10% of insured salary as the employee's share
The AHV, ALV, and BVG are the same regardless of canton. The tax difference comes entirely from the Kantonssteuer + Gemeindesteuer component.
The numbers: CHF 120,000 in six Swiss cities
BVG (second-pillar pension) is not included in these take-home figures because it varies significantly by employer, contract, and age. A 35-year-old professional might pay CHF 650–900/month in BVG contributions; a 50-year-old might pay CHF 1,100–1,500. This further reduces the net figure available to spend, but the BVG savings are yours — they appear in your pension statement and will be returned to you at retirement or if you leave Switzerland permanently.
The Zug phenomenon: why 37,000 companies are registered there
Zug is a canton of around 130,000 residents and a commuter distance of roughly 25 minutes from Zurich by train. Its tax rates are among the lowest of any developed-country jurisdiction — a historical accident of Swiss federalism that the canton has consciously maintained to attract businesses and high earners.
The result is that Zug hosts an extraordinary concentration of commodity trading houses (Glencore, Vitol, Trafigura), crypto and blockchain companies (Ethereum Foundation, Web3 Foundation), and pharmaceutical holding companies. Many of these companies' employees live in Zug specifically because the tax advantage on high incomes compounds dramatically.
At CHF 300,000 gross — a senior trader or senior tech executive — the difference between Zug and Geneva widens to CHF 3,200–4,000/month, or roughly CHF 40,000–48,000 per year. At that scale, the commuting cost from Zug to a Zurich office is entirely rational.
What the canton choice doesn't change
Federal tax is the same everywhere, so the Bundessteuer comparison is irrelevant. AHV and ALV are also identical across cantons — these are national social insurance contributions that don't vary by where you live. The BVG (occupational pension) is set by your employer, not your canton of residence.
What also doesn't change: your employer is free to be registered in a different canton from where you live. Your income tax is based on your place of residence, not your employer's location. A Roche employee (Roche is headquartered in Basel) who lives in Zug pays Zug taxes, not Basel-Stadt taxes.
The practical implication for professionals moving to Switzerland
If you're relocating to Switzerland for work, your employer's office location doesn't constrain your canton of residence — provided the commute is practical. Swiss trains are reliable and frequent enough that a 30–45 minute commute is considered normal. The standard advice for high earners is to investigate Zug, Schwyz, and Nidwalden before defaulting to living in Zurich city. The tax savings, particularly above CHF 150,000, compound across years in ways that dwarf any difference in rental costs between cities.
It's worth noting that Zurich city itself is not the worst option in absolute terms — it sits in the middle of the distribution. Bern, Geneva, and Vaud are the locations to scrutinize most carefully if take-home pay is a priority.
For a detailed breakdown of your Swiss take-home including AHV and ALV deductions, use our Switzerland Salary Calculator.