MailSignals

Guide

What Apple Mail Privacy Protection does to open tracking

Apple downloads your tracking pixel on delivery, before anyone reads the message. What that request looks like, why it should never count as an open, and what you can still learn from it.

What Mail Privacy Protection does

Since 2021, Apple Mail on iPhone, iPad and Mac offers Mail Privacy Protection, and most people accept the prompt to turn it on. With it on, Mail does two things that matter to a tracker. It loads remote content, including tracking pixels, through Apple's own proxy rather than from the reader's device, so the tracker sees Apple's network and not the reader's. And it may load that content in the background, when the message arrives, whether or not anyone ever opens it.

The second part is the one that breaks open tracking. A fetch used to mean "someone displayed this message". From an Apple Mail user it now means "this message was delivered to a device", and nothing more.

What the request looks like to a tracker

The proxy presents a short, generic user agent: Mozilla/5.0 with no product token after it. Real browsers append one (Chrome, Firefox, Edge, a versioned Safari). The request comes from Apple's address ranges. Together those two signals identify it; either alone is unreliable, because plenty of scripts send a bare Mozilla string and plenty of legitimate traffic comes from Apple's network.

Two more things follow. The reader's location is gone: the network is Apple's, not theirs. And the timing is meaningless as a measure of attention: the fetch happens close to delivery, often within seconds of sending, and repeat displays may never produce another fetch.

Why it must never count as an open

A tracker that counts these fetches reports an open for every Apple Mail recipient, read or not, usually a few seconds after sending. That inflates open rates by exactly the share of your audience on Apple Mail, and it stamps "opened at" with the delivery time. Someone who acts on that number, chasing a "hot" lead who never looked, is acting on nothing.

A tracker that silently drops them throws away real information: the message reached a device, the address is live, and the pixel loaded, which rules out a bounce and most filtering. The honest position is neither. It is to report delivery as delivery.

What you can still learn from it

  • Delivery. The message reached an Apple Mail client. That is more than a plain "sent".
  • Clicks are unaffected. Privacy Protection proxies images; a person still follows a link with their own device and browser. A click from an Apple Mail reader is as real as any other, and it is the signal to weight.
  • Replies are unaffected, for the same reason.
  • Nothing about who, where or when. Do not try to recover it; the whole point of the feature is that it is not there.

What MailSignals does with it

  1. +3 s Delivered, open unconfirmed · 80% sure Pixel loaded Apple Mail Privacy Protection downloaded the image on delivery. The message reached the device, but we cannot tell whether it was read. Who: Nobody yet: the recipient's mail app fetched it on delivery.
  2. +2 h 15 min Opened Link clicked A mail client downloaded the image directly (Safari on iPhone), which happens when someone displays the message. Who: The recipient, on their own device.
A message to an Apple Mail reader. The delivery fetch is recorded as delivery; the click two hours later is the first real evidence of a person.

The classifier has a rule for exactly this request: an Apple network plus the generic Mozilla user agent, at confidence 0.80, with the verdict unconfirmed prefetch. It sits after the scanner rules, because a scanner on an Apple network is still a scanner, and before the too-fast rule, because a legitimate prefetch arrives within seconds of delivery.

  • ✓✓ Kenji Sato Invoice 0142 — Payment terms as agreed Yesterday Delivered to Apple Mail, which loads images before anyone reads them
In Gmail: an amber double tick, and a tooltip that says what happened.
How an Apple prefetch appears across the product
WhereWhat you see
Gmail rowAn amber ✓✓ rather than a green one; the status is "Delivered"
Tooltip"Delivered to Apple Mail, which loads images before anyone reads them"
Dashboard overviewCounted in an "also delivered, unconfirmed" line, never inside the open rate
Detail pageThe reason above, and the Who line "Nobody yet: the recipient's mail app fetched it on delivery."
AlertsNone at the default sensitivity, because only counted events can alert
SensitivityNormal (the default) does not count it; lenient does, if you would rather treat delivery as a read

Related: the rule table · Gmail's proxy, the other big one · why clicks survive image blocking.

Run it in your own project.

One Firebase project, two subdomains, one deploy script. About an hour the first time, and no subscription afterwards.