The sync settings that quietly stop working

An event created on the iPhone does not appear on the Mac. Or it appears three hours later, or it appears once and then stops updating when it is moved. The usual response is to restart both devices, toggle iCloud off and on, and hope. That sometimes works, and it teaches nothing, so the same thing happens again a month later.

Calendar sync between an iPhone and a Mac breaks in a small number of specific ways, and most of them are settings rather than faults. Working through them in order takes about fifteen minutes and usually ends with an explanation rather than a guess. The order below starts with the checks that cost nothing and ends with the account reset, which should be last because it is the only step that can lose data if done carelessly.

First, prove that it is sync

A large share of these reports are not sync failures. The event synced correctly into a calendar that is not visible on the other device.

Open the event on the device where it exists and look at which calendar it belongs to. On the iPhone, tap the event and read the calendar name under the title. On the Mac, select the event and open the inspector. Then check whether that calendar is switched on and present on the other device.

Three patterns account for most of these.

The event is in a calendar that exists only on one device. On the Mac, calendars created under the heading On My Mac are stored locally and were never going to reach the phone. They are not broken. They are local files by design, and moving their events to an iCloud calendar is the only fix.

The event is in a different account. A phone signed into both iCloud and a work Google account will create events in whichever is set as the default, and if the Mac only has one of those accounts added, half the schedule appears missing.

The calendar is simply unticked. On the Mac, choose View then Show Calendar List, and confirm the calendar has a checkmark. On the iPhone, tap Calendars at the bottom of the screen and check the same thing. A hidden calendar looks identical to a calendar that failed to sync.

If the event is in a calendar that is visible and enabled on both devices and still does not appear, then it is a sync problem and the rest of this applies.

Account types do not behave the same way

The word sync covers three different mechanisms, and the settings that control them sit in different places.

iCloud Google Exchange or Outlook
How updates arrive Pushed by Apple's servers Push or scheduled fetch, depending on setup Usually pushed
Turned on for calendars in Apple Account settings, iCloud, Calendars Account settings on each device Account settings on each device
Which calendars sync All calendars in the account Selected per calendar in Google's settings Set by the server
Where a failure is usually seen Both devices at once One account only, others fine One account only, others fine

The practical value of this table is the last row. If every calendar in every account has stopped updating, the cause is at the device or network level. If one account has stopped and the others are fine, the cause is in that account, and there is no point restarting anything.

The checks that take under a minute

These are worth doing in order before touching any account.

Confirm both devices are signed into the same Apple Account. On the Mac this is at the top of System Settings, and on the iPhone at the top of Settings. Two accounts with similar addresses is a more common cause than it sounds, particularly after a device is replaced.

Confirm Calendars is enabled for iCloud on both. On the iPhone this is in Settings, the Apple Account entry at the top, then iCloud, then the list of apps using iCloud. On the Mac it is in System Settings, the Apple Account entry, then iCloud. Calendars can be switched off on one device without any warning appearing on the other.

Check the date, time and time zone are set automatically on both devices. A device with a manually set clock can write events at the wrong moment, and an event that looks like it failed to sync is sometimes an event that arrived at a time nobody was looking. This also explains most reports of events appearing shifted by a fixed number of hours.

Check network conditions. Low Power Mode on the iPhone and Low Data Mode on the network in use both defer background activity, which delays calendar updates until the app is opened. Neither breaks sync, and both make it look intermittent.

Check whether the service itself is reporting a problem. Apple publishes a system status page that lists iCloud Calendar separately. When that shows an issue, no amount of local troubleshooting will help.

Check iCloud storage. A full iCloud account stops accepting new data, and calendar events are small enough that this is rarely the first symptom, which is exactly why it gets missed.

The setting that hides older events

One setting produces a very specific complaint: recent events sync, but older ones are missing from the phone, or an event created months ahead never arrives.

The iPhone limits how far back calendar data is kept on the device. The control is in Settings, in the Calendar app's own settings, listed as the sync range, and the options run from a couple of weeks back to all events. When it is set to one month back, events older than that will not be on the phone regardless of how well sync is working.

This setting exists to save space on the phone and applies to what the phone stores, not to what the account holds. The events are still in iCloud and still on the Mac. Setting it to all events restores them, and the initial fill takes a few minutes on a large calendar.

Repeating events deserve a note here. A repeating event created years ago with no end date is stored as a rule plus a list of exceptions, and devices expand that rule locally. When a single occurrence of a repeating event is missing or shows the old time after being moved, the usual cause is an exception that failed to write, and editing that occurrence again on the device where it is wrong will normally resolve it.

When one direction works and the other does not

If events created on the Mac reach the iPhone but not the other way round, the problem is the write path rather than sync.

The likely cause is that the event on the phone is being written into a calendar the phone can read but not modify, or into a local account. A shared calendar where the owner granted view only access will accept an event in the interface and fail to save it. So will a subscribed calendar added by URL, which is read only by definition. Both look like sync failures and are neither.

Check the default calendar on each device separately, because it is a per device setting. On the iPhone it is in the Calendar settings under the default calendar entry. On the Mac it is in Calendar settings, in the General tab. Setting both to the same iCloud calendar removes an entire category of confusion, and it is worth doing even when nothing is currently broken.

Alerts follow a similar pattern. An alert is stored with the event and travels with it, but whether a device is allowed to display it is local. A Focus mode, or notifications turned off for Calendar on one device, produces silence that is easy to blame on sync.

Shared calendars follow different rules

Calendars that someone else owns, and calendars added from a web address, sync through a different path from personal ones, and they fail differently.

A calendar shared from another Apple Account arrives as an invitation that has to be accepted, and the acceptance is recorded per Apple Account rather than per device. If it was accepted on one device while the other was signed into a different account, it will be present on one and absent on the other, with no error anywhere. Re-sending the invitation from the owner is the fastest way to settle it.

A calendar subscribed by URL, such as a team roster, a fixture list, or a public holiday feed, is read only and is refreshed on an interval rather than pushed. On the Mac the interval is set per calendar: Control click the calendar name, choose Get Info, and set the auto refresh value. On the iPhone, subscribed calendars refresh on the system's own schedule and cannot be forced beyond pulling down in the list. An event that appears on one device hours before the other is normally this, and it is working as designed.

Events that arrive as meeting invitations are a third case. The invitation lives in the organiser's calendar, and what syncs is the response. When a meeting moves and only one device shows the new time, opening the event and checking whether the response is still recorded is more useful than restarting anything. The notes on entering events cover how a created event differs from an accepted one, which is the distinction behind most of these.

Resetting the account, safely

If everything above checks out, the last step is to remove the account and add it back. This forces a full download and clears a corrupted local database, which is the remaining cause.

Before doing this, export a backup. On the Mac, select each calendar in the calendar list, then choose File, Export, Export, and save the file. That file can be imported back if anything goes missing. Skipping this step is how people turn a sync annoyance into lost events.

Then, on the Mac, open System Settings, the Apple Account entry, iCloud, and switch Calendars off. macOS will ask what to do with the calendar data already on the Mac. Choosing to remove it is safe once the export exists and the events are confirmed present on the iPhone or at icloud.com. Wait a minute, switch it back on, and let it download.

For a Google or Exchange account, the equivalent is removing the account in System Settings under Internet Accounts and adding it again. The events belong to the server, so removing the account locally does not delete them.

Check the result at icloud.com in a browser before deciding whether it worked. That view comes from the server rather than from either device, so it settles whether an event ever reached the account. If an event is visible there and still missing on one device, the problem is on that device. If it is not there at all, the event never left the device it was created on, and the write path checks above are where to look.

If sync still fails after a clean account reset, with the web view confirming the events are on the server, the remaining causes are a device level problem or an account level one, and Apple support can see account state that is not visible locally. A list of the settings that commonly get re-checked at this point is kept in the frequently asked questions.

What to change first

Set the sync range on the iPhone to all events, and set the default calendar explicitly on both devices to the same iCloud calendar. Those two settings cause most of the reports that get described as broken sync, and neither risks any data. If the aim after that is a calendar on the Mac that makes the same account easier to work in, Caltimate reads the same accounts without changing where events are stored.

Frequently asked questions

Why do events created on the iPhone appear on the Mac but not the other way round?

That pattern points to the write path rather than sync. Events created on the Mac are probably landing in a local calendar under On My Mac, or in a subscribed or view only calendar that cannot be modified, so they never reach the account that the phone reads.

Is it safe to turn off iCloud Calendars on the Mac to force a resync?

It is, provided the events are confirmed to exist at icloud.com or on the iPhone first, and a calendar export has been saved. macOS asks whether to keep or remove the local copy, and removing it is the step that forces a clean download.

Why are older events missing from the iPhone but present on the Mac?

The iPhone keeps only a limited range of past events on the device, set in the Calendar settings. The events still exist in the account, and changing that setting to all events brings them back within a few minutes.

Do both devices need the same calendar app for sync to work?

No. Sync happens through the account, not through the app, so any app signed into the same account sees the same events. Using different apps on each device is normal and is not a cause of sync problems.

An event shows a different time on each device. Is that a sync fault?

Usually not. It is almost always a time zone setting, either a device with the clock set manually or an event created with a specific time zone attached. Setting both devices to set date and time automatically resolves most of these.

Back to all posts