Get Notifications When Your Messages Are Read in OS X Mail

Use a Terminal command to see when someone opens your email

Gift card receipt close-up
igor kisselev, www.close-up.biz / 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. However, you can verify that the email was delivered by requested 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 can rule out things like delivery failure.

Directions

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.

  1. Open Terminal. You can find it in Finder > Application > Utilities.
  2. Type the following and press Enter:
     defaults read com.apple.mail UserHeaders
    1. If that command returns an error that reads "The domain/default pair of (com.apple.mail, UserHeaders) does not exist," type the following, replacing Name and email@address with your own:
      defaults write com.apple.mail UserHeaders '{"Disposition-Notification-To" = "Name <email@address>"; }'
    2. For example, the complete line could read something like defaults write com.apple.mail UserHeaders '{"Disposition-Notification-To" = "Heinz Tschabitscher <sender@example.com>"; }'.
    3. 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.

  1. Highlight the entire line. It might read something like {Bcc = "bcc@example.com"; }, for example.
  2. 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 com.apple.mail UserHeaders
  3. 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.
  4. 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.
    1. The line might now read like this: defaults write com.apple.mail UserHeaders '{Bcc = "bcc@example.com"; "Disposition-Notification-To" = "Heinz Tschabitscher <sender@example.com>"; }'.
  5. Press Enter.

Tip: 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. Just like the above instructions, you need to open Terminal again.

Type the following command to delete all custom headers:

defaults delete com.apple.mail UserHeaders

Or, set UserHeaders back to what it was before you added Disposition-Notification-To.