We strongly recommend making frequent backup archives of your calendars.
Cloud-based calendar syncing can be confusing, especially if you already have calendars that reside locally on your computer and devices. If you have not yet synced your calendars with iCloud and they exist locally and only on your computer, as shown in the Calendar app under the header “On My Mac”, we absolutely recommend making a backup archive of your calendars prior to signing into and syncing calendars with iCloud.
Sync is NOT backup!
If you have all of your calendars synced already, but accidentally delete a synced calendar from the Calendar app, it will delete that calendar and all associated events from your iCloud account as well. Those calendars and events will not be retained in the cloud or accessible from the web-based iCloud interface. The effects are permanent. Sync is NOT backup!
What happens during the initial sync
If you have existing calendars stored on your computer and you have never signed into iCloud, use caution when choosing what services you want iCloud to sync and what data you want merged from your computer into your iCloud account.
Those local calendars will no longer be local once you turn on iCloud sync. If you sign into iCloud from System Preferences or Calendar app Preferences Account tab and inadvertently choose to sync Calendars/Contacts/Notes, iCloud will NOT prompt you with the choice to merge all existing calendars into your iCloud account or leave them as they are locally (“On My Mac”).
When Calendar app is refreshed or is opened for the first time after iCloud sync has been switched on, iCloud will automatically begin to merge all existing “On My Mac” calendars into your iCloud account. There is no major indication that this is what will happen until it’s too late. Choosing to Force Quit Calendar app or System Preferences or shut down your computer in the midst of the process has no effect on this action, and your calendars will not revert back to the state prior to the start of the sync.
Sometimes the initial sync operation gets stuck or partially fails, leaving you with corrupt databases and events scattered amidst multiple calendars, or events that go missing altogether — more reasons why we adamantly encourage developing the habit of periodically creating your own calendar backup archives.
Unsyncing versus Deleting
Unsyncing: Signing out of iCloud from Calendars app or System Preferences on your Mac, or deselecting calendars from syncing from within the iCloud pane of System Preferences, will present a choice to you to either “keep a local copy” on your Mac or “delete from your Mac”. The calendar data are still retained in your iCloud account and accessible from the iCloud web interface, regardless of what you choose at this prompt.
If, however, you delete an iCloud-associated calendar within Calendars app while still signed into iCloud/currently syncing with iCloud, that calendar would be removed from your Mac, any other associated devices that are currently synced, and from your iCloud data accessible from the iCloud web interface. Without a backup file that you create, there is no option for recovery.
Periodically export iCloud calendars by following this process:
1. In Finder, create a folder in which you will permanently store exported calendar databases
2. Click on the calendar name in the left sidebar of Calendar app
3. Click “File” menu, Export —> click “Export"
4. Save the .ics file to the folder you created in Step 1
If an iCloud calendar is deleted in error from your iCloud account, you can use the following process to restore it from a .ics file you created in the past:
1. On the computer on which you are signed into iCloud and have calendar syncing turned on, in the Calendar app, click “File” menu, New Calendar, and click “iCloud"
2. Input a name for the calendar, preferably using the same name of the calendar that you deleted in error
3. Click “File” menu, Import, find the .ics file that you created in the past, and click “Import"
4. From the drop-down list, choose the new empty iCloud calendar you just created in Step 2 and click “OK” — the events will be imported into the new iCloud calendar, which will then be synced on all your devices associated with iCloud
If you have iCloud enabled for calendars and want to move a calendar out of iCloud that was synced by mistake into iCloud, or perhaps you want some calendars to reside only locally on your computer or within another cloud-based account such as your Gmail or work-related account:
1. In Calendar app, export the iCloud-associated calendar using the process above ("Periodically export iCloud calendars”) to create the .ics file
2. In Calendar app, go to “Calendar” menu, choose Preferences”, click the “Accounts” tab, then click on the “iCloud” button in the left pane
3. Untick the “Enable this Account” box
4. Go to “File” menu, click New Calendar and choose “On my Mac” or choose the other calendar account name (such as your Google account), rename the calendar from “untitled” to the name of your choosing
5. Re-tick the “Enable this Account” box in the same location that you unticked it in steps 2 and 3, close the Calendar Preferences window
6. Click “File” menu, Import, find the .ics file that you created in step 1, and click “Import"
7. From the drop-down list, choose the new empty calendar you just created in Step 4 and click “OK” — the events will be imported into the new calendar
8. Once you have verified that your calendar events are present in the new calendar, delete the duplicate (now obsolete) calendar from iCloud