Who uses what for email DAILY

Mailbox providers and ESPs across the Tranco top-1M — snapshot of 2025-01-01.

674 214
Domains with MX
626 064
Domains with SPF
395 177
Domains with DMARC
674 214
Total scanned

What you're looking at. Four headline counts for the analysed Tranco snapshot: how many domains publish each kind of email-related DNS record. Higher MX vs SPF gap = more domains receive mail than authorise sending; higher SPF vs DMARC gap = SPF adopted but no policy/feedback enforcement yet.

Trend — last 13 day(s) · KPIs

Top mailbox providers

What this block shows. Where each domain hosts incoming mail — derived from its primary MX record (lowest mx_preference). This is the receiving side of email: Google Workspace, Microsoft 365, Zoho, on-prem Exchange, etc. "Generic / unmatched" buckets are common mail.* / mx*.* hostnames we couldn't attribute to a specific provider; "Unknown / Other" is everything else.

#Mailbox providerDomainsShare of MX-having domains
1Unknown / Other180 71726.8%
2Google Workspace143 00221.21%
3Microsoft 365104 99915.57%
4Generic / unmatched (mail.*)93 34713.85%
5Generic / unmatched (mx*.*)60 3868.96%
6Yandex 36014 3892.13%
7Mimecast11 1881.66%
8Generic / unmatched (smtp.*)8 3321.24%
9Zoho Mail6 3520.94%
10Amazon WorkMail4 9470.73%
Show rows 11 – 30
#Mailbox providerDomainsShare of MX-having domains
11Mail.ru for Business4 8550.72%
12QQ Mail (Tencent)4 4750.66%
13OVH Mail4 3390.64%
14Cisco IronPort3 3330.49%
15Beget (RU)2 9290.43%
16Rackspace Email2 9110.43%
171&1 IONOS2 8440.42%
18Mailgun (inbound)2 4030.36%
19Hosted Email (Rackspace/IONOS)1 6710.25%
20Alibaba Mail (China)1 6510.24%
21Gandi Mail1 6260.24%
22Zoho Mail (EU)1 5140.22%
23FastMail1 4880.22%
24Timeweb (RU)1 3240.2%
25Titan (Hostinger)1 2150.18%
26ProtonMail1 2140.18%
27NetEase Mail1 1290.17%
28ImprovMX (forwarding)7750.11%
29Zoho Mail (IN)7010.1%
30Reg.ru7000.1%

Trend — last 13 day(s) · Top mailbox providers

Long-tail / Unknown MX — the rest of the internet

What this block shows. The slice of domains whose mailbox cannot be attributed to a named provider — regional hosters, self-built Postfix/Exim, corporate gateways, niche ESPs. Researchers ask for this specifically because it captures the deliverability reality outside the Google / Microsoft monoculture. The detailed report drills down into Top-1000 most common unmatched hosts, 100 hand-picked curiosities (longest one-off names) and a TLD breakdown.

Unknown / Generic share
50.84%
342 782 domains
Unique unmatched MX hosts
207 635
individual hostnames in the long tail
Self-hosted
24.36%
164 222 domains running their own MX
📋 Open detailed long-tail report →·⬇ Download top-1000 unmatched MX (CSV)·⬇ Download 100 curiosities (CSV)

Top ESPs / mass-mailing services

What this block shows. Outbound mass-mailing platforms each domain authorises in its SPF record — the marketing-automation, transactional-email and customer-engagement layer (SendGrid, Mailchimp, Mailgun, Klaviyo, HubSpot, Salesforce Marketing Cloud, etc.). One domain can use several ESPs, so percentages sum to more than 100% of SPF-publishing domains.

#ESPDomainsShare of SPF-publishing domains
1Amazon SES33 8565.41%
2SendGrid (Twilio)28 9624.63%
3Mailchimp25 7544.11%
4Zendesk24 4823.91%
5Mandrill24 4033.9%
6Mailgun24 1223.85%
7Salesforce15 3872.46%
8Mailjet (Sinch)12 2281.95%
9Brevo (ex-Sendinblue)7 5731.21%
10Elastic Email4 3800.7%
Show rows 11 – 30
#ESPDomainsShare of SPF-publishing domains
11Marketo (Adobe)3 8560.62%
12Unisender (RU)3 7470.6%
13SparkPost2 8850.46%
14Postmark2 6780.43%
15Salesforce Marketing Cloud2 2800.36%
16Constant Contact2 1270.34%
17Freshdesk1 6150.26%
18MailerSend1 3780.22%
19SMTP.com1 2610.2%
20SMTP.BZ7280.12%
21Sailthru7230.12%
22Customer.io5500.09%
23Eloqua (Oracle)3260.05%
24GetResponse3220.05%
25Intercom240.0%
26HubSpot160.0%
27Klaviyo100.0%
28Dotdigital50.0%
29AWeber30.0%
30ActiveCampaign10.0%

Trend — last 13 day(s) · Top ESPs

SaaS senders (Notion, Slack, Zendesk, Atlassian, Stripe…)

What this block shows. SaaS apps that send mail FROM a customer's domain on the customer's behalf — productivity, support, payments, HR, e-commerce and other business apps appearing as include: targets in the customer's SPF. Distinct from ESPs (mass-mailing platforms) and mailbox providers (where the inbox lives).

#SaaS appDomainsShare of SPF-publishing domains
1Pardot (Salesforce)6 1130.98%
2Shopify4 5800.73%
3KnowBe43 2260.52%
4Atlassian (Jira/Confluence)2 0540.33%
5Trustpilot1 9150.31%
6Firebase (Google)1 4930.24%
7Qualtrics1 1550.18%
8BigCommerce1 1300.18%
9NetSuite (Oracle)1 0690.17%
10Docebo (LMS)9170.15%
Show rows 11 – 30
#SaaS appDomainsShare of SPF-publishing domains
11Lark / Feishu8780.14%
12Oracle Cloud Email8020.13%
13WordPress.com / WP Cloud7890.13%
14Sage Intacct7850.13%
15Oracle Cloud7570.12%
16ClickDimensions7300.12%
17PayPal Braintree6720.11%
18ConnectWise6680.11%
19Greenhouse6500.1%
20Autotask (ConnectWise)6060.1%
21Zendesk4910.08%
22UKG / UltiPro4840.08%
23HappyFox4700.08%
24Shoptet4440.07%
25FormAssembly4310.07%
26Chargebee3280.05%
27Odoo2440.04%
28Freshsales (Freshworks)2260.04%
29Gorgias1950.03%
30Squarespace1490.02%

Trend — last 13 day(s) · Top SaaS senders

DMARC adoption

What this block shows. The policy each DMARC-publishing domain advertises at _dmarc.<domain>: none = monitor only, quarantine = mark as spam on fail, reject = drop on fail, invalid = a syntactically broken record. "Enforced %" treats only quarantine / reject with pct=100 as actually enforcing.

Trend — last 13 day(s) · DMARC enforced %

7d ago▲ +0.23%90d ago▲ +1.86%1y ago▲ +4.28%

Trend — last 13 day(s) · DMARC policies

Top 100 most-used DMARC records (verbatim)

The literal record string copied verbatim from DNS — useful to spot copy-pasted "starter" policies and identify reporting endpoints (the rua= / ruf= tags) shared across many domains.

#DMARC recordDomains
1v=DMARC1; p=none;39 762
2v=DMARC1; p=none31 868
3v=DMARC1; p=none; rua=mailto:rua@dmarc.brevo.com4 512
4v=DMARC1;p=none;3 822
5v=DMARC1; p=quarantine;3 771
6v=DMARC1; p=reject; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com3 555
7v=DMARC1; p=quarantine3 075
8v=DMARC1; p=none; sp=none; rua=mailto:dmarc@mailinblue.com!10m; ruf=mailto:dmarc@mailinblue.com!10m; rf=afrf; pct=100; ri=864003 000
9v=DMARC1; p=reject;2 889
10v=DMARC1; p=none; aspf=r; adkim=r;2 413
11v=DMARC1; p=reject; aspf=s; adkim=s; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com; fo=12 207
12v=DMARC1; p=reject2 119
13v=DMARC1; p=quarantine; adkim=s; aspf=s2 050
14v=DMARC1; p=none; aspf=r; sp=none1 819
15v=DMARC1; p=quarantine; pct=1001 782
16v=DMARC1; p=none; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com1 738
17v=DMARC1; p=reject; sp=reject; adkim=s; aspf=s;1 654
18v=DMARC1;p=none1 588
19v=DMARC1;p=quarantine;pct=100;fo=11 463
20v=DMARC1; p=none; rua=mailto:dmarc_agg@vali.email1 397
21v=DMARC1; p=none; adkim=r; aspf=r;1 363
22v=DMARC1; p=none; rua=mailto:dmarc_agg@vali.email;1 325
23v=DMARC1;p=none;sp=none;adkim=r;aspf=r;pct=100;fo=0;rf=afrf;ri=864001 306
24v=DMARC1; p=none; sp=none;1 130
25v=DMARC1; p=none; sp=none1 056
Show rows 26 – 100
#DMARC recordDomains
26v=DMARC1; p=reject; rua=mailto:dmarc_agg@vali.email1 054
27v=DMARC1; p=none; pct=100808
28v=DMARC1; p=none; sp=none; rf=afrf; pct=100; ri=86400657
29v=DMARC1; p=reject; pct=100641
30v=DMARC1; p=quarantine; rua=mailto:dmarc_agg@vali.email637
31v=DMARC1; p=reject; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com;632
32v=DMARC1; p=reject; rua=mailto:mailauth-reports@google.com573
33v=DMARC1; p=none; fo=1; ruf=mailto:dmarc@qiye.163.com; rua=mailto:dmarc_report@qiye.163.com572
34v=DMARC1; p=reject; pct=100;549
35v=DMARC1; p=none; pct=100;453
36v=DMARC1;p=reject;443
37v=DMARC1;p=quarantine;sp=none;adkim=r;aspf=r;pct=100;fo=0;rf=afrf;ri=86400442
38v=DMARC1; p=none; rua=mailto:mailauth-reports@qq.com436
39v=DMARC1; p=quarantine; rua=mailto:dmarc_agg@vali.email;422
40v=DMARC1;p=quarantine421
41v=DMARC1; p=quarantine; fo=1; ruf=mailto:dmarc@qiye.163.com; rua=mailto:dmarc_report@qiye.163.com413
42v=DMARC1; p=reject; rua=mailto:dmarc_agg@vali.email;409
43v=DMARC1; p=none; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com;379
44v=DMARC1; p=reject; sp=reject; adkim=s; aspf=s359
45v=DMARC1;p=reject;fo=1;rua=mailto:dmarc_rua@emaildefense.proofpoint.com;ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com355
46v=DMARC1; p=none; fo=1354
47v=DMARC1; p=quarantine; pct=100;341
48v=DMARC1;p=reject333
49v=DMARC1; p=none; sp=none; adkim=r; aspf=r327
50v=DMARC1;p=reject;sp=reject;adkim=s;aspf=s326
51v=DMARC1; p=none; adkim=r; aspf=r323
52v=DMARC1; p=reject; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com; fo=1321
53v=DMARC1; p=reject; adkim=s; aspf=s;313
54v=DMARC1; p=reject; sp=reject; pct=100; fo=1; ri=3600; rua=mailto:dmarcrecord@gmail.com; ruf=mailto:dmarcrecord@gmail.com;312
55v=DMARC1; p=reject; sp=none; rf=afrf; pct=100; ri=86400308
56v=DMARC1; p=reject; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com;fo=1299
57v=DMARC1293
58v=DMARC1; p=quarantine; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com289
59v=DMARC1; p=none; rua=mailto:mailauth-reports@google.com266
60v=DMARC1; p=none; rua=mailto:dmarc@smtp.mailtrap.live; ruf=mailto:dmarc@smtp.mailtrap.live; rf=afrf; pct=100265
61v=DMARC1; p=none; rua=mailto:rua-mpse@mpub.ne.jp253
62v=DMARC1;p=none;sp=none;adkim=r;aspf=r;pct=100245
63v=DMARC1; p=reject; rua=mailto:zicaptxt@ag.dmarcian.com;225
64v=DMARC1; p=reject; fo=1; ri=3600; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com213
65v=DMARC1; p=none; pct=100; rua=mailto:dmarc@fbl.optin.com;212
66v=DMARC1;p=reject;sp=none;adkim=r;aspf=r;pct=100;fo=0;rf=afrf;ri=86400205
67v=DMARC1;p=none;sp=none;pct=50;adkim=r;aspf=r;205
68v=DMARC1; p=reject; adkim=r; aspf=r; pct=100;202
69v=DMARC1;p=quarantine;199
70v=DMARC1;p=none;pct=100;rua=mailto:dmarc@smtpeter.com192
71v=DMARC1; p=reject; rua=mailto:report@dmarc.amazon.com; ruf=mailto:report@dmarc.amazon.com191
72v=DMARC1;p=none;rua=mailto:rua@dmarc.brevo.com188
73v=DMARC1; p=none; sp=none; rua=mailto:dmarc-raports@dhosting.pl188
74v=DMARC1; p=quarantine; sp=none; pct=100; ri=86400186
75v=DMARC1; p=none; rua=mailto:abuse@mailbiz.com.br; ruf=mailto:abuse@mailbiz.com.br181
76v=DMARC1;p=none;pct=100;aspf=r;adkim=r;180
77v=DMARC1; p=none; fo=1; ri=3600; rua=mailto:procter-gamble@rua.dmp.cisco.com; ruf=mailto:procter-gamble@ruf.dmp.cisco.com177
78v=DMARC1; p=none; rua=mailto:dmarc_agg@dmarc.everest.email; ruf=mailto:dmarc_fr@dmarc.everest.email; fo=1; pct=100; rf=afrf175
79v=DMARC1;""p=reject;""fo=1;""rua=mailto:dmarc_rua@emaildefense.proofpoint.com;""ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com172
80v=DMARC1; p=reject; adkim=s; aspf=s170
81v=DMARC1; p=quarantine; sp=none; rf=afrf; pct=100; ri=86400167
82v=DMARC1; p=none; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com; fo=1163
83v=DMARC1;p=none;pct=100163
84v=DMARC1; p=none; fo=1;161
85v=DMARC1; p=none; pct=100; adkim=r; aspf=r158
86v=DMARC1; p=none; rua=mailto:dmarc.rua@edrone.app; ruf=mailto:dmarc.ruf@edrone.app158
87v=DMARC1; p=none; aspf=r; adkim=r157
88v=DMARC1; p=none; rua=mailto:dmarc-rua@report.securemx.jp156
89v=DMARC1; p=quarantine; adkim=s; aspf=s;155
90v=DMARC1; p=none; pct=50;151
91v=DMARC1; p=reject; fo=1; ri=3600; rua=mailto:lufthansa@rua.agari.com;146
92v=DMARC1;p=quarantine;pct=100142
93v=DMARC1; p=quarantine; rua=mailto:dmarc_agg@vali.email,mailto:postmaster@wix.com142
94v=DMARC1;p=none;rua=mailto:dmarc_report@service.aliyun.com140
95v=DMARC1; p=none; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com;fo=1136
96v=DMARC1; p=quarantine; fo=1134
97v=DMARC1; p=quarantine; sp=quarantine134
98v=DMARC1; p=reject; pct=100; adkim=s; aspf=s134
99v=DMARC1; p=reject; sp=reject132
100v=DMARC1;""p=none;128

Unmatched MX targets — top 100

What this block shows. The most popular MX hostnames our dictionary does not yet attribute to a named mailbox provider. Public list — these feed back into dictionaries/mx_providers.py for the next iteration so coverage keeps improving.

#MX targetDomains
1eforward5.registrar-servers.com10 034
2eforward4.registrar-servers.com10 030
3eforward1.registrar-servers.com10 028
4eforward2.registrar-servers.com10 018
5eforward3.registrar-servers.com9 997
6route1.mx.cloudflare.net6 355
7route2.mx.cloudflare.net6 354
8route3.mx.cloudflare.net6 351
9mailstore1.secureserver.net5 473
10smtp.secureserver.net5 453
11mx1.hostinger.com4 025
12mx2.hostinger.com4 006
13mx1-us1.ppe-hosted.com2 364
14mx2-us1.ppe-hosted.com2 347
15mx1-hosting.jellyfish.systems2 199
16mx2-hosting.jellyfish.systems2 197
17mx3-hosting.jellyfish.systems2 186
18nan1 995
19mx1.privateemail.com1 691
20park-mx.above.com1 683
21mx2.privateemail.com1 677
22mx156.hostedmxserver.com1 597
23mx10.antispam.mailspamprotection.com1 546
24mx30.antispam.mailspamprotection.com1 546
25mx20.antispam.mailspamprotection.com1 545
Show rows 26 – 100
#MX targetDomains
26mx.a.locaweb.com.br1 113
27mx.b.locaweb.com.br1 104
28mx.jk.locaweb.com.br1 100
29mx1.mailchannels.net994
30mx2.mailchannels.net990
31mx.core.locaweb.com.br977
32isaac.mx.cloudflare.net974
33linda.mx.cloudflare.net973
34amir.mx.cloudflare.net972
35mx1.hostinger.in911
36mx2.hostinger.in897
37mail.eye-mail.net890
38mx.stackmail.com860
39mx01.hornetsecurity.com846
40mx02.hornetsecurity.com846
41mx03.hornetsecurity.com829
42mx04.hornetsecurity.com822
43localhost798
44mx1.csof.net780
45mx2.csof.net780
46us2.mx3.mailhostbox.com751
47us2.mx1.mailhostbox.com748
48us2.mx2.mailhostbox.com746
49mx.spamexperts.com739
50mxlb.ispgateway.de733
51fallbackmx.spamexperts.eu688
52lastmx.spamexperts.net674
53mx20.ukraine.com.ua665
54mx15.ukraine.com.ua662
55mx20.mailspamprotection.com654
56mx10.mailspamprotection.com652
57smtpin.rzone.de649
58dmail.kagoya.net646
59mx30.mailspamprotection.com645
60mx.securemx.jp616
61mx01.nicmail.ru597
62mx02.nicmail.ru584
63mx03.nicmail.ru578
64mx1.qiye.aliyun.com557
65mx.ukraine.com.ua539
66mx2.qiye.aliyun.com533
67za-smtp-inbound-1.mimecast.co.za530
68za-smtp-inbound-2.mimecast.co.za530
69mx1.forwardemail.net526
70mx3.qiye.aliyun.com525
71mx2.forwardemail.net522
72mail.register.it489
73mx1.feishu.cn486
74mx3.feishu.cn482
75mx2.feishu.cn481
76mta-gw.infomaniak.ch464
77mail.h-email.net427
78mx002.netsol.xion.oxcs.net424
79mx001.netsol.xion.oxcs.net421
80mc.planbnow.co419
81mx1-eu1.ppe-hosted.com388
82mx2-eu1.ppe-hosted.com383
83mx-biz.mail.am0.yahoodns.net365
84mailstream-east.mxrecord.io361
85mailstream-west.mxrecord.io359
86mx01.lolipop.jp338
87mx1.hostinger.com.br325
88mx2.spaceweb.ru313
89mx1.spaceweb.ru311
90mailstream-central.mxrecord.mx308
91mx.serviciodecorreo.es308
92mx2.hostinger.com.br306
93mx01.udag.de300
94mx00.udag.de298
95kr1-aspmx1.worksmobile.com290
96mailgw.nic.in286
97mx-01-us-west-2.prod.hydra.sophos.com283
98mx1.dreamhost.com279
99mx-02-us-west-2.prod.hydra.sophos.com278
100mx2.dreamhost.com275

Unmatched SPF includes — top 100

What this block shows. The most popular SPF include: targets that don't match any known ESP, mailbox-as-sender, or SaaS pattern yet. Same feedback loop: top hits get added to dictionaries/esps.py or dictionaries/saas_senders.py.

#SPF includeDomains
1spf.efwd.registrar-servers.com10 190
2_spf.mx.cloudflare.net7 748
3secureserver.net7 497
4relay.mailchannels.net6 335
5_spf.mail.hostinger.com5 803
6zoho.com5 786
7_spf.mlsend.com5 206
8mx.ovh.com4 554
9us._netblocks.mimecast.com4 078
10websitewelcome.com3 950
11emsd1.com3 691
12beget.com3 185
13emailsrvr.com3 173
14helpscoutemail.com2 820
15spf.web-hosting.com2 766
16spf.mail.qq.com2 707
17_spf.createsend.com2 618
18mxsspf.sendpulse.com2 494
19spf.ess.barracudanetworks.com2 357
20stspg-customer.com2 291
21zcsend.net2 222
22eu._netblocks.mimecast.com2 196
23_spf-eu.ionos.com2 174
24spf.sender.xserver.jp1 920
25_spf.rdstation.com.br1 854
Show rows 26 – 100
#SPF includeDomains
26_netblocks.mimecast.com1 787
27spf.emailsignatures365.com1 761
28transmail.net1 738
29spf.messagingengine.com1 504
30musvc.com1 484
31spf.crsend.com1 445
32spf.mxhichina.com1 422
33_incspfcheck.mailspike.net1 410
34spf-00303601.pphosted.com1 407
35_spf.timeweb.ru1 380
36spf.tmes.trendmicro.com1 378
37aspmx.googlemail.com1 376
38spf.messagelabs.com1 370
39spf.titan.email1 343
40spf.exclaimer.net1 336
41_mailcust.gandi.net1 320
42spf.antispamcloud.com1 312
43spf.securedserverspace.com1 305
44_spf.locaweb.com.br1 303
45spf.163.com1 255
46netblocks.dreamhost.com1 190
47spf.dynect.net1 121
48outboundmail.blackbaud.net1 083
49spf2.esputnik.com1 082
50relay.mailbaby.net1 077
51_spf.kundenserver.de1 061
52spf.smtp2go.com1 058
53spf.hornetsecurity.com1 044
54_spf.jupiter.salesmanago.pl1 044
55_spf.ukraine.com.ua1 013
56authsmtp.com1 000
57spf.brevo.com998
58mxsmtp.sendpulse.com979
59_spf.perfora.net976
60_spf.aruba.it962
61_spf.mailspamprotection.com924
62one.zoho.com907
63spf-bma.mpme.jp892
64_spf.hostedemail.com881
65zohomail.com871
66spf.stackmail.com867
67_spf.mailhostbox.com859
68ispgateway.de848
69spfa.mailendo.com836
70_spf.hosting.reg.ru834
71kagoya.net814
72spf.ipzmarketing.com785
73cmail1.com772
74spf.retailcrm.pro757
75spf.improvmx.com751
76_spf.kmitd.com750
77_spf.emaillabs.net.pl723
78turbo-smtp.com719
79spfa.cpmails.com714
80mailcontrol.com706
81spf.qiye.aliyun.com705
82spf.eu.exclaimer.net701
83zoho.in678
84spf.afas.online662
85spf.mysecurecloudhost.com658
86spf.mindbox.ru657
87spf-de.emailsignatures365.com653
88agenturserver.de653
89_spf.dashasender.ru651
90au._netblocks.mimecast.com642
91usb._netblocks.mimecast.com629
92bluehost.com628
93spf.securemx.jp619
94spf.bmv.jp619
95spf.webapps.net618
96de._netblocks.mimecast.com615
97spf.mail.intercom.io608
98e2ma.net608
99spf.nl2go.com604
100eu.zcsend.net602

Methodology — how the numbers were produced

1. Data source

The dataset is the daily OpenINTEL forward-DNS Tranco snapshot, produced by the OpenINTEL project (University of Twente / SURFnet / SIDN Labs). OpenINTEL queries the entire Tranco top-1M domain list (https://tranco-list.eu/) daily for MX, TXT, NS, A, AAAA, SOA, CAA, DNSSEC and other records, publishing the results as Apache Parquet.

Cite: Roland van Rijswijk-Deij et al., "A High-Performance, Scalable Infrastructure for Large-Scale Active DNS Measurements", IEEE JSAC 2016.

2. Sample

We process the snapshot for a single date (the latest available, typically <24h delay) covering the entire Tranco top-1M list. No sub-sampling; every domain queried by OpenINTEL is included.

3. Mailbox provider classification

For each domain we read its MX RRset and pick the record with the lowest mx_preference as the primary mailbox host. The hostname of that primary MX is matched against an open regex dictionary (dictionaries/mx_providers.py). Specific patterns (e.g. .mail.protection.outlook.com) are tried first; generic fallbacks (mail.*, mx*.*) only after. Domains whose MX matches no rule are kept as "Unknown / Other" — never dropped — and exported in Unmatched MX targets below for dictionary improvement.

4. ESP (mass-mailing service) classification

For each domain's apex SPF record (TXT starting with v=spf1) we extract every include: and redirect= target and resolve them against an open dictionary (dictionaries/esps.py). One domain may use several ESPs simultaneously (e.g. SendGrid + Mailchimp), so ESP shares sum to more than 100% of SPF-publishing domains.

Note: this method does not count "flattened" SPF (where include chains were replaced with raw IPs to fit the 10-lookup limit) — those domains will appear as ESP-less even when an ESP is in fact used. This is a known limitation of any DNS-only methodology and is consistent across competitive surveys.

5. DMARC

For each domain we query the _dmarc.<domain> TXT record. Records starting with v=DMARC1 are parsed for p= (policy) and pct= (percentage covered). A domain is counted as enforced if p=quarantine or p=reject with pct=100 (or pct absent, which defaults to 100).

6. Tier breakdown

Each domain is assigned a tier from its Tranco rank: top-1k, top-10k, top-100k, top-1M, or unranked if absent from the list at scan time.

7. Reproducibility

Every published report includes the exact OpenINTEL date, dictionary hashes, and counts of unmatched MX hosts and SPF includes — so any reader can verify or reproduce the figures. Raw OpenINTEL parquet is downloaded into a temporary cache and deleted after analysis; only aggregated, non-redistributable counts are kept here (per OpenINTEL data agreement).

8. Limitations to be aware of

  • Tranco bias. Top-1M skews toward US/EU and global SaaS; ccTLD-only domains with low traffic may be under-represented.
  • SPF flattening hides ESP identity (see §4).
  • CNAME chains on MX (e.g. mail.example.com → mail.example.protection.outlook.com) are not unrolled — only the first MX target is matched. This biases a small share of domains toward "Unknown" when their MX is a CNAME to a known provider.
  • Vanity MX with white-label provider (e.g. some Mimecast/Proofpoint customers use their own brand) is not detectable from DNS alone.

Comments & corrections

Spotted a mis-classified MX target, missed ESP, or want to discuss a finding? We publish corrections in the next daily snapshot.

Send feedback to support@live-direct-marketing.online

Inline comments coming soon. For now, email is the fastest path — you'll see your fix reflected in tomorrow's run.

Historical reports

Daily snapshots — last 90 days kept fully, older ones thinned to monthly.

Data source: https://openintel.nl/data/forward-dns/top-lists/
Generated automatically from OpenINTEL Tranco snapshot 2025-01-01. Aggregates only — raw OpenINTEL data is deleted after analysis per their data agreement.
Last build: 2026-04-28T12:36:49Z.