Where apps hide your files
Notification Center stores its history in a SQLite file named db, inside a group container since Sequoia and in a temporary folder before that. This gives both paths, what the files are and how to reset a stuck Notification Center without damaging anything.
Since macOS 15 Sequoia, the Notification Center database is here:
~/Library/Group Containers/group.com.apple.usernoted/db2/db
On macOS 14 Sonoma and earlier it was in the per-user temporary area instead:
$(getconf DARWIN_USER_DIR)com.apple.notificationcenter/db2/db
That second path expands to a long folder under /var/folders/, which is why it was so hard to find by hand. Run getconf DARWIN_USER_DIR in Terminal to see the first part for your account. 9to5Mac reported the move into a group container with Sequoia, which puts the database behind macOS's privacy prompts. On the Sequoia Mac used for this guide the new path holds the live database, and the old folder still exists with only two leftover SQLite side files and no db.
These are the items listed by name, size and date on the Mac used for this guide (contents were not opened):
| Item | What it is |
|---|---|
db2/db | The main database, a SQLite file (just under 1 MB here). |
db2/db-wal and db2/db-shm | SQLite's write-ahead log and shared-memory file. They are normal while the database is in use, and the log can be larger than db itself. |
attachments/ | A folder beside db2, presumably for images and files that notifications carry. Empty on that Mac. |
GroupService, Library | Support folders for the notification service. |
If you see files named db.corrupt beside db, macOS probably set a damaged database aside and started a fresh one. There is nothing in them you need to recover.
Your per-app notification settings (banners, alerts, sounds, badges) are kept separately, in ~/Library/Preferences/com.apple.ncprefs.plist. That file holds settings, not notifications.
In Finder, choose Go > Go to Folder (⇧⌘G) and paste ~/Library/Group Containers/group.com.apple.usernoted. From Terminal:
open ~/Library/Group\ Containers/group.com.apple.usernoted
Group containers are protected. If Terminal reports "Operation not permitted", either use Finder or give your terminal app Full Disk Access in System Settings > Privacy & Security > Full Disk Access. That is your decision to make: it lets the terminal read all of your data, including messages.
There is no export button. The database holds the content of your notifications (senders, previews and message text from apps such as Messages, Mail and chat apps), which is why Apple moved it behind privacy protection. Treat a copy like a copy of your messages: do not email it, paste it into a chat or upload it anywhere.
Never open the live file with a tool that can write to it. If you need to read it, copy db, db-wal and db-shm together to a scratch folder and open the copy read-only, because the three files have to stay consistent.
For everyday purposes the supported routes are better:
If notifications stop appearing or old ones will not clear, do not start with the database. Restart the Mac, or restart the two processes that own it:
killall NotificationCenter
killall usernoted
Both are launch agents that macOS marks to keep alive, so they start again by themselves within seconds. These commands delete nothing: any banner on screen closes, and your history stays.
Only if that fails is moving the database aside worth trying, and it is a last resort that empties your notification history:
db2 folder from the group container to your Desktop. Do not delete it; that copy is your way back.db2 folder and works.This was not run on the Mac used for this guide.
The database is small: under a megabyte on the Mac used for this guide, with a write-ahead log of about the same size. Only the attachments folder could grow, and it was empty there, so this is never where your disk space went.
Do not copy it across. Notification history is not worth carrying over, and a database copied between Macs or macOS versions may not open. Set your per-app notification choices again in System Settings > Notifications, or let Migration Assistant bring your preferences.
The database is inside ~/Library/Group Containers, and the file is called just db, with no extension. Spotlight and Finder searches leave out ~/Library, and a search for "notification" turns up the settings pane and unrelated files, never the database.
The name to remember is usernoted. Typing it in Everywhere lists the group container and its db2 folder, and typing com.apple.notificationcenter finds the old Sonoma-era folder under /var/folders, so you can see at once which one holds a live database. Group containers are protected folders, so the new location appears once Everywhere has Full Disk Access. It matches names only, so it shows where the files are and never what is in them.
On Sequoia and later: ~/Library/Group Containers/group.com.apple.usernoted/db2/db. On Sonoma and earlier: $(getconf DARWIN_USER_DIR)com.apple.notificationcenter/db2/db, under /var/folders.
Not through any menu. It is a SQLite database holding the content of your notifications, so it is private and should only be opened as a copy, never the live file. Check the app that sent the notification first.
Restart the Mac, or run killall NotificationCenter and killall usernoted in Terminal; macOS starts both again on its own. Moving the db2 folder aside is a last resort that clears your history.
Group containers are protected by macOS privacy controls. Open the folder in Finder, or give your terminal app Full Disk Access in System Settings > Privacy & Security.
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