When the Mac Calendar app stops syncing

An event was added on the phone this morning and the Mac still does not show it. Or an event was moved on the Mac two hours ago and everyone else is still seeing the old time. Either way the calendar has stopped being trustworthy, which is worse than it being empty, because a calendar that is wrong is still being acted on.

Most advice for this starts with deleting the account and adding it back. That works often enough to keep getting recommended, and it destroys the information needed to stop the problem returning. The useful move is narrower: find out which of four layers actually failed, because each layer has a different fix and only one of them requires touching the account.

First, decide which direction is broken

"Not syncing" describes at least three different failures, and they do not share a cause.

The first is nothing arriving. Events created elsewhere never reach the Mac. The second is nothing leaving. Events created on the Mac stay on the Mac and other devices never see them. The third is delay. Everything arrives eventually, just late enough to be useless during a workday.

Separating them takes one test and about two minutes. Open the calendar service in a browser, on the web interface for whatever account is involved, and compare it against the Mac.

  • The event is on the server but missing on the Mac: inbound sync or calendar selection.
  • The event is on the Mac but missing on the server: outbound sync or a local write that never uploaded.
  • Both agree, but the Mac took a long time to catch up: refresh interval, not a fault.
  • Both agree and nothing is actually missing: the calendar is unticked in the sidebar and the events are hidden rather than absent.

That last case is more common than the other three combined. A calendar checkbox in the sidebar gets cleared by accident, and every event on it disappears from view while syncing perfectly. Nothing about that looks like a display setting from the outside, which is why it survives hours of troubleshooting aimed at the account.

The four layers, from cheapest to check upward

Working from the top down wastes time, because the expensive fixes are at the bottom and the common faults are at the top.

Layer one: visibility

The calendar list in the sidebar controls what is drawn, not what is synced. An unticked calendar is fully up to date and completely invisible. Check every checkbox before anything else, including calendars belonging to other people.

Layer two: selection

A calendar can be present in an account and not enabled for sync to desktop clients. This is standard for secondary calendars and for calendars shared by other people, and it is decided on the service side rather than on the Mac. If a calendar is absent from the sidebar list entirely, rather than present and unticked, this is the layer that failed.

Layer three: schedule

Accounts that talk to a Mac over CalDAV are usually polled rather than pushed. The Calendar app has a per account refresh interval, found under its settings and then the account list, offering values from one minute up to manually. An account set to refresh hourly is not broken when an event takes forty minutes to appear. It is doing what it was told.

Layer four: authentication

Tokens expire. Passwords change. Two factor gets reset on a new phone. When the credential goes stale, sync stops in both directions, and the failure is frequently silent: no error dialog, just a calendar that quietly stopped updating on a date that can be identified by looking for the newest event that did arrive.

A symptom table worth keeping

Symptom Most likely layer First check
One calendar empty, others fine Visibility Sidebar checkbox for that calendar
A shared calendar never appeared Selection Whether it is enabled for sync on the service side
Everything is 20 to 60 minutes behind Schedule Account refresh interval
Nothing has updated since a specific date Authentication Whether the account is still signed in
Changes made on the Mac never leave Authentication or permission Write access on that calendar
Events appear twice Duplicate account Whether the same account was added in two places

The duplicate row deserves a sentence of its own, because it presents as a sync bug and is not one. The same account added both through the system account settings and again manually inside a calendar app produces two copies of every event, each syncing correctly. Removing one of the two entries fixes it instantly.

Read only calendars, and the writes that vanish

A specific and confusing case: an event is edited on the Mac, it looks saved, and then it reverts a few minutes later.

That is the signature of a calendar the account can read but not write. Subscribed calendars, holiday calendars, and calendars shared with view only permission all behave this way. The local app accepts the edit optimistically, the server rejects it, and the next sync overwrites the local copy with the server's version. Nothing errors, nothing logs, and the change simply undoes itself.

Checking permission on the calendar answers it. If the calendar came from someone else's account, the fix is on their side, not on the Mac.

The same pattern explains invitations that never send. A calendar without write access cannot add guests, and an event created there looks complete while nobody is invited.

When it is the local database, not the account

There is a category of failure that survives all of the above: the account is authenticated, the calendars are selected and ticked, the refresh interval is one minute, and sync still does not happen. At that point the local store is the suspect.

The Calendar app on macOS keeps a local database of everything it has downloaded. It can end up inconsistent after an interrupted sync, a forced restart during an update, or a disk that filled up. The symptoms are distinctive: sync works for one account and not another, or the app is slow and unresponsive around a specific date range, or a deleted event reappears.

The lowest cost first step is quitting the app completely and reopening it rather than closing the window. A calendar app that keeps a menu bar item is often still running after its window is closed, and the sync process it started keeps its old state.

If quitting does not help, removing just the affected account and adding it back rebuilds only that account's local data. That is the point at which the standard advice is finally the right advice, and it is worth reaching here rather than starting here, because the earlier layers explain most cases and take minutes rather than an evening.

Managed accounts, and the failures that are not on the Mac

Some sync failures are working exactly as configured, just not by the person staring at the Mac.

A work account issued by an employer sits under administrative policy. That policy can decide which applications are allowed to connect to it, whether a device has to be enrolled in management before it can sync, and how often a credential has to be re established. When a policy changes, every Mac in the organisation stops syncing on the same day, and each person diagnoses it alone as a local fault.

The tell is timing. A failure that starts at a specific moment across more than one device, or that coincides with a password reset, a security review, or a new phone, is an account level event. Nothing on the Mac caused it and nothing on the Mac fixes it. Signing in again through the system account settings resolves the ones that are recoverable locally, and the rest need whoever administers the domain.

A second category is the calendar that syncs correctly and shows the wrong time. Recurring events created in one time zone, viewed on a machine set to another, are a frequent source of this. The event is not out of sync. It is being displayed against a different reference, and the fix is in the time zone settings rather than the account.

A third is the shared calendar that updates only when its owner is active. Some subscription style calendars refresh on the publisher's schedule, not on the subscriber's, and no setting on the receiving end speeds that up. Waiting is the only available action, which is worth knowing before spending an evening on it.

Why this keeps happening on a busy calendar

The layers above are mechanical. The reason the problem recurs usually is not.

A calendar with three accounts, a dozen calendars, some shared in one direction and some in the other, has many places to be silently wrong and no summary view that shows the health of all of them at once. Sync failures do not announce themselves. The first sign is a meeting attended at the wrong hour.

That argues for reducing the number of moving parts rather than getting better at diagnosing them. Fewer accounts on the Mac, fewer duplicate entry points for the same account, and one place where new events get created. The mechanics of getting events in through a single reliable path are covered on Entering events, and what a calendar app on macOS can and cannot control about the surrounding day is on Features.

There is also a class of problem that gets blamed on sync and is not sync at all. Two meetings show correctly, both times are right, both arrived on every device, and the day still fails because there is no way to be in both places. That is not a sync fault and no amount of checking accounts will fix it. It is covered as a separate issue on Travel time.

Checks in the order that saves the most time

  • Tick every calendar in the sidebar, including ones belonging to other people.
  • Compare the Mac against the same account in a browser to establish which direction failed.
  • Find the newest event that did arrive. Its date is when the failure started.
  • Set the account refresh interval to its shortest value before calling anything broken.
  • Confirm the account is still signed in, and re authenticate rather than deleting it.
  • Look for the same account added twice if events appear in duplicate.
  • Quit the calendar app fully, including the menu bar item, then reopen it.
  • Only after all of the above, remove and re add the single account that is failing.

Doing these in this order matters more than doing all of them. The first two cost nothing and resolve the majority of cases, while the last one costs an hour and destroys the evidence needed if the problem returns next month.

What to change first

Start with the sidebar checkboxes and a side by side comparison against the web interface, because those two steps separate a hidden calendar from a broken one and take two minutes. Then set the refresh interval to its shortest value, which alone answers most complaints about delay. If the calendar is technically syncing and the days still fall apart, the problem is the shape of the schedule rather than the sync, and Caltimate is aimed at that part.

Frequently asked questions

Why do events from a phone take an hour to appear on the Mac?

Accounts connected over CalDAV are polled on an interval rather than pushed instantly, and the interval is set per account in the calendar app's settings. An hourly setting produces exactly this delay. Lowering it to one or five minutes removes most of it, at a small cost in battery and network use.

Should the account be deleted and added back?

Not as a first step. That fix works but rebuilds everything and erases the evidence of what failed, so a recurring problem becomes impossible to diagnose. Check visibility, calendar selection, refresh interval, and sign in status first, and treat re adding the account as the last option rather than the first.

An event edited on the Mac reverts a few minutes later. What causes that?

That calendar is almost certainly read only. Subscribed calendars and calendars shared with view only permission accept a local edit and then get overwritten by the server on the next sync, with no error shown. The permission has to be changed by whoever owns the calendar.

Every event shows twice. Is that a sync bug?

No, it is normally the same account added in two places, such as through the system account settings and again directly inside a calendar app. Both copies sync correctly, which is why nothing looks broken. Removing one of the two account entries clears the duplicates immediately.

A shared calendar never appeared at all. Where is it?

If it is missing from the sidebar entirely rather than present and unticked, it was probably never enabled for sync to desktop clients on the service side. That setting lives with the account rather than on the Mac, and secondary or externally shared calendars often default to off.

Back to all posts