Europe/Lisbon

Europe/Lisbon covers Lisbon, Porto, Amadora and the rest of Portugal, at +00:00 standard time, switching to +01:00 in summer.

Loading tool…

Worked examples

  • A winter instant in Europe/Lisbon

    Europe/Lisbon's UTC offset and DST status on a January date, converted to UTC.

  • A summer instant in Europe/Lisbon

    Europe/Lisbon'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/Lisbon to America/New_York

    A worked conversion from Europe/Lisbon to America/New_York for a specific instant.

TZ identifier and aliases

Europe/Lisbon is the canonical identifier for mainland Portuguese time. The bare country name Portugal and the abbreviation WET (Western European Time) are older names still pointing at the same rules but are deprecated aliases — use Europe/Lisbon in new code. Atlantic/Madeira currently shares identical rules and is folded into the same entry; the Azores, notably, keep their own separate zone one hour further west.

UTC offset and DST rule

Europe/Lisbon is +00:00 (WET) on standard time and +01:00 (WEST) during daylight saving, following the EU-harmonized clock-change dates — the last Sunday in March through the last Sunday in October, both at 1am UTC — even though its base offset is the same as the UK's rather than the rest of continental Europe's.

Using it in cron, CI and Postgres

Set TZ=Europe/Lisbon for a process that should schedule by Portuguese local time — worth calling out explicitly because Portugal's +00:00 base offset makes it easy to mistakenly assume "European time" means +01:00/+02:00 like most of the continent, when Lisbon in fact matches London and Dublin instead. Postgres accepts it via SET TIME ZONE 'Europe/Lisbon'; or the timezone setting, applying the DST rule correctly for any date. Where a scheduler supports a CRON_TZ=Europe/Lisbon line, jobs run by local time directly; GitHub Actions' schedule: trigger always evaluates in UTC, so a fixed-local-hour job needs its UTC equivalent updated across each DST boundary. Avoid the 1:00–2:00am local window for anything that must run exactly once.

History and quirks

Portugal is a rare case of a country that tried a neighbor's time zone and deliberately switched back. Under Decree-Law 124/92 in 1992, Aníbal Cavaco Silva's government moved the mainland to Central European Time (+01:00/+02:00, matching Spain), citing energy savings and closer alignment with EU working hours. The change proved unpopular fast: winter sunrise slipped past 9am in a country where the school day starts early, and a European Commission study later found no measurable energy savings — people simply left lights on longer rather than saving power. Lisbon's Astronomical Observatory recommended reverting on geographic grounds in 1996, and Decree-Law 17/96 restored Western European Time that year, keeping the EU's DST dates in place either way. That four-year experiment is the direct reason Portugal and Spain — sharing the Iberian Peninsula and a long land border — run on different base offsets today, one of the more visible time zone mismatches in Western Europe. The Azores, a Portuguese autonomous region further out in the Atlantic, sit in their own separate zone a further hour west and were unaffected by the mainland's experiment.

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/Lisbon 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/Lisbon in winter/summer?
Europe/Lisbon is +00:00 on standard time and +01:00 during daylight saving time.
Which cities use Europe/Lisbon?
Lisbon, Porto, Amadora, Braga all use the Europe/Lisbon zone — also commonly known as Western European Time — along with the rest of Portugal.
What is the deprecated alias for this zone?
Portugal is a deprecated backward-compatibility name for this zone. Use the canonical identifier Europe/Lisbon in code, cron jobs, `TZ` environment variables and config files instead.