WindowsmacOSLinux

Where Does Signal Desktop Store Messages?

Signal Desktop keeps messages in one encrypted sql database. Folder paths for Windows, Mac and Linux, plus how to export a readable copy.

Last updated

Signal Desktop keeps its messages in a single SQLite database inside the app's data folder rather than scattered across loose files. The same folder holds attachments, drafts and logs, which makes it worth knowing where it is when you clean up a machine.

Copying that folder does not give you a readable transcript. The database is encrypted, and the key is wrapped by the operating system's credential store and tied to your user account, so it will not open anywhere else. Use the export built into the app instead.

Where Signal Desktop stores this, by platform

Windows
%APPDATA%\Signal\sql\db.sqlite

That expands to C:\Users\<username>\AppData\Roaming\Signal\sql\db.sqlite, with attachments in attachments.noindex beside the sql folder. The path has not moved between versions, but the key in config.json changed: it used to sit there as plain text and is now wrapped by Windows DPAPI with a blob in Local State, so the pair is useless outside your account.

macOS
~/Library/Application Support/Signal/sql/db.sqlite

Same layout as Windows, with attachments under attachments.noindex. The key is held in your login keychain as the Signal Safe Storage item, which is why a copied folder opens nowhere else.

Linux
~/.config/Signal/sql/db.sqlite

Applies to the deb and rpm installs; the key comes from the desktop keyring. Flatpak builds keep the identical folder under ~/.var/app/org.signal.Signal/config/Signal instead.

Frequently asked questions

can i read my signal messages by copying the folder

No. The database is SQLCipher encrypted and the key is wrapped by DPAPI, the macOS Keychain or a Linux keyring, so a copied folder on another machine cannot be opened. Signal also tells you not to move the files by hand.

how do i export my signal messages

Recent desktop builds have Settings > Chats > Export chat history. Choose whether to include media, confirm the warning about the unprotected file, and Signal writes a JSON export to a folder you pick.

where are signal desktop attachments stored

In an attachments.noindex folder next to the sql database: %APPDATA%\Signal on Windows, ~/Library/Application Support/Signal on a Mac and ~/.config/Signal on Linux. The database only keeps references to those files.

Notice an outdated path? Let us know.