Europe/Madrid
Europe/Madrid covers Madrid, Barcelona, Valencia and the rest of Spain, at +01:00 standard time, switching to +02:00 in summer.
Worked examples
- A winter instant in Europe/Madrid
Europe/Madrid's UTC offset and DST status on a January date, converted to UTC.
- A summer instant in Europe/Madrid
Europe/Madrid'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/Madrid to America/New_York
A worked conversion from Europe/Madrid to America/New_York for a specific instant.
TZ identifier and aliases
Europe/Madrid is the canonical identifier for mainland Spanish time.
Africa/Ceuta, covering Spain's North African exclave, currently shares
identical rules and is folded into the same entry — notably, this puts
Ceuta on Central European Time even though geographically it sits on the
African mainland alongside Morocco, which itself keeps a different offset.
Europe/Madrid has no deprecated backward-compatibility alias.
UTC offset and DST rule
Europe/Madrid is +01:00 (CET) on standard time and +02:00 (CEST)
during daylight saving, following the EU-harmonized rule: 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/Madrid for a process that should schedule by Spanish local
time. Postgres accepts it via SET TIME ZONE 'Europe/Madrid'; or the
timezone setting, applying the DST rule correctly for any date. Where a
scheduler supports a CRON_TZ=Europe/Madrid 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 Madrid 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
Spain is the standout geographic anomaly on this list: it sits almost
directly south of the UK and west of France on the map, which by solar
longitude should put it on the same clock as London, not Berlin. The
mismatch traces back to 1940, when General Franco's government switched
Spain to Central European Time in alignment with Nazi Germany and Fascist
Italy — a wartime political decision that outlived the war and the regime
that made it, and that Spain has never reversed despite decades of
periodic public debate about restoring solar-aligned time. The practical
effect is a country where the sun rises and sets roughly an hour later,
clock-wise, than it "should," contributing to Spain's noticeably late
mealtimes and evening schedule relative to the rest of Western Europe —
often cited as a cultural artifact of a time zone decision made for
entirely unrelated political reasons eight decades ago. Europe/Madrid's
DST dates match the rest of the EU exactly, since Spain adopted the bloc's
harmonized rule alongside its neighbors.
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/Madrid 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/Madrid in winter/summer?
- Europe/Madrid is +01:00 on standard time and +02:00 during daylight saving time.
- Which cities use Europe/Madrid?
- Madrid, Barcelona, Valencia, Zaragoza all use the Europe/Madrid zone — also commonly known as Central European Time — along with the rest of Spain.
- What is the deprecated alias for this zone?
- Europe/Madrid has no widely-used deprecated alias, though Africa/Ceuta is a separate IANA identifier that currently shares identical rules.