Guide
Why calendar invites sometimes shift by an hour
A meeting that quietly moves by an hour is one of the more unsettling office experiences, because nobody edited it. The invitation is unchanged, the attendees are unchanged, and yet it now sits an hour from where it did last month. The cause is almost always the same: the event was stored without a proper time zone, or with the wrong one.
What an invitation actually stores
A well-formed calendar event does not store "14:00". It stores a start instant together with the time zone it was created in, so each attendee's software can render it in their own local time and keep rendering it correctly when either side changes clocks. Three things can be stored instead, and each fails differently.
- A floating time. The event says 14:00 with no zone at all. Everyone sees 14:00 in their own zone, which is right for a personal reminder and wrong for a meeting.
- A UTC instant with no zone reference. The moment is correct forever, but the event will not follow a later clock change in the organiser's country, so a recurring series drifts by an hour relative to the local working day.
- The wrong zone. Usually because the organiser's device is set to a different zone than they are physically in, or because a system copied an event across without translating it.
The recurring meeting problem
Recurring events are where this shows up most. A weekly call created in a European zone will keep its European local time through the spring change, which means it moves by an hour for everyone in North America until they change too, and then moves back. If the series was stored in UTC instead, the opposite happens: the moment stays fixed and the European local time moves. Neither is a bug. They are different intentions, and the invitation is where you express which one you meant.
For a standing meeting, the usual intention is "the same local hour for the host team", so a zone-aware recurring event is right. For a launch, a broadcast or an exam, the intention is "this exact instant", and UTC is right.
Travel makes it worse
If you create an event while travelling, your device may be on local time at your destination, and the event inherits that zone. It looks right on your screen and wrong to everyone at home. Before creating events on the road, check what zone your calendar thinks you are in, or set the zone explicitly on the event rather than accepting the default.
How to make it stop
- Always set an explicit time zone on invitations that involve more than one country.
- Put the intended anchor in the invitation body in words: "16:00 UTC" or "09:00 New York time, whatever that is in your zone".
- For a public event, publish a self-converting link, such as one from the event time announcer, so attendees do not depend on their own arithmetic or on your calendar system talking to theirs.
- After a clock change, spot-check the next occurrence of your standing meetings rather than waiting for someone to arrive at the wrong hour.