There are plenty of tutorials online to create an HTML signature in Apple Mail with older versions of macOS/OS X. You can even find one of my other tutorials on how to add HTML Signatures in Lion, Mountain Lion, iOS 7, Mavericks, Yosemite, El Capitan, Sierra, High Sierra, or Mojave. However, the process has changed ever so slightly for the new macOS Catalina (10.15). Here is how to do it:
In Apple Mail, open
Once open, create a new signature.
Name the signature something meaningful in the central column. Replace the signature contents on the right with some placeholder text. This text should be recognizable to you as we will use it to help identify the correct signature system file later.
Always match my default fontcheckbox is
Associate the new placeholder signature with one of your email accounts by dragging its name from the second column to an email account in the first column.
If you want to setup the signature to be the default for an email account with auto-load when starting a new message, select the email account in the first column, and choose the new signature.
Preferenceswindow to save it, then Quit Apple Mail.
Write an html page inside of your favorite text editor. I use Sublime Text 3. Please do NOT use Microsoft Word, Dreamweaver or any other “smart” editor as these programs will manipulate your final code in a way which will most likely break your design for certain recipients.
The page should not have
headtags. It should include only inline css, and should only consist of basic html elements (
a, etc…). Even though many email programs now support more advanced tags, there is still a large percentage of people who use older versions of Outlook and other software, and you want your signature to look great for them too.
Here is some example code to get you started.
We are going to be using TextEdit to open code files in the following steps, so we need to ensure that it is setup properly to display the raw HTML code.
Open a TextEdit.app, found in
Applications, start a new document, and open
Open and Save.
Ensure that the checkmark next to
Display HTML files as HTML code instead of formatted textis ticked.
Preferencespanel, and close the new document.
We are going to need to locate the folder containing the placeholder signature. Unfortunately, most of you are not going to be able to use Finder to get to these folders.
Apple goes to great lengths to hide these files from people as they usually contain info that is not usually editable by hand. Trying to navigate to them by clicking in Finder will usually lead you to your visible
iCloud Drivefolder with nowhere else to go. Don’t worry though, I will walk you through an alternative method of getting to the hidden signature files we need to work with.
The files can be in 2 different places depending on whether you are using iCloud Drive or not. You are most likely using iCloud Drive, even if you are not using an iCloud email address. Check to see if you’re using iCloud Drive by going to
…then look to see if the
iCloud Drivecheckbox is ticked or not.
iCloud Driveis enabled for Mail by clicking the
Optionsbutton and ensuring the checkbox next to
If both of these checkmarks are ticked, then you are using iCloud Drive and should proceed to the next step. If not, skip ahead to step 12.
(You should only do this step if using iCloud Drive.)
Open Terminal.app, found in
Applications > Utilities, and copy/paste the following line into the box and press enter.
ls -laht ~/Library/Mobile\ Documents/com\~apple\~mail/Data/V4/Signatures/
This line tells Terminal to list all the files in this directory along with some other file info, then sort it by date. When you press enter you should see a bunch of lines, each of which corresponds to a file and some of its metadata. Look at the right side column — the file names — and notice the ones that end in
.mailsignature. These are the files we are interested in working with.
If you get an error, make sure you pasted the line in exactly like shown on one line. If you still get an error, you may not be using iCloud Drive and are following the wrong step.
In the new lines that come up in Terminal after running the command, you should see a .mailsignature file that has the date and time of when you started this tutorial. This is the placeholder file. If you don’t see a file, then you may have done something wrong in a previous step, and should try again.
As mentioned above, we could normally use Finder to view these folders, but Apple has hidden access to them to prevent direct editing, something we wish to do here. If you have only 1 .mailsignature file, then this is most likely the placeholder file you created in the earlier steps. If you have more than one .mailsignature file in there, then you need to find the one you created earlier. Because this list is sorted top-down by the most recently updated, it will most likely be the top one, but you can check by opening them all and seeing their contents.
Terminal.app does not respond to double-clicking the file so how can you open the .mailsignature files? You can copy/paste the following command on the keyboard, all on one line.
open -a TextEdit ~/Library/Mobile\ Documents/com\~apple\~mail/Data/V4/Signatures/*.mailsignature
This line tells Terminal to open all files in that directory that have a filename that ends with
.mailsignature, and to open them using the TextEdit application.
Once you have the file(s) open in TextEdit, move on to step 13.
(You should only do this step if NOT using iCloud Drive.)
Luckily for you, we can use Finder to open the signature file we need. In Finder, select the menu bar item
Go to Folder...
A panel will popup that allows you to input the direct path to the signature folder. Copy/paste the following line into the box:
Go, a finder window should appear with several files.
Look at the file names and notice the ones that end in
.mailsignature. These are the files we are interested in working with. More specifically, we are looking for the placeholder signature file you created earlier. Locate the most recently modified .mailsignature file.
If you have more than one signature file in there, or cannot determine which is the placeholder, you can open each of them to help you find the right file. Simply repeat the following process for all the files.
Right-click on the .mailsignature file in Finder, select
Open With, and choose TextEdit.
If TextEdit is not an option, choose
Other..., and then choose
Once you have the file(s) open in TextEdit, move on to step 13.
Now that you have the .mailsignature file(s) open in TextEdit, we need to ensure it is the right one. Make sure that the placeholder file we created earlier is open by scanning each of the open TextEdit documents for the placeholder text you entered earlier in the Mail.app
Because the text I entered earlier was
Placeholder text, this is what I am looking for now.
Look for your placeholder text within the file’s HTML code. Here, we know we have the correct file because we can clearly see our placeholder text:
If you cannot find the placeholder, you may still be in “edit” mode on the signature. Try closing the
PreferencesWindow, quitting Apple Mail and repeating the previous steps.
If you still cannot find the placeholder, you may need to double check that you are/aren’t using iCloud Drive, as detailed in an earlier step.
When you have located the right placeholder
.mailsignaturefile, keep it open and close all other TextEdit windows. Feel free to resize the window to make text editing a bit easier. You will see a few metadata lines on the top of the file and some HTML code below it. Select all that code from the line starting with
body, all the way to the end of the file.
Keep the top metadata lines, delete the entire block of placeholder HTML code.
Still keeping the top metadata lines, paste in your own custom HTML code from earlier.
Save and close the file, then
If you are using iCloud Drive, skip this step and proceed to the next step. You can determine if you are using iCloud for Apple Mail by checking System Preferences > iCloud. Still unsure? Skip this step — you can redo the steps and include this one if your signature is not working correctly at the end.
Even though you saved this file, Apple Mail may use the original version and overwrite your new signature unless you lock the file. With your text editor now closed and the file saved, openLock Files:
Terminal.app, paste the following line, and press enter to lock all the
.mailsignaturefiles in the folder.
chflags uchg ~/Library/Mail/V6/MailData/Signatures/*.mailsignature
If you get an
Operation not permittederror, you need to open
Security & Privacy>
Privacy, then select
Full Disk Accesson the left column, and ensure Terminal is on the list in the right. You may need to tick the checkbox next to it, or use the
+button to add it. Then restart Terminal and try again.
If you mess up, you can unlock the files with this command.Unlock Files:
chflags nouchg ~/Library/Mail/V6/MailData/Signatures/*.mailsignature
Open Apple Mail and go back to
Signatures. If you have images in your signature, they will not show here in the preview, but they will show in the real signature as long as your coded image source location is valid.
To test that it is working correctly, simply compose a new email using the account you associated this new signature with, and set the signature (right side of screen) to be the one with the name you created earlier. If the images show, and everything looks as it should, you have succeeded!
If you need additional help with html signature design or implementation, I have founded a company called GiantUser (it’s an anagram of “signature”) to do just that with very reasonable prices. Check it out!