Get Notifications When Your Messages Are Read in macOS Mail

Enable this hidden feature using Terminal

What to Know

  • In Terminal, enter the following command: defaults read com.apple.mail UserHeaders
  • If you receive a domain/default pair error, follow instructions below.
  • To disable, enter the following command in Terminal: defaults delete com.apple.mail UserHeaders

By default, macOS Mail does not support read receipts—notifications that the recipient of your email has opened it. However, you can use Terminal to make the necessary modifications, allowing you to confirm that an email at least hit your recipient's inbox. We'll tell you how to do this using any Mac running OS X 10.8 (Mountain Lion) or higher.

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

Here's how to enable this feature:

  1. Open Terminal, which can be found under ~/Applications/Utilities/.

    Terminal in macOS Finder
  2. At the prompt, type the following command, then press Return:

    defaults read com.apple.mail UserHeaders
  3. If the 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, and then press Return. For example:

    defaults write com.apple.mail UserHeaders '{"Disposition-Notification-To" = "Name 
  4. 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, take the following steps to finish setting up read receipt requests.

    Terminal app in macOS showing defaults write com.apple.mail UserHeaders
  5. Highlight the entire line. It might read something like {Bcc = "bcc@example.com"; }, for example.

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

    defaults write com.apple.mail UserHeaders 
  7. Put a space at the end of the line, and then single quote, and then paste what you just copied so that it shows up after what was just typed. End it with a single quote.

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

  9. Press Enter. The line might now read like this:

    defaults write com.apple.mail UserHeaders '{Bcc = "bcc@example.com"; "Disposition-Notification-To" = "John Doe "; }'

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.

To Disable Automatic Read Receipt Requests

Turning off this setting is just as easy. As above, open Terminal again. Simply type the following, then hit Enter.

defaults delete com.apple.mail UserHeaders 
Terminal app in macOS showing "defaults delete com.apple.mail UserHeaders" command
Was this page helpful?