Who uses what for email DAILY

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

666 638
Domains with MX
601 954
Domains with SPF
335 235
Domains with DMARC
666 638
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 22 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 / Other189 05528.36%
2Google Workspace134 81720.22%
3Generic / unmatched (mail.*)97 21614.58%
4Microsoft 36595 59814.34%
5Generic / unmatched (mx*.*)59 3498.9%
6Yandex 36014 3992.16%
7Mimecast11 0311.65%
8Generic / unmatched (smtp.*)8 6251.29%
9Zoho Mail5 9910.9%
10Mail.ru for Business4 6650.7%
Show rows 11 – 30
#Mailbox providerDomainsShare of MX-having domains
11QQ Mail (Tencent)4 6500.7%
12Amazon WorkMail4 5210.68%
13OVH Mail4 3020.65%
14Cisco IronPort3 2990.49%
151&1 IONOS3 0540.46%
16Rackspace Email3 0090.45%
17Beget (RU)2 7650.41%
18Mailgun (inbound)2 0820.31%
19Gandi Mail1 6640.25%
20Hosted Email (Rackspace/IONOS)1 6160.24%
21Alibaba Mail (China)1 5830.24%
22Timeweb (RU)1 4750.22%
23FastMail1 3940.21%
24Titan (Hostinger)1 3600.2%
25Zoho Mail (EU)1 2910.19%
26ProtonMail1 0270.15%
27NetEase Mail1 0030.15%
28ImprovMX (forwarding)7760.12%
29Reg.ru7660.11%
30CSC (corporate)6840.1%

Trend — last 22 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
53.14%
354 245 domains
Unique unmatched MX hosts
217 502
individual hostnames in the long tail
Self-hosted
26.15%
174 299 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 SES30 6055.08%
2SendGrid (Twilio)26 4264.39%
3Mailchimp25 8644.3%
4Mandrill24 8404.13%
5Zendesk23 0493.83%
6Mailgun21 3253.54%
7Salesforce13 8692.3%
8Mailjet (Sinch)10 8841.81%
9Brevo (ex-Sendinblue)7 7811.29%
10Marketo (Adobe)4 0340.67%
Show rows 11 – 30
#ESPDomainsShare of SPF-publishing domains
11Elastic Email3 9620.66%
12Unisender (RU)3 3450.56%
13SparkPost2 7670.46%
14Postmark2 5870.43%
15Salesforce Marketing Cloud2 1840.36%
16Constant Contact2 1450.36%
17Freshdesk1 7410.29%
18SMTP.com1 1490.19%
19MailerSend1 0170.17%
20Sailthru6940.12%
21SMTP.BZ6800.11%
22Customer.io5870.1%
23Eloqua (Oracle)3340.06%
24GetResponse2400.04%
25Intercom170.0%
26HubSpot90.0%
27Klaviyo80.0%
28Dotdigital60.0%
29AWeber30.0%
30Help Scout10.0%

Trend — last 22 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 4431.07%
2Shopify4 2180.7%
3KnowBe42 6550.44%
4Atlassian (Jira/Confluence)2 0330.34%
5Trustpilot1 8190.3%
6Firebase (Google)1 2650.21%
7Qualtrics1 1270.19%
8BigCommerce1 0810.18%
9NetSuite (Oracle)1 0130.17%
10Docebo (LMS)8430.14%
Show rows 11 – 30
#SaaS appDomainsShare of SPF-publishing domains
11ClickDimensions7920.13%
12ConnectWise7880.13%
13PayPal Braintree6670.11%
14Oracle Cloud Email6630.11%
15Autotask (ConnectWise)6510.11%
16Oracle Cloud6030.1%
17Sage Intacct5780.1%
18WordPress.com / WP Cloud5720.1%
19Greenhouse5690.09%
20Lark / Feishu5410.09%
21Zendesk5170.09%
22HappyFox4450.07%
23UKG / UltiPro3760.06%
24FormAssembly3470.06%
25Chargebee2700.04%
26Shoptet2480.04%
27Freshsales (Freshworks)2440.04%
28Odoo1880.03%
29Gorgias1850.03%
30Squarespace1480.02%

Trend — last 22 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 22 day(s) · DMARC enforced %

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

Trend — last 22 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=none30 094
2v=DMARC1; p=none;27 685
3v=DMARC1; p=none; sp=none; rua=mailto:dmarc@mailinblue.com!10m; ruf=mailto:dmarc@mailinblue.com!10m; rf=afrf; pct=100; ri=864003 430
4v=DMARC1; p=reject; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com3 121
5v=DMARC1; p=quarantine;3 071
6v=DMARC1; p=quarantine2 678
7v=DMARC1; p=reject;2 639
8v=DMARC1;p=none;2 500
9v=DMARC1; p=none; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com2 137
10v=DMARC1; p=reject1 892
11v=DMARC1; p=none; aspf=r; sp=none1 728
12v=DMARC1; p=quarantine; pct=1001 478
13v=DMARC1; p=none; rua=mailto:rua@dmarc.brevo.com1 460
14v=DMARC1; p=none; rua=mailto:dmarc_agg@vali.email1 419
15v=DMARC1; p=reject; sp=reject; adkim=s; aspf=s;1 413
16v=DMARC1;p=quarantine;pct=100;fo=11 390
17v=DMARC1; p=quarantine; adkim=s; aspf=s1 331
18v=DMARC1;p=none1 326
19v=DMARC1; p=none; adkim=r; aspf=r;1 307
20v=DMARC1; p=none; sp=none;1 246
21v=DMARC1;p=none;sp=none;adkim=r;aspf=r;pct=100;fo=0;rf=afrf;ri=864001 050
22v=DMARC1; p=none; rua=mailto:dmarc_agg@vali.email;1 039
23v=DMARC1; p=reject; rua=mailto:dmarc_agg@vali.email951
24v=DMARC1; p=none; sp=none941
25v=DMARC1; p=none; pct=100790
Show rows 26 – 100
#DMARC recordDomains
26v=DMARC1; p=none; aspf=r; adkim=r;779
27v=DMARC1; p=none; sp=none; rf=afrf; pct=100; ri=86400696
28v=DMARC1; p=reject; rua=mailto:dmarc_report@mail.liamfactory.com; ruf=mailto:dmarc_report@mail.liamfactory.com; fo=1; pct=100599
29v=DMARC1; p=none; fo=1; ruf=mailto:dmarc@qiye.163.com; rua=mailto:dmarc_report@qiye.163.com595
30v=DMARC1; p=reject; rua=mailto:mailauth-reports@google.com570
31v=DMARC1; p=quarantine; rua=mailto:dmarc_agg@vali.email548
32v=DMARC1; p=reject; pct=100521
33v=DMARC1; p=none; pct=100; adkim=r; aspf=r;425
34v=DMARC1; p=none; pct=100;424
35v=DMARC1; p=none; rua=mailto:mailauth-reports@qq.com418
36v=DMARC1; p=reject; sp=reject; pct=100; fo=1; ri=3600; rua=mailto:dmarcrecord@gmail.com; ruf=mailto:dmarcrecord@gmail.com;410
37v=DMARC1;p=quarantine;sp=none;adkim=r;aspf=r;pct=100;fo=0;rf=afrf;ri=86400386
38v=DMARC1; p=reject; pct=100;372
39v=DMARC1;p=quarantine352
40v=DMARC1; p=reject; rua=mailto:dmarc_agg@vali.email;345
41v=DMARC1; p=none; sp=none; adkim=r; aspf=r329
42v=DMARC1; p=none; fo=1321
43v=DMARC1; p=quarantine; rua=mailto:dmarc_agg@vali.email;293
44v=DMARC1;p=reject;fo=1;rua=mailto:dmarc_rua@emaildefense.proofpoint.com;ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com290
45v=DMARC1; p=none; adkim=r; aspf=r271
46v=DMARC1; p=reject; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com;fo=1271
47v=DMARC1; p=reject; adkim=s; aspf=s;267
48v=DMARC1;p=reject267
49v=DMARC1; p=reject; sp=none; rf=afrf; pct=100; ri=86400266
50v=DMARC1; p=quarantine; pct=100;266
51v=DMARC1263
52v=DMARC1; p=quarantine; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com259
53v=DMARC1; p=none; rua=mailto:mailauth-reports@google.com258
54v=DMARC1; p=reject; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com; fo=1257
55v=DMARC1; p=none; rua=mailto:rua-mpse@mpub.ne.jp257
56v=DMARC1;p=none;sp=none;adkim=r;aspf=r;pct=100244
57v=DMARC1; p=reject; rua=mailto:report@dmarc.amazon.com; ruf=mailto:report@dmarc.amazon.com229
58v=DMARC1; p=reject; rua=mailto:zicaptxt@ag.dmarcian.com;226
59v=DMARC1; p=none; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com;fo=1222
60v=DMARC1; p=quarantine; fo=1; ruf=mailto:dmarc@qiye.163.com; rua=mailto:dmarc_report@qiye.163.com222
61v=DMARC1;p=reject;sp=reject;adkim=s;aspf=s220
62v=DMARC1; p=reject; adkim=r; aspf=r; pct=100;208
63v=DMARC1;p=none;pct=100;rua=mailto:dmarc@smtpeter.com207
64v=DMARC1; p=quarantine; sp=none; pct=100; ri=86400199
65v=DMARC1;p=reject;192
66v=DMARC1;p=reject;sp=none;adkim=r;aspf=r;pct=100;fo=0;rf=afrf;ri=86400186
67v=DMARC1; p=none; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com; fo=1186
68v=DMARC1; p=none; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com;179
69v=DMARC1;p=none;pct=100;aspf=r;adkim=r;172
70v=DMARC1; p=none; sp=none; rua=mailto:dmarc-raports@dhosting.pl166
71v=DMARC1; p=quarantine; sp=none; rf=afrf; pct=100; ri=86400166
72v=DMARC1; p=reject; fo=1; ri=3600; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com166
73v=DMARC1;p=none;pct=100164
74v=DMARC1;p=none;sp=none;pct=50;adkim=r;aspf=r;162
75v=DMARC1; p=none; rua=mailto:dmarc-rua@report.securemx.jp162
76v=DMARC1; p=reject; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com;159
77v=DMARC1; p=reject; rua=mailto:dmarc_agg@dmarc.everest.email; ruf=mailto:dmarc_fr@dmarc.everest.email; fo=1; pct=100; rf=afrf158
78v=DMARC1; p=reject; rua=mailto:2ynhg3yt@ag.dmarcian.com155
79v=DMARC1; p=reject; aspf=s; adkim=s; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com; fo=1146
80v=DMARC1; p=none; pct=100; rua=mailto:dmarc@fbl.optin.com;146
81v=DMARC1;""p=reject;""fo=1;""rua=mailto:dmarc_rua@emaildefense.proofpoint.com;""ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com146
82v=DMARC1; p=none; fo=1;145
83v=DMARC1; p=none; fo=1; ri=3600; rua=mailto:procter-gamble@rua.dmp.cisco.com; ruf=mailto:procter-gamble@ruf.dmp.cisco.com144
84v=DMARC1; p=reject; adkim=s; aspf=s142
85v=DMARC1; p=none; rua=mailto:dmarc@smtp.mailtrap.live; ruf=mailto:dmarc@smtp.mailtrap.live; rf=afrf; pct=100141
86v=DMARC1; p=none; rua=mailto:dmarc_agg@dmarc.everest.email; ruf=mailto:dmarc_fr@dmarc.everest.email; fo=1; pct=100; rf=afrf137
87v=DMARC1;p=quarantine;136
88v=DMARC1; p=none; pct=100; adkim=r; aspf=r134
89v=DMARC1;p=none;rua=mailto:rua@dmarc.brevo.com126
90v=DMARC1;p=none;fo=1;rua=mailto:dmarc_rua@emaildefense.proofpoint.com;ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com126
91v=DMARC1; p=reject; sp=reject; pct=100; rua=mailto:adobe@rua.agari.com; ruf=mailto:adobe@ruf.agari.com; fo=1122
92v=DMARC1; p=none; pct=50;119
93v=DMARC1; p=reject; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com117
94v=DMARC1;p=quarantine;pct=100117
95v=DMARC1; adkim=s; aspf=s; p=quarantine115
96v=DMARC1; p=reject; fo=1; ri=3600; rua=mailto:nexstar@rua.agari.com; ruf=mailto:nexstar@ruf.agari.com115
97v=DMARC1; p=reject; sp=reject112
98v=DMARC1; p=none; rua=mailto:dmarc@inbound.flowmailer.net; ruf=mailto:dmarc@inbound.flowmailer.net; fo=1112
99v=DMARC1;p=none;sp=none;112
100v=DMARC1; p=reject; pct=100; rua=mailto:dmarc-yahoo-rua@yahoo-inc.com;111

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.com9 487
2eforward4.registrar-servers.com9 485
3eforward1.registrar-servers.com9 484
4eforward2.registrar-servers.com9 469
5eforward3.registrar-servers.com9 443
6mailstore1.secureserver.net5 482
7smtp.secureserver.net5 454
8route3.mx.cloudflare.net5 056
9route1.mx.cloudflare.net5 054
10route2.mx.cloudflare.net5 053
11park-mx.above.com4 499
12mx1.hostinger.com2 869
13mx2.hostinger.com2 836
14mx1-us1.ppe-hosted.com2 244
15mx2-us1.ppe-hosted.com2 226
16mx2-hosting.jellyfish.systems1 875
17mx1-hosting.jellyfish.systems1 873
18mx3-hosting.jellyfish.systems1 870
19mx1.privateemail.com1 540
20nan1 538
21mx2.privateemail.com1 527
22mail.eye-mail.net1 482
23mx156.hostedmxserver.com1 398
24mx20.antispam.mailspamprotection.com1 212
25mx30.antispam.mailspamprotection.com1 212
Show rows 26 – 100
#MX targetDomains
26mx10.antispam.mailspamprotection.com1 211
27mx1.hostinger.in1 119
28mx2.hostinger.in1 097
29mx.a.locaweb.com.br1 096
30mx.b.locaweb.com.br1 090
31mx.jk.locaweb.com.br1 087
32dmail.kagoya.net1 036
33isaac.mx.cloudflare.net1 001
34linda.mx.cloudflare.net1 000
35amir.mx.cloudflare.net1 000
36mx1.mailchannels.net956
37mx.core.locaweb.com.br953
38mx2.mailchannels.net953
39us2.mx1.mailhostbox.com805
40us2.mx3.mailhostbox.com803
41us2.mx2.mailhostbox.com800
42localhost783
43mxlb.ispgateway.de778
44mx.aams4.jp776
45mx-0.aams4.jp772
46mx-1.aams4.jp772
47mx1.csof.net765
48mx2.csof.net765
49mx.spamexperts.com749
50mx20.mailspamprotection.com744
51mx10.mailspamprotection.com743
52mx30.mailspamprotection.com736
53mx20.ukraine.com.ua710
54mx15.ukraine.com.ua706
55fallbackmx.spamexperts.eu702
56lastmx.spamexperts.net690
57mx01.hornetsecurity.com686
58mx02.hornetsecurity.com685
59mx03.hornetsecurity.com673
60mx04.hornetsecurity.com666
61mx.securemx.jp664
62sagw.fsi.ne.jp629
63mx01.lolipop.jp625
64mx01.nicmail.ru586
65smtpin.rzone.de583
66mx02.nicmail.ru572
67mx03.nicmail.ru570
68mail.h-email.net560
69mx.stackmail.com557
70za-smtp-inbound-1.mimecast.co.za518
71mx.ukraine.com.ua517
72za-smtp-inbound-2.mimecast.co.za515
73mail.register.it475
74mx1.qiye.aliyun.com446
75mx-biz.mail.am0.yahoodns.net444
76mx2.qiye.aliyun.com438
77mx3.qiye.aliyun.com434
78mx002.netsol.xion.oxcs.net421
79mx001.netsol.xion.oxcs.net419
80mta-gw.infomaniak.ch413
81mail4.makeshop.jp397
82mx1.forwardemail.net352
83mx2.forwardemail.net351
84mx1-eu1.ppe-hosted.com333
85mx2-eu1.ppe-hosted.com332
86mx1.hostinger.com.br328
87mailgw.nic.in315
88mail3.makeshop.jp312
89mx.serviciodecorreo.es308
90mailstream-east.mxrecord.io302
91mailstream-west.mxrecord.io301
92mx2.hostinger.com.br293
93vlmx21.secure.ne.jp284
94vlmx22.secure.ne.jp284
95vlmx20.secure.ne.jp282
96mx01.cloud.vadesecure.com281
97mx02.cloud.vadesecure.com281
98mx1.dreamhost.com280
99mxi.alpha-prm.jp278
100mx03.cloud.vadesecure.com278

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.com9 554
2secureserver.net6 506
3_spf.mx.cloudflare.net6 358
4zoho.com6 138
5relay.mailchannels.net5 982
6websitewelcome.com4 811
7_spf.mail.hostinger.com4 423
8mx.ovh.com4 367
9us._netblocks.mimecast.com4 064
10_spf.mlsend.com3 754
11emsd1.com3 699
12emailsrvr.com3 168
13beget.com2 943
14helpscoutemail.com2 898
15spf.mail.qq.com2 785
16spf.sender.xserver.jp2 519
17spf.web-hosting.com2 369
18spf.ess.barracudanetworks.com2 314
19mxsspf.sendpulse.com2 257
20stspg-customer.com2 226
21_spf-eu.ionos.com2 157
22_netblocks.mimecast.com2 137
23eu._netblocks.mimecast.com2 031
24zcsend.net1 965
25spf.emailsignatures365.com1 791
Show rows 26 – 100
#SPF includeDomains
26_spf.createsend.com1 767
27transmail.net1 609
28spf.titan.email1 537
29aspmx.googlemail.com1 511
30spf.messagelabs.com1 500
31_spf.timeweb.ru1 461
32_incspfcheck.mailspike.net1 455
33spf.makeshop.jp1 428
34musvc.com1 375
35spf.mxhichina.com1 374
36spf.messagingengine.com1 366
37spf.exclaimer.net1 352
38spf.antispamcloud.com1 308
39_mailcust.gandi.net1 305
40spf.tmes.trendmicro.com1 291
41spf.crsend.com1 271
42kagoya.net1 262
43_spf.locaweb.com.br1 255
44spfgw.fsi.ne.jp1 254
45spf.dynect.net1 196
46spf.163.com1 120
47netblocks.dreamhost.com1 117
48_spf.rdstation.com.br1 094
49spf.smtp2go.com1 090
50mxsmtp.sendpulse.com1 090
51_spf.kundenserver.de1 072
52_spf.mailspamprotection.com1 044
53outboundmail.blackbaud.net1 010
54authsmtp.com987
55_spf.perfora.net986
56spf2.esputnik.com966
57spf.securedserverspace.com966
58_spf.ukraine.com.ua937
59_spf.aruba.it927
60_spf.jupiter.salesmanago.pl920
61_spf.mailhostbox.com914
62spf-bma.mpme.jp896
63_spf.hosting.reg.ru889
64relay.mailbaby.net853
65cmail1.com832
66ispgateway.de816
67spf.aams4.jp816
68spf.hornetsecurity.com812
69spf.shopserve.jp799
70spfa.mailendo.com750
71_spf.hostedemail.com737
72_spf.kmitd.com718
73mailcontrol.com710
74spf.improvmx.com702
75one.zoho.com681
76spf001.shop-pro.jp680
77bluehost.com680
78spf.securemx.jp671
79_spf.emaillabs.net.pl658
80spf.mail.intercom.io652
81zoho.in649
82au._netblocks.mimecast.com638
83turbo-smtp.com635
84_spf-us.ionos.com634
85e2ma.net631
86spf.ipzmarketing.com621
87spf.eu.exclaimer.net613
88spf.afas.online609
89spf.mindbox.ru601
90infusionmail.com598
91spf.bmv.jp592
92spf.nl2go.com591
93agenturserver.de586
94spf.webapps.net582
95spf.haihaimail.jp570
96_auxspf.axspace.com565
97spf.q-send.jp551
98spf.autopilothq.com547
99spf.mailanyone.net543
100spf.mysecurecloudhost.com541

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 2024-03-01. Aggregates only — raw OpenINTEL data is deleted after analysis per their data agreement.
Last build: 2026-04-28T13:35:34Z.