Where apps hide your files
Calendar has no folder of event files: on recent macOS everything sits in one database in a group container. Here is the exact path, what the neighbouring files are, and how to export a copy you can actually open.
On recent macOS (checked on Sequoia 15.6), Calendar keeps its events in one SQLite database inside a group container:
~/Library/Group Containers/group.com.apple.calendar/Calendar.sqlitedb
Next to it are Calendar.sqlitedb-shm and Calendar.sqlitedb-wal (the write-ahead log, which holds recent changes not yet merged into the main file). The three belong together. A smaller Extras.db, with its own -shm and -wal, sits beside them.
There is no folder of .ics files. Calendars from iCloud, Google, Exchange and CalDAV accounts all end up in that one database, which Calendar and its background service read and write. If you want a file you can open or send, you create it by exporting.
In Finder choose Go > Go to Folder (⇧⌘G) and paste the path. Or in Terminal:
open ~/Library/Group\ Containers/group.com.apple.calendar
To see just the names inside, without opening anything:
ls ~/Library/Group\ Containers/group.com.apple.calendar
| Item | What it is |
|---|---|
Calendar.sqlitedb | The main database: events, calendars, alerts, invitees |
Calendar.sqlitedb-wal, -shm | Write-ahead log and shared memory for the database |
Extras.db | A second, smaller database, with its own -wal and -shm |
Notifications.Calendar.* | Small files whose names point to alert and notification state |
Pending Events | A folder that is usually empty |
Library | The container's own Application Scripts, Application Support, Caches and Preferences |
Apple does not document these files individually, so read the descriptions as what the names indicate. The whole folder was about 23 MB on the Mac checked, with years of events, because attachments and server copies live with your account provider rather than here.
Older releases kept calendars under ~/Library/Calendars, with a folder per account or calendar and a Calendar Cache database. On the Sequoia Mac checked, ~/Library/Calendars still exists but holds only sync bookkeeping (Calendar Sync Changes, NotificationIconCache). If a tutorial sends you there for your events and the folder looks empty, check the group container above. Apple has not published which release made the move, so look at both:
ls ~/Library/Calendars
Do not treat a copy of the .sqlitedb file as your backup. Use Calendar's own export, under File > Export:
.icbu file containing all your calendars.To restore an archive, choose File > Import in Calendar and select it. Apple warns that importing a calendar archive replaces all of your current calendar information, so do it on a fresh setup, not on top of calendars you are still using.
Before a clean install or before signing out of an account, make both. The .ics files are the portable copy and the archive is the complete one.
If your calendars are on iCloud, Google or Exchange, the master copy is on the server and a new Mac rebuilds the local database when you add the account. Calendars under On My Mac in the sidebar exist only on this Mac, so export those. Time Machine and Migration Assistant carry the group container across as well, but an exported archive is the copy you can open and check.
The database rarely needs cleaning. If Calendar shows stale events or misses changes, the fix is not deleting files. Try View > Refresh Calendars first. If that does not help, choose Calendar > Accounts and turn the problem account's calendars off and back on in the settings that open.
Never delete Calendar.sqlitedb or any one of its companion files. A background service keeps them open even when the Calendar app is closed, the log and the main file must match, and On My Mac events deleted this way are gone unless you have an export or a Time Machine copy.
Spotlight and Finder searches leave out files in ~/Library, so typing "Calendar.sqlitedb" into Finder's search shows nothing even though the file is there. Spotlight can still show individual events, because it gets them from Calendar rather than from the files.
The database is SQLite, so a developer could open it with a SQLite browser. Do that only on a copy, never on the live file, and remember it holds every event title, location and invitee address you have. Calendar and its service rewrite the live file constantly, and the wrong tool can damage it. For almost everyone, an exported .ics opened in a text editor is the safer way to check that an event exists.
Calendars you subscribe to by web address (holidays, sports fixtures) are downloaded again on a schedule, so there is little point backing them up. Calendars other people share with you are stored on their server and mirrored into the same local database. Exporting a shared calendar gives you a snapshot of its events as they are now, not a live link.
Group containers and external drives are both places macOS keeps from other apps, so Everywhere needs Full Disk Access, which it asks for during setup, before it can list them. With that granted, typing Calendar.sqlitedb shows the live database in its group container, and typing icbu lists every calendar archive you have exported, including one on a backup drive that is not plugged in. Press ⌘↵ on a result to reveal it in Finder. It matches file names only, not the events inside.
On recent macOS, in a SQLite database at ~/Library/Group Containers/group.com.apple.calendar/Calendar.sqlitedb. Older releases used ~/Library/Calendars.
Open Calendar and choose File > Export > Calendar Archive to save a .icbu file. For a single calendar as .ics, select it and choose File > Export > Export.
It is not the supported route, and the file needs its -wal and -shm companions to match. Export a Calendar Archive, or let iCloud or your account provider rebuild the data.
They are inside ~/Library, which Finder and Spotlight searches leave out, and they are database files rather than one file per event.
Everywhere keeps track of every file on your Mac — including the folders Spotlight hides and drives you have unplugged. Free for a day, then $19 once.
Version 2.20.3 · macOS 13+ · 4.7 MB · notarised