Open-time ad serving: the only approach that makes sense for email
There are two moments at which an email ad system can make its decisioning: when you press send, or when the subscriber opens the email. The difference matters enormously — for impression accuracy, for advertiser ROI, and for how your system scales.
Why send-time decisioning wastes money
A newsletter with 1 million subscribers typically achieves a 10–15% open rate. If your ad system makes a decision — and charges an impression — at send time, you are logging 1 million impressions for an ad that 850,000 subscribers will never see. The advertiser pays for impressions that generated zero exposure. Floor prices are eroded, CPMs fall, and trust in your inventory quality erodes.
Send-time approaches also mean the ad decision is frozen at the moment of send. An advertiser whose campaign caps out between your send time and the subscriber opening the email can still have their creative served — because the decision was made hours earlier when they were still eligible.
Open-time serving: how MailAdx works
MailAdx uses open-time ad serving. At send time, you embed a single dynamic image URL in your newsletter template — one paste, applied to all subscribers. The URL contains the subscriber's pre-hashed email identifier (SHA-256 of the lowercase email address), which you substitute at send time using your ESP's merge tag feature.
When a subscriber opens the email, their email client fetches that image URL. At that moment — and only at that moment — MailAdx runs the full waterfall auction. The winning creative is returned as a 302 redirect to the creative's image. The impression is recorded. If no ad fills, a 1×1 transparent pixel is returned and no impression is logged.
The result: impressions are only recorded for emails that were actually opened. Advertisers pay only for genuine exposure. Fill rates and CPMs reflect real inventory quality.
The waterfall at open time
The MailAdx decision engine runs in under 5ms at open time, using an in-memory snapshot of your campaign configuration. No database queries block the response path. The waterfall priority is: SPONSORSHIP (direct-sold) → STANDARD (managed campaigns) → NETWORK (programmatic) → HOUSE (fallback). Frequency caps, daily pacing, impression goals, and audience segment targeting all apply at open time — meaning a campaign that just hit its daily cap will correctly not serve, even for emails sent hours ago.
Gmail and Apple Mail Privacy Protection
Two technical challenges affect all open-time pixel-based email tracking: Gmail's image proxy caching and Apple Mail Privacy Protection (MPP).
Gmail caches remote images on its proxy servers after the first fetch, which would cause every subsequent open to serve the same cached ad. MailAdx solves this with a nonce-based bypass: the image URL redirects to itself with a fresh randomised parameter, which Gmail caches (and re-fetches the next open), leaving the original URL uncached and always triggering a fresh auction.
Apple MPP prefetches all remote images before delivery on Apple's relay servers. MailAdx detects the Apple Mail user agent and marks these impressions as "AppleMPP" in delivery reports, so you can distinguish them from genuine human opens in your analytics.
Implementation: one paste, all subscribers
Integration is simpler than send-time approaches. You do not need a webhook, a pre-send API call loop, or any backend infrastructure changes. The entire integration is two lines of HTML in your newsletter template:
<a href="https://mailadx.com/api/v1/serving/click?pub=YOUR_PUB_ID&pk=YOUR_PLACEMENT_KEY&eh={{EMAIL_SHA256}}"
target="_blank" rel="noopener">
<img src="https://mailadx.com/api/v1/serving/display?pub=YOUR_PUB_ID&pk=YOUR_PLACEMENT_KEY&eh={{EMAIL_SHA256}}&w=728&h=90"
width="728" height="90" border="0" alt="" style="display:block;"/>
</a>Replace {{EMAIL_SHA256}} with your ESP's merge tag for the pre-computed SHA-256 hash of the subscriber's email. The complete integration guide, including ESP-specific merge tag syntax for Mailchimp and Klaviyo, is in the MailAdx Dashboard under Ad Tags.
Conclusion
Open-time ad serving produces accurate impression data, ensures advertisers pay only for genuine opens, and keeps campaign pacing and frequency caps current at the moment of delivery. It is the correct technical foundation for a newsletter ad business built to scale.
Learn more about the MailAdx ad server, or book a demo to see open-time decisioning in action with your newsletter setup.

