Danilo · Updated 2026-09-12 · Sources: Zügle's methodology page; ESTV tax calculator; Swiss Code of Obligations (fedlex)

How Zügle does the math

Anyone weighing a move usually has one concrete question: "adding it all up, is the new place cheaper or more expensive than the one I'm in?" Zügle answers exactly that with a single monthly figure. This guide explains, in plain language, what goes into that figure, where each part comes from, and what it deliberately leaves out.

The one rule that governs everything

Every difference in Zügle is written as candidate minus current home: the flat you're considering, minus the home you live in now.

inside the noise of the estimate and isn't a difference worth moving house over. That band is a deliberate buffer: a figure that is really a tie should not read as a confident green or red.

That one figure is built from three recurring parts (rent, tax, commute) plus two things that deliberately stay separate: one-off moving costs and a location score that isn't measured in francs at all.

1. Rent

Rent is net rent plus recurring charges, read straight from the listing. Where a listing only ever published a gross figure, that is used instead and treated as the whole cost. Both halves are editable: if the advertised rent turns out to be wrong, or a landlord comes back with a different number, you can override it and the comparison recomputes without re-fetching the listing.

2. The tax delta

Swiss income tax has three layers: federal, cantonal and communal. Only the federal one is the same everywhere. The cantonal and communal shares are set as a multiplier (the Steuerfuss) on a base tax, so two municipalities ten minutes apart can differ by thousands of francs a year on identical income.

Zügle asks the Federal Tax Administration's (ESTV) own calculation logic for the tax due on your gross income, in each municipality, for your marital status, denomination and number of children, and reports the difference.

It uses the detailed calculation from gross income. That comes out about 11% below what ESTV's own simple calculator returns for the same number, because the simple calculator treats the figure you type as already-taxable income rather than gross income. For the comparison between two municipalities that this tool exists for, that offset doesn't matter — the delta stays comparable either way. Every tax figure is tied to a specific tax year; change the year and the amounts change too.

A municipality is not the same thing as a ZIP code. Several Swiss ZIP codes cover two or more municipalities, and a locality within a municipality (such as Buttikon, which belongs to Schübelbach) pays its parent municipality's tax multiplier, not one of its own. Typing only the ZIP can land you in the wrong municipality and therefore the wrong tax bill. That case is worked through in full in Buttikon or Zürich?.

3. Commute cost

Journey time comes from the public Swiss transport API, from each home to the place you commute to. The cost is estimated from the fare zones of the relevant transit network, with a national tariff-distance model as a fallback where no network applies, and a small set of curated combined fares where a plain zone calculation is known to be wrong. So it's an estimate, not a fetched SBB price; check the actual fare in the SBB timetable or shop before deciding.

You can override the estimate with what you actually pay; an entered figure always wins over the estimate. Leave the commute unset entirely and this line simply isn't counted ("unset" is not the same as "zero francs").

4. One-off costs, kept separate

The cost of moving itself (the debt-collection register extract, the deposit, the moving company) is shown on its own in Zügle and is deliberately not folded into the monthly figure. Mixing a one-time cost into a recurring difference makes a good move look bad for its first year and a bad one look fine ever after.

5. The location score

Alongside the money, Zügle shows a score for what money doesn't capture: commute time, distance to a centre, proximity to a lake, and manually set views on outlook and greenery. This score sits beside the financial figure.

Where Zügle has no figure for a criterion — say, a municipality with no stored coordinates — that criterion abstains, and its weight is redistributed across the others. It is never scored as zero. Scoring a gap in our own data as a mark against the municipality would penalize exactly the smaller places this tool is most useful for.

What happens when a figure is missing

Zügle would rather show a missing figure than a guessed one. When a coordinate, a tax value or a commute connection is missing, that part of the comparison is simply left out. Where it affects the monthly figure, it is flagged rather than quietly filled in with zero or an assumption.

What this doesn't show

property, school and childcare costs, and the value of staying close to people you know — none of that is part of this calculation.

whether ten extra minutes on the train matters to you is a personal question.

tax or legal advice for your individual case.

model is involved in any figure shown: the same inputs give the same answer tomorrow, and every step can be checked by hand.

The full, more technical version of this method is on the methodology page. A fully worked example, with real tax figures for two household profiles, is in Buttikon or Zürich?.

Try it with your own numbers

The result is most useful with your own figures: your actual rent, your actual income, and the flat you're really considering.

Run the numbers yourself

← All guides