Europe/Moscow
Europe/Moscow covers Moscow, Saint Petersburg, Nizhniy Novgorod and the rest of Russia, at +03:00 standard time, with no daylight saving time.
Worked examples
- A winter instant in Europe/Moscow
Europe/Moscow's UTC offset and DST status on a January date, converted to UTC.
- A summer instant in Europe/Moscow
Europe/Moscow'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/Moscow to America/New_York
A worked conversion from Europe/Moscow to America/New_York for a specific instant.
TZ identifier and aliases
Europe/Moscow is the canonical identifier for Moscow Time, covering
Moscow, Saint Petersburg and most of western Russia. W-SU is an older
name still pointing at the same rules but is a deprecated alias — use
Europe/Moscow in new code. Europe/Kirov and Europe/Volgograd
currently share identical rules and are folded into the same entry.
UTC offset and DST rule
Europe/Moscow is +03:00 year-round with no daylight saving time.
Russia's relationship with DST has been unusually volatile: the country
ran on permanent daylight time (+04:00) from 2011 to 2014, then reversed
course entirely, settling on permanent standard time (+03:00) since
October 2014 — so there's been no seasonal clock change to account for in
over a decade.
Using it in cron, CI and Postgres
Set TZ=Europe/Moscow for a process that should schedule by Moscow local
time — naming the zone rather than hardcoding +03:00 keeps a config
self-documenting and automatically correct should Russia reverse its DST
policy again, which its recent history suggests isn't out of the question.
Postgres accepts it via SET TIME ZONE 'Europe/Moscow'; or the timezone
setting. Because the offset is currently fixed, a cron job's local-time
schedule behaves identically every day of the year, with no DST boundary
to work around — one of the simpler zones in this family for recurring
scheduled jobs, despite its complicated recent history.
History and quirks
Few zones in this family have changed rules as dramatically, or as
recently, as Moscow. In March 2011 Russia's government set clocks forward
for what it announced would be the final time, adopting permanent daylight
time nationwide and abolishing the twice-yearly change altogether — a
decision President Dmitry Medvedev framed as ending the disruption and
productivity loss DST caused. That arrangement (effectively +04:00
year-round) lasted about three years before public complaints about dark
winter mornings pushed the State Duma to reverse it in mid-2014, moving
Russia to permanent standard time (+03:00) instead that October — the
opposite fixed point from the one chosen in 2011, and a rare example of a
country trying both "permanent summer time" and "permanent winter time" as
policy experiments within the same decade. Because Moscow Time also serves
as the reference zone for much of Russia's rail and federal broadcast
scheduling, a change this size required recalibrating systems across ten
time zones' worth of territory, not just the Moscow region itself.
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/Moscow observe DST?
- No — Europe/Moscow keeps a fixed +03:00 offset from UTC all year, with no seasonal clock change.
- What is the UTC offset of Europe/Moscow in winter/summer?
- Europe/Moscow is +03:00 year-round — the same offset applies in every season.
- Which cities use Europe/Moscow?
- Moscow, Saint Petersburg, Nizhniy Novgorod, Kazan all use the Europe/Moscow zone — also commonly known as Moscow Time — along with the rest of Russia.
- What is the deprecated alias for this zone?
- W-SU is a deprecated backward-compatibility name for this zone. Use the canonical identifier Europe/Moscow in code, cron jobs, `TZ` environment variables and config files instead.