📧ESP Integration

Monetize your Klaviyo email lists with newsletter ads

MailAdx works with Klaviyo's custom HTML blocks and the {{ person|md5_hash }} or SHA-256 property. Add open-time ad revenue to your Klaviyo campaigns and flows.

Why add MailAdx to Klaviyo?

Open-time ad serving — impressions count only on genuine opens
No revenue share — flat per-impression fee, you keep the rest
Direct-sold + programmatic demand in a single waterfall
Custom price floors per ad placement
Real-time delivery dashboard and per-send reporting
Native ads (composite PNG) and standard banner formats

How to integrate MailAdx with Klaviyo

  1. 1

    Set up your MailAdx publisher account

    Create a free account at mailadx.com/signup. After approval, access the Publisher Portal to create your ad placements.

  2. 2

    Create an ad unit and copy the tag

    In Publisher Portal → Ad Units, create a placement with your preferred format and floor CPM. Copy the HTML ad tag.

  3. 3

    Add an email hash property to Klaviyo profiles

    Klaviyo doesn't expose a native SHA-256 email hash merge tag by default. You'll need to add a computed property or use Klaviyo's built-in {{ person.id }} or pass the email hash as a profile attribute via Klaviyo's API. Alternatively, the integration can use Klaviyo's email variable and hash it via a template filter.

  4. 4

    Insert the ad tag via HTML block

    In your Klaviyo template editor, add an HTML component. Paste the MailAdx ad tag, substituting the email hash variable with your Klaviyo property syntax.

  5. 5

    Test with a preview send

    Send a preview to yourself. Open the email and confirm the ad loads. Check the Publisher Portal for the test impression.

Klaviyo editor tips

Klaviyo's drag-and-drop editor has an HTML block under 'Basic' elements. For flow emails, edit the flow message template directly. If you use Klaviyo's universal content blocks, add the ad tag to the shared block so every campaign inherits it.

email-template.html
<!-- MailAdx ad tag — decision runs at open time -->
<a href="https://mailadx.com/api/v1/serving/click?pub=YOUR_PUB&pk=header&eh={{EMAIL_SHA256}}"
   target="_blank">
  <img src="https://mailadx.com/api/v1/serving/display?pub=YOUR_PUB&pk=header&eh={{EMAIL_SHA256}}&w=600&h=100"
       width="600" height="100" alt="" />
</a>
<!-- Replace {{EMAIL_SHA256}} with your ESP's email hash merge tag -->

Klaviyo + MailAdx: common questions

Does Klaviyo support SHA-256 email hashing natively?

Klaviyo doesn't have a native SHA-256 merge tag in all plan tiers. The common workaround is to store the pre-computed SHA-256 hash as a custom profile property and reference it in your templates. Contact MailAdx support for the recommended setup for your Klaviyo plan.

Should I use Klaviyo flows or campaigns for ad sends?

Both work. Add the ad tag to shared flow templates for recurring automations, or to one-off campaign templates for newsletters. The open-time auction runs the same way regardless of trigger type.

Billing with Klaviyo

MailAdx bills publishers a flat platform fee per impression served — typically $0.30–$0.50 CPM — regardless of which ESP you use. Your Klaviyo subscription fee is separate; MailAdx does not charge per send or per subscriber. Advertisers pay you directly (or via programmatic demand) above the platform fee. Top up credits in the Publisher Portal before going live; impressions pause gracefully when credits reach zero.

Troubleshooting Klaviyo + MailAdx

Ad image shows as broken or blank

Confirm the email-hash merge field substitutes in a real Klaviyo test send — not just the editor preview. An empty hash causes MailAdx to skip the auction. Re-send a test to yourself, view the raw HTML source, and verify the eh= parameter is populated.

Impressions not appearing in Publisher Portal

Open the test email in a client that loads remote images (Gmail web, Apple Mail with images enabled). Some corporate Outlook configs block external images by default. Wait 60 seconds and refresh the portal — reporting is near-real-time.

Merge field syntax error in template

Each ESP uses different personalization syntax. Double-check you replaced {{EMAIL_SHA256}} in the MailAdx tag with Klaviyo's exact variable from the setup steps above. A typo in the merge tag will break the URL at open time.

Ready to monetize your Klaviyo newsletter?

Free to start. No revenue share. Direct advertiser relationships from day one.

No credit card required
Setup in 30 minutes
Dedicated onboarding