Why is Google Calendar not syncing with my iPhone?
Almost every case of Google Calendar not syncing with an iPhone comes down to one of four things: the calendar reached the phone as a subscribed link rather than a signed-in account, the calendar is switched off somewhere in iOS, the Calendar app is fetching on its own timer instead of receiving a push, or the account's authorisation has quietly lapsed.
The first thing worth pinning down is which of two setups you're actually in, because they fail in different ways and only one responds to settings changes. A Google account added to iOS as a Mail/Calendar account is one thing; a calendar added by subscribing to an ICS or webcal URL is another. An account that's broken shows events as editable and, when the credential itself is the problem, prompts for a password. A subscription that's stale shows events fine, but read-only, and simply behind — nothing on the phone is failing, it just hasn't reread the link yet.
The sections below are ordered from the most common cause to the least. Work down them in order rather than jumping to whichever sounds most familiar.
Which kind of Google calendar did you actually add to your iPhone?
Open Settings, tap Apps, tap Calendar, then tap Calendar Accounts, and scroll the list — Google Calendar sits under one of two categories there, and which one decides whether anything on the phone can fix it. Anyone chasing iPhone not syncing Google Calendar should start on this screen before touching a single toggle.
If Google appears as its own entry with a sign-in and a Calendars toggle underneath, it was added the normal way: as a Mail/Calendar-type account, authenticated with Google credentials. That's a real account connection, governed by the settings on this same screen, and the next three sections are where it actually gets repaired.
If instead it's lower down under Subscribed Calendars, showing a URL instead of a sign-in, it's an ICS or webcal link. A subscription carries no sign-in, so no re-login fixes it. The phone's own fetch interval is adjustable — subscribed calendars are fetched on the schedule set under Fetch New Data, covered below. What no setting reaches is the other end: the publisher cannot push a change to you, so the freshest you can ever be is your next scheduled fetch. Why that side has no lever at all is the section on setups that keep breaking by design.
Is the Google calendar switched off somewhere on your iPhone?
Three separate switches can each hide a Google calendar on an iPhone, and checking all three catches most cases before assuming anything is actually broken.
Back on the Calendar Accounts screen from the last section (Settings > Apps > Calendar > Calendar Accounts), tap the Google account and check the Calendars toggle underneath it. If that switch is off, the whole account stops appearing, full stop.
The second lives inside the Calendar app itself, not in Settings. Open Calendar, tap the Calendars button at the bottom of the screen, and look for a specific calendar with an empty checkbox. A secondary calendar — a shared one, a "Birthdays" calendar — can sit unticked here while the account syncs everything else fine.
The third is on Google's side. Sign in to that Google account and open calendar.google.com/syncselect. It lists the account's calendars with a checkbox each; tick the one you're missing and save. A calendar unticked there never reaches the phone at all, regardless of the first two settings.
Google's own checklist adds one more condition worth confirming directly: the event has to sit on a calendar actually associated with that Google Account, per support.google.com/calendar/answer/6261951.
Is your iPhone fetching Google Calendar on a timer instead of receiving pushes?
A Google account added to iOS is fetched on a schedule rather than pushed, set in Settings > Apps > Mail > Mail Accounts > Fetch New Data. Tapping the Google entry there sets that account's delivery mode, Fetch or Manual; the interval is a separate control, Fetch, near the bottom of the screen, shared by every account set to Fetch.
Events landing minutes or hours late is a fetch-interval problem, what this screen governs. A calendar or specific events that never show up at all is a different failure — see the section above on calendars switched off, since no fetch setting fixes something never requested.
Two things stretch this interval. Background App Refresh, Settings > General > Background App Refresh, has its own switch; turning it off for Calendar stops a scheduled fetch from running. Low Power Mode sits elsewhere, under Settings > Battery; Apple describes it as pausing or reducing background activity, which includes a scheduled fetch. The Google Calendar app runs its own refresh on its own schedule — fixing this iOS setting does nothing for it, and vice versa.
Does your Google account need to be re-authorised on the phone?
A Google account's authorisation on iPhone can lapse without any error appearing — the calendar just stops updating, frozen at whatever date it last synced, because iOS often does not surface a re-authentication prompt on its own. Google lists what breaks the phone's permission: you removed the app's access, the account sat unused for six months, you changed your password, or an administrator restricted it. The last one is worth checking first on a work or school phone, because a policy change made by your IT department looks exactly like something you did yourself.
To restore it, open the Google entry under Settings > Apps > Calendar > Calendar Accounts and sign in again, or remove the account and re-add it. Removing it drops its events from the phone until it finishes its first sync back in. If sign-in fails again immediately on a managed phone, the restriction sits with the administrator, not the device.
What if Google Calendar still is not syncing after all that?
Two residual causes are worth ruling out before anything else here. Back on Settings > Apps > Calendar > Calendar Accounts, check the address on the Google entry — a second account added months ago looks identical in the list to the one being checked now. The other is a shared calendar whose invitation was never accepted; it can exist at Google without ever reaching the phone. Google's own support page adds a hard limit on top of those two: "the Calendar app only syncs past events up to one year," with anything older found at calendar.google.com instead, plus the calendar-association condition covered above (support.google.com/calendar/answer/6261951).
The cheapest checks come last, not first: internet connectivity, iOS version, and whether the Calendar app itself is current. Before spending more time on the phone, open calendar.google.com in a browser and look for the event there. If it's missing from the browser too, the problem sits upstream of the device entirely — no phone setting was ever going to fix it.
Which iPhone calendar setups keep breaking no matter what you fix?
Two setups on this list keep breaking no matter what gets fixed on the phone, because neither holds an authorisation of its own that outlives the moment it was set up.
The first is a subscribed link — an ICS or "secret address" URL. It refreshes on whatever schedule the subscribing app decides, and the publisher has no way to speed that up. Apple documents an Auto-refresh control in Calendar but doesn't publish what its intervals actually are. Google's "From URL" flow doesn't document an interval either. Microsoft is the one vendor that publishes numbers: Outlook.com refreshes a subscribed calendar approximately every 3 hours, with updates taking more than 24 hours in the worst case. Where Google calendar not syncing traces back to a link like this, the interval belongs to the subscribing app on the receiving end, not to anything the publisher controls.
The second is a device-level Google account connection. It lives on that one phone, so anything covered in the re-authorisation section above can break it again, and an MDM or Google Workspace admin policy change can end the connection without the user touching anything.
Neither setup writes anything into the iPhone's own calendar store that survives on its own.
How do you get a Google calendar onto an iPhone without it going stale?
Keeper.sh holds its own permission to your Google account, granted once when you connect it, separate from the phone, so a connection never depends on the iPhone's own connection to Google staying healthy. It writes real events into the destination calendar into the calendar itself — Google's events.import, a CalDAV PUT for iCloud — so they land as native entries, and no subscription refresh interval applies to them. Keep the two Keeper.sh mechanisms separate: an iCal feed is still a subscription, refreshed on the recipient's own schedule, while a connection lands within about a minute on Pro, since ingest runs every minute and destination push is enqueued immediately for Pro accounts (Free waits for the 30-minute push cron).
The limits are even-handed. An iCloud destination is timer-based for Keeper.sh too, since Apple publishes no push mechanism, and iCloud connections authenticate with an app-specific password, which Apple revokes automatically on any Apple Account password change (support.apple.com/en-us/102654). Keeper.sh cannot repair a Google account that has lost permission either — you sign in again there, the same as you would on the phone. What it removes is the phone's connection as something that has to keep working, because the events arrive in your iCloud calendar as ordinary entries.
Quick answers
How long should a Google Calendar event take to reach an iPhone? Minutes on a healthy account; slower points at the fetch interval above.
Does removing and re-adding the account delete events? It drops events until the first sync finishes — see re-authorisation above.
Why does it work on the web but not the phone? Fine at calendar.google.com but not iOS points at the device, not the account — see which kind of calendar you added.