Notix
Learn

Open tracking is a pixel. Treat the number accordingly.

Every email analytics dashboard shows opens, and most of them are wrong by an amount nobody can measure. This page explains the mechanism, what changed in 2021, which numbers you can build on, and exactly how tracking is switched on in Notix.

Two mechanisms

Opens and clicks are tracked in different ways, and the difference is why one is reliable and the other is not.

The open pixel

A one-pixel image is added to the HTML with a URL unique to the message and recipient. When the mail client loads remote images, the fetch is recorded as an open. No images loaded, no open; images loaded by a machine, an open with nobody there.

The rewritten link

Each link in the HTML is replaced with a tracking URL that records the click and redirects to the original address. A click needs a deliberate action, so it is a far better engagement signal, with security scanners the main noise.

What changed in 2021

Apple's Mail Privacy Protection, introduced with iOS 15 and macOS Monterey, changed what an open means. Apple describes it plainly: Mail “downloads remote content in the background by default, regardless of whether you engage with the email,” and routes the download through two relays so that neither one knows both the reader's IP address and the content (Apple, Mail Privacy Protection & Privacy, read on 2026-09-13). Every message to an Apple Mail user with the feature on registers an open at delivery, from an Apple IP, whether or not anyone looked. Corporate security gateways do the same to scan images.

Which numbers to trust

The six counters on the Notix dashboard, per domain and per day, ordered by how much weight they can carry.

Email metrics, where each comes from and how far to trust it
MetricWhere it comes fromHow far to trust it
SentAccepted by the API and handed to the receiving server.Exact.
DeliveredThe receiving server accepted the message.Exact. Accepted is not read, but it is the denominator for everything else.
BouncedThe receiving server refused, permanently or temporarily.Exact, with the reason per recipient.
ComplainedA recipient marked the message as spam and the provider reported it.Exact for providers with feedback loops; Gmail reports rates, not individuals.
ClickedA rewritten link was followed.Good. Some security scanners follow links; a click within a second of delivery is usually a scanner.
OpenedA one-pixel image in the HTML was fetched.Weak. Prefetched by Apple Mail and some corporate gateways whether or not anyone looked.

Use delivered as the denominator and clicks as the engagement signal. Treat opens as an upper bound that is useful for spotting a broken template (opens fall to zero) and useless for ranking subject lines. Bounce and complaint rates are the two that mailbox providers judge you on; they are charted against the limits on the deliverability page.

How tracking is switched on in Notix

Per sending domain, not per message. Two switches on the domain's page in the dashboard, both off for a new domain.

  • Open tracking adds the pixel to HTML mail from that domain.
  • Click tracking rewrites links in HTML mail from that domain.
  • The setting is read at send time for every message from the domain. There is no per-message override, so a message whose links must reach the reader untouched, such as a magic link, should go from a domain with click tracking off.

Opens and clicks as webhook events

Subscribe an endpoint to email.opened and email.clicked and each event arrives signed, with the message id, recipients and subject, and the open or click details. The user agent and platform are what let you discount a machine open.

email.opened
{
  "type": "email.opened",
  "data": {
    "id": "email_01j9x2mz",
    "to": ["someone@example.com"],
    "subject": "Your September statement",
    "open": {
      "timestamp": "2026-09-13T10:30:12Z",
      "userAgent": "Mozilla/5.0 ... AppleWebKit/605.1.15 ...",
      "ip": "17.57.144.10",
      "platform": "Apple Mail"
    }
  }
}
email.clicked
{
  "type": "email.clicked",
  "data": {
    "id": "email_01j9x2mz",
    "to": ["someone@example.com"],
    "click": {
      "timestamp": "2026-09-13T10:31:40Z",
      "url": "https://acme.com/statements/september",
      "userAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 19_0 ...)",
      "platform": "Mobile"
    }
  }
}

Signature verification and the full event list are in the webhook guide and the docs.

How does email open tracking work?
The sending service adds a one-pixel image to the HTML with a URL unique to that message and recipient. When a mail client loads remote images, it fetches the pixel, and the fetch is recorded as an open. That is the whole mechanism. It fails when images are blocked (no open is recorded although the mail was read) and it fires when something other than a person loads the image (an open is recorded although nobody looked).
Why are my open rates higher than they used to be?
Apple Mail Privacy Protection. Since iOS 15 and macOS Monterey, Mail on Apple devices downloads remote content in the background by default, whether or not the person engages with the email, and routes it through relays that hide the reader's IP address. Every message to an Apple Mail user with the feature on registers an open at delivery time. Depending on your audience that inflates opens by a large, unknowable margin, which is why the number cannot be used as engagement on its own.
Which email metrics can I trust?
Delivered, bounced and complained are reported by the receiving server and are exact. Clicks are recorded when a rewritten link is followed and are close to exact, with security scanners the main noise; a click a second after delivery is usually a scanner. Opens are the weak one. Use delivered as the denominator, clicks as the engagement signal, and opens as a rough upper bound.
How do I turn open or click tracking on or off in Notix?
Per sending domain, on the domain's page in the dashboard: two switches, open tracking and click tracking, both off for a new domain. The setting is read at send time for every message from that domain. There is no per-message switch, so if one kind of message must never be rewritten (a sign-in link, say), send it from a domain or subdomain with click tracking off.
Does click tracking change my links?
Yes. With click tracking on, each link in the HTML is rewritten to a tracking URL that records the click and redirects to the original address. Readers see the tracking host when they hover. For links that carry a secret, such as a magic link or a password reset, keep tracking off on that domain so the URL reaches the reader untouched.
Can I get opens and clicks into my own system?
Yes. Subscribe a webhook to email.opened and email.clicked. Each event carries the email id, the recipients and subject, and an open or click object with a timestamp, the user agent, the IP where available, the platform, and for clicks the URL. The same six counters (sent, delivered, opened, clicked, bounced, complained) are on the dashboard per domain and per day.

Send your first email in five minutes.

Verify a domain, copy an API key, make one call. The free plan does not ask for a card.