Open rate inflation makes your event email reporting look better than it is
Open rate inflation happens because mail privacy services fetch remote images automatically, whether or not a person reads the message. An open now measures delivery infrastructure, so event email reporting should run on clicks per delivered and registrations per delivered, with opens kept for deliverability checks only.
Your email report for the last edition shows an open rate of 41 per cent against 22 per cent the year before. Somebody has already put it in a partner deck under the heading engagement. Registrations from email over the same period went from 11.2 per thousand delivered to 10.9.
Open rate inflation is the reason those two numbers point in opposite directions, and it is not a measurement error you can correct with a better ESP. The pixel that records an open is now fetched by software on the recipient's behalf, so a rising open rate can mean nothing more than that more of your list moved to a mail client that prefetches images.
What an open actually measures now
An open is recorded when a one pixel image hosted on the sending platform is requested. That was always a proxy for a human reading a message, and it was always imperfect, because a reader with images blocked never registered.
Apple's Mail Privacy Protection, introduced in 2021, changed the direction of the error. Apple's own description of the feature says Protect Mail Activity downloads remote content in the background by default, whether or not the recipient engages with the email, and that it routes that content through two relays operated by different entities, where the first knows the IP address but not the content and the second knows the content but not the IP address. Read that as an engineer would. The image is fetched for messages nobody opened, and the connection that fetches it carries a generalised identity, not the reader's.
So two things broke at once. The open count went up, and every attribute you used to infer from an open went wrong. Open location is the relay's location. Open device is not the reader's device. Open time is when the infrastructure decided to fetch. Nobody had read anything at that point, and many of them never will.
Gmail's handling has the same consequence by a different route. Google's Gmail documentation, current in 2026, states plainly that senders cannot use image loading to get information about a recipient's computer or location, and that Google scans images before they are received. The images display, the request comes from Google, and what you learn about the person is nothing.
Why did the open rate jump without anything improving?
Because your list composition changed and the feature adoption grew, and both of those are invisible in an open rate.
A senior buyer audience skews heavily to phones and to Apple Mail. A younger operational audience skews to a webmail client on a laptop. Two segments with identical human interest will report open rates that differ by twenty points, and the difference is a fact about mail clients.
That has a consequence that matters more than the reporting. Every automation triggered by non-opening is now firing on the wrong people. A resend to non-openers used to reach people who had not looked. It now reaches the subset of your list whose mail client does not prefetch, which correlates with employer IT policy and nothing else. If you are running a three step nurture that branches on opened or not opened, it is branching on infrastructure.
Rebuilding the report on delivered
Two changes fix most of this, and both are cheap.
Change the denominator. Report over delivered, never sent. Sent includes hard bounces and rejections, which vary by segment and by how cold the list is, and a report on sent quietly rewards mailing addresses that never receive anything. Delivered is the number of messages a mail server accepted.
Change the numerators. Three lines carry the programme.
Clicks per thousand delivered. Still imperfect, because security scanners click links, and the fix for that is below.
Registrations per thousand delivered. The only line connected to the outcome. It requires the send identifier written onto the registration row, which is the mechanic covered in crediting the send when a mail produces a registration.
Unsubscribes and complaints per thousand delivered. The cost side of the same send, and the number your deliverability depends on.
Open rate leaves the report. Keep a filtered version in a deliverability dashboard if you like, and stop putting any version of it in front of partners or the board.
One metric has to go with it, and this is the one people resist. Click to open rate divides clicks by opens, so it puts the broken number in the denominator, where the damage is larger and harder to see. A segment full of prefetching clients gets a big denominator and a poor click to open rate, and a segment on a corporate gateway that blocks images gets a small denominator and a flattering one. The ranking that comes out has nothing to do with the mail. If somebody wants a measure of how compelling the content was to people who received it, clicks per thousand delivered is that measure, and it has one denominator you can defend.
A segment where opens rise and clicks do not move
Take two segments from the same deadline mailing, both sent on the same morning.
Segment A is 9,400 delivered to senior buyers. It records 4,982 opens, a 53.0 per cent open rate, with 291 clicks and 84 registrations. Clicks per thousand delivered are 31.0 and registrations per thousand delivered are 8.9.
Segment B is 9,000 delivered to a more junior operational audience. It records 2,700 opens, a 30.0 per cent open rate, with 288 clicks and 96 registrations. Clicks per thousand delivered are 32.0 and registrations per thousand delivered are 10.7.
On opens, segment A beats segment B by 23 points and looks like the better audience by a wide margin. On registrations per thousand delivered, segment B is ahead by 1.8, which is a relative difference of about 20 per cent. The second comparison is the one that describes what happened, and the first one would have you move budget in the wrong direction.
Run the same view across editions. Opens going from 22.4 per cent to 41.3 per cent while clicks per thousand delivered move from 34 to 33 tells you the list's mail client mix changed. Nothing about your subject lines is measurable in that pair of numbers, whatever the ESP dashboard implies.
Can a machine open be filtered out?
Partly, and it is worth doing for the diagnostic value even though the result is still not a count of readers.
Three filters do most of the work. Discard any open recorded within two seconds of the delivery timestamp for that recipient, because no human moved that fast. Collapse repeated opens landing inside the same second, which is a prefetch signature. Exclude opens whose request resolves to a known privacy relay range, if your platform exposes that.
Apply the first filter to segment A above. Suppose 3,110 of the 4,982 opens arrived inside two seconds of delivery. The filtered open count is 1,872, a filtered rate of 19.9 per cent against a raw 53.0 per cent. The gap between those two numbers is the size of the inflation in that segment, and it is a useful thing to know.
What the filtered number is good for is spotting breakage. A filtered open series that falls by half overnight, while delivered stays flat, is a delivery or rendering problem worth investigating that morning. What it is not good for is any comparison between segments, because the share of prefetching clients differs by segment, which is the original problem in a smaller form.
The same scepticism belongs on clicks. Security scanners follow every link in a message, so a click that lands in the same second as delivery, from an address that clicked all seven links including the unsubscribe, is a scanner. Filter on those two patterns and the click series gets noticeably cleaner. The registration line needs no filter at all, because a scanner does not fill in a form.
Where this stops
Filtering machine opens depends on having a per recipient delivery timestamp, and a number of platforms expose delivery only at the batch level. Without it, the two second rule cannot be applied at all, and the honest position is to drop opens entirely instead of approximating.
The deeper limit is that no filter recovers the thing the open rate was standing in for. There is no measurement of whether a person read a message. Clicks measure a decision to act, registrations measure the act, and the space between reading and acting is now dark. Anyone who wants a proxy for attention has to accept that it went away in 2021 and is not coming back.
There is a downstream effect worth naming too. When a click is stripped of its parameters by a mail client or a security gateway, the resulting session arrives on your site with no source at all, which is one of the reasons the direct traffic bucket in your registration file is larger than it should be. Fixing your email report does not fix that, and the two problems get investigated separately.
The last limit is comparative. Any year on year email comparison that crosses 2021 is measuring two different things with one name. Rebase the series on clicks and registrations per thousand delivered, recompute the prior editions from the raw logs if you still have them, and accept a shorter history in exchange for a consistent one. That series belongs in the same place as the rest of your acquisition and attribution reporting, and the deadline mailing measured against a held-back cohort in reactivation measurement is the version that answers whether the programme is doing anything at all.
Start this week by pulling one send and counting opens recorded within two seconds of delivery as a share of all opens. That single percentage tells you how inflated your own reporting is, on your own list, and it takes one query.
Questions people ask about open rate inflation
- Why did email open rates rise so much without any improvement?
- Apple introduced Mail Privacy Protection in 2021 and states that it downloads remote content in the background by default, whether or not the recipient engages with the message. Every tracking pixel fetched that way is recorded as an open. A list with more Apple Mail users will report higher opens with no change in reader behaviour.
- What should replace open rate in event email reporting?
- Clicks per thousand delivered and registrations per thousand delivered, both counted against the delivered denominator rather than the sent one. Registrations per thousand delivered is the figure to put in front of a show director, because it is the only one connected to the outcome the mailing exists to produce.
- How do you filter machine opens?
- Discard opens recorded within about two seconds of the delivery timestamp, collapse repeated opens landing in the same second, and exclude opens whose fetch resolves to a known privacy relay. The remainder is a cleaner series for spotting delivery problems. Treating it as a count of human readers would repeat the original mistake.
Related reading
- Direct traffic registrations are four different problems wearing one label
- Email attribution for event registrations that survives forwarding and shared inboxes