Daylight saving transition bugs
When clocks jump forward, one local hour never occurs. When they fall back, one local hour happens twice. Calendars that store a wall clock without a zone will pick the wrong instant — or crash.
The missing hour
In most of the EU, 02:00 jumps to 03:00 on the last Sunday in March. There is no 02:30 that morning. A meeting stored as “02:30 Europe/Paris” is invalid; libraries fold it forward to 03:30 or reject it. Users see a call that “moved itself.”
US zones typically jump 02:00 to 03:00 on the second Sunday in March. The same gap exists, on a different date than Europe. A series that was fine in February can break in March on only one side of the Atlantic.
Zones that do not observe DST (Asia/Tokyo, Asia/Kolkata, America/Sao_Paulo today) have no missing hour. Mixing them with a DST zone is how a “same local time every week” series drifts for the DST side only.
The repeated hour
In autumn the clocks go back. 02:00–03:00 happens twice in many zones. Ambiguous local times need a disambiguation policy: earlier offset or later. If your library defaults silently, two attendees can join an hour apart.
Transport timetables usually publish “first 02:00” vs “second 02:00.” Consumer calendars rarely do. For a critical call that weekend, pick 04:00 local or meet in UTC for that one instance.
NowZones difference pages name the next transition date on each side so you can avoid that weekend rather than debug it live.
How to not ship the bug
Store IANA ids. Convert with a library that implements tzdb, not with a spreadsheet of offsets. Test dates in the mismatch weeks (US vs EU) and on the transition Sundays themselves.
Never schedule a production job at 02:15 local in a DST zone without stating the policy. Prefer 04:00 local or UTC.
Read the DST explainer for the politics; this page is the failure mode. City pages show whether a place even observes DST so you know if the gap exists.
Try the tools
Frequently asked questions
- Why did my 02:30 meeting vanish?
- It fell in the spring gap. Recreate it at 03:30 or another valid civil time, with a zone id on the event.
- Which hour should I pick in autumn?
- The later offset (standard time) is less surprising for morning meetings, but the only robust choice is to avoid the fold. Put both city times in the invite body.
- Does the converter handle transition days?
- It uses IANA rules for the date you enter. Pick the actual calendar day of the meeting, not “a typical Tuesday.”