I am looking to edit the file or reference that is used in the SQLite database that Outlook uses on the Mac. Instead of having to copy and paste an HTML signature in the Outlook program, I would like to paste the HTML code into the database. What programs and or resources would I need to view and edit this portion of the database that Outlook uses?

Database File

⁨Library⁩/Group Containers⁩/UBF8T346G9.Office⁩/Outlook⁩/Outlook 15 Profiles⁩/Main Profile⁩/Data⁩/Outlook.sqlite

2 Answers 2


Microsoft Outlook for Mac v16 stores signatures in a proprietary .olk15Signature (aka .olk15) file format under the directory /Users/youruserid/Library/Group Containers/<guid-like-string>.Office/Outlook/Outlook 15 Profiles/Main Profile/Data/Signatures/<NNN>/<guid>.olk15Signature. While .olk15 files do contain a section with UTF-16 encoded HTML, the header and footer formats are opaque. The Outlook.sqlite database's Signatures table stores references to the .olk15 files in its PathToDataFile column.


You can access it using the built-in SQLite program. In Terminal run the command “sqlite3” with the your Outlook.sqlite file as the parameter.

From there you can use SELECT commands to view data and UPDATE to change them. Check the SQLite home page for documentation, if you do not already know SQL.

  • Once I have the database file opened in SQLite3 in the command line. How do I find the reference to where Outlook stores the info for email signatures in the database file? I'm not seeing anything that would correlate to a signature if I make a new one in the Outlook as a basis to find the stored information for a signature. How would the signature data be stored in the SQLite database if it's an HTML file?
    – buzlink
    Nov 26, 2018 at 21:01
  • Data in SQLite files are organized in tables. Run the command ".tables" to get a list of the tables. If you cannot find something that sounds like signatures here, try ".schema" which will output the full definition of the database structure. After finding the correct table, you can view the contents with the command "SELECT * FROM <table>" where <table> is to be replaced with the table name you've found.
    – jksoegaard
    Nov 26, 2018 at 21:50
  • It seems there are two tables that would be what I'm looking for. One is called Signatures and the other is Signatures_OwnedBlocks. Signature displays "20" "Signatures/94/5EB871E2-9C0B-4114-8DF9-52AC5BDB9A57.olk15Signature" I tried opening this file, and it appears to be password protected. Signatures_OwnedBlocks displays 3 entries with 1399275892 as BlockTag
    – buzlink
    Nov 26, 2018 at 23:06

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .