Europe/Zurich
Europe/Zurich covers Zürich, Genève, Basel and the rest of Switzerland, at +01:00 standard time, switching to +02:00 in summer.
Worked examples
- A winter instant in Europe/Zurich
Europe/Zurich's UTC offset and DST status on a January date, converted to UTC.
- A summer instant in Europe/Zurich
Europe/Zurich's UTC offset and DST status on a July date, converted to UTC — compare against the winter example to see any DST shift.
- Converting Europe/Zurich to America/New_York
A worked conversion from Europe/Zurich to America/New_York for a specific instant.
TZ identifier and aliases
Europe/Zurich is the canonical identifier for Swiss civil time.
Europe/Vaduz, covering Liechtenstein, and Europe/Busingen, a small
German exclave surrounded entirely by Swiss territory, currently share
identical rules and are folded into the same entry. Europe/Zurich has no
deprecated backward-compatibility alias of its own.
UTC offset and DST rule
Europe/Zurich is +01:00 (CET) on standard time and +02:00 (CEST)
during daylight saving, following the EU-harmonized rule despite
Switzerland never having joined the EU: the last Sunday in March through
the last Sunday in October, both at 1am UTC — March 29 and October 25 in
2026.
Using it in cron, CI and Postgres
Set TZ=Europe/Zurich for a process that should schedule by Swiss local
time. Postgres accepts it via SET TIME ZONE 'Europe/Zurich'; or the
timezone setting, applying the DST rule correctly for any date. Where a
scheduler supports a CRON_TZ=Europe/Zurich line, jobs run by local time
directly; GitHub Actions' schedule: trigger always evaluates in UTC with
no per-job timezone, so a job meant to fire at a fixed Zurich hour needs
its UTC equivalent recalculated across each DST boundary. Avoid the
2:00–3:00am local window for anything that must run exactly once — it's
skipped on the March transition and repeated on the October one.
History and quirks
Switzerland is a useful reminder that EU DST harmonization isn't actually
an EU-membership requirement — Switzerland has never joined the EU, yet it
voluntarily aligned its clock-change dates with the bloc's rule after a
1980s domestic referendum, precisely because staying out of sync with its
much larger neighbors (Germany, France, Italy, Austria) would have created
constant friction for cross-border commuters, freight schedules and
financial markets. Europe/Busingen, a tiny German town of a few hundred
people completely surrounded by Swiss territory since a 19th-century border
settlement, follows Zurich's clock rather than Berlin's for exactly the
same practical reason — being an island inside another country's time zone
would be far more disruptive than matching the country actually
surrounding it. Liechtenstein, similarly landlocked and economically
integrated with Switzerland, has followed the Swiss clock without
interruption since long before EU harmonization existed.
Switzerland's relationship with EU rules generally — adopting many
voluntarily through bilateral agreements while remaining formally outside
the bloc — is well illustrated by its time zone policy specifically:
there was no treaty obligation forcing the 1980s alignment, only the
practical recognition that Zurich's banking, rail and logistics sectors
depend on predictable synchronization with Frankfurt, Paris and Milan.
Europe/Busingen remains one of the more visually striking curiosities
in the tz database's grouping data: a piece of Germany, subject to German
law in most other respects, whose clocks nonetheless run on
Europe/Zurich rather than Europe/Berlin — a detail easy to miss
unless a system happens to need Busingen specifically.
Offsets and DST transitions on this page are computed from the IANA time zone database bundled with your browser; the rules described above were verified against tzdata 2026b when this page was published.
Frequently asked questions
- Does Europe/Zurich observe DST?
- Yes. In the current rule it begins the last Sunday in March and ends the last Sunday in October.
- What is the UTC offset of Europe/Zurich in winter/summer?
- Europe/Zurich is +01:00 on standard time and +02:00 during daylight saving time.
- Which cities use Europe/Zurich?
- Zürich, Genève, Basel, Lausanne all use the Europe/Zurich zone — also commonly known as Central European Time — along with the rest of Switzerland.
- What is the deprecated alias for this zone?
- Europe/Zurich has no widely-used deprecated alias, though Europe/Busingen is a separate IANA identifier that currently shares identical rules.