Get Notifications When Your Messages Are Read in macOS Mail

Gift card receipt close-up
igor kisselev, / Getty Images

When you send an email in the Mail app on your Mac, the message is usually delivered to the recipient promptly and without issues. To get alerted when the recipient opens the email, you can request read receipts.

Typically, the recipient is asked to confirm that the message has been opened, after which you'll get a message that says that they read your email. While this isn't an actual guarantee that the content was read or understood, it does confirm that it hit their Inbox and you can rule out delivery failure.


macOS Mail doesn't support read receipts by default. If you're comfortable working in Terminal mode, you can make the necessary modifications and start requesting read receipts from your email recipients.

Screenshot of the defaults read command in Terminal on macOS High Sierra

Open Terminal. You can find it in Finder > Application > Utilities.

Type the following and press Enter:

 defaults read UserHeaders

If that command returns an error that reads, "The domain/default pair of (, UserHeaders) does not exist," type the following, replacing Name and email@address with your own:

defaults write UserHeaders '{"Disposition-Notification-To" = "Name <email@address>"; }'

For example, the complete line could read something like defaults write UserHeaders '{"Disposition-Notification-To" = "Heinz Tschabitscher <>"; }'.

If the second command above worked, repeat the first one.

You're done at this point unless the "defaults read" command above returns a line of values that starts with { and ends in }. If so, there's a bit more you need to do to finish setting up read receipt requests.

Screenshot of the userheaders write command in Terminal on macOS High Sierra

Highlight the entire line. It might read something like {Bcc = ""; }, for example.

Copy that highlighted line with the Command+C shortcut, but don't paste it yet. Instead, type this (but don't press Enter yet):

defaults write UserHeaders

Put a space at the end of the line followed by a single quote, and then paste (Command+V) what you just copied so that it shows up after what was just typed. End it with a single quote.

Insert "Disposition-Notification-To" = "Name <email@address>"; ' in front of the closing } character, again, replacing Name with your name and email@address with your email address.

The line might now read like this: defaults write UserHeaders '{Bcc = ""; "Disposition-Notification-To" = "Heinz Tschabitscher <>"; }'.

Press Enter.

For full knowledge and control over the fate of the emails you send in macOS Mail, you can employ a certified email service or use third-party software such as iReceipt Mail.

Disable Automatic Read Receipt Requests

It's just as easy to turn off requesting a read receipt for every message. As with the above instructions, you need to open Terminal again.

Screenshot showing how to delete custom user headers in macOS High Sierra