Who uses what for email DAILY

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

694 895
Domains with MX
612 567
Domains with SPF
258 937
Domains with DMARC
694 895
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 28 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 / Other199 40028.69%
2Google Workspace139 73820.11%
3Generic / unmatched (mail.*)103 90514.95%
4Microsoft 36593 89313.51%
5Generic / unmatched (mx*.*)63 9429.2%
6Yandex 36015 1342.18%
7Mimecast11 3301.63%
8Generic / unmatched (smtp.*)9 6411.39%
9Zoho Mail6 4290.93%
10QQ Mail (Tencent)5 3810.77%
Show rows 11 – 30
#Mailbox providerDomainsShare of MX-having domains
11OVH Mail4 9910.72%
12Amazon WorkMail4 5490.65%
13Mail.ru for Business4 2080.61%
14Rackspace Email3 4700.5%
15Cisco IronPort3 4130.49%
16Beget (RU)2 5440.37%
171&1 IONOS2 2640.33%
18Mailgun (inbound)2 2030.32%
19Gandi Mail1 9420.28%
20Alibaba Mail (China)1 7170.25%
21Hosted Email (Rackspace/IONOS)1 6000.23%
22Zoho Mail (EU)1 4290.21%
23FastMail1 4080.2%
24Titan (Hostinger)1 3120.19%
25Timeweb (RU)1 0770.15%
26NetEase Mail1 0470.15%
27ProtonMail1 0110.15%
28CSC (corporate)9490.14%
29ImprovMX (forwarding)8560.12%
30Zoho Mail (IN)6800.1%

Trend — last 28 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
54.24%
376 888 domains
Unique unmatched MX hosts
233 885
individual hostnames in the long tail
Self-hosted
27.23%
189 245 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 SES29 2854.78%
2Mailchimp27 2404.45%
3Mandrill26 1684.27%
4SendGrid (Twilio)24 5674.01%
5Zendesk22 6703.7%
6Mailgun20 1883.3%
7Salesforce12 5482.05%
8Mailjet (Sinch)10 5731.73%
9Brevo (ex-Sendinblue)8 4291.38%
10Marketo (Adobe)4 2110.69%
Show rows 11 – 30
#ESPDomainsShare of SPF-publishing domains
11Elastic Email3 9940.65%
12Unisender (RU)3 1030.51%
13SparkPost2 9080.47%
14Postmark2 5800.42%
15Salesforce Marketing Cloud2 2070.36%
16Constant Contact2 0610.34%
17Freshdesk1 8480.3%
18SMTP.com1 2030.2%
19MailerSend7900.13%
20Sailthru7370.12%
21Customer.io6540.11%
22SMTP.BZ5960.1%
23Eloqua (Oracle)3580.06%
24GetResponse2450.04%
25Intercom140.0%
26Dotdigital60.0%
27HubSpot60.0%
28AWeber20.0%
29MailPoet10.0%
30Help Scout10.0%

Trend — last 28 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 8311.12%
2Shopify4 0250.66%
3KnowBe42 4490.4%
4Atlassian (Jira/Confluence)2 0770.34%
5Trustpilot1 8680.3%
6Firebase (Google)1 2740.21%
7BigCommerce9990.16%
8NetSuite (Oracle)9900.16%
9Qualtrics9820.16%
10ClickDimensions8450.14%
Show rows 11 – 30
#SaaS appDomainsShare of SPF-publishing domains
11Docebo (LMS)7940.13%
12ConnectWise7690.13%
13PayPal Braintree6870.11%
14Autotask (ConnectWise)6270.1%
15Greenhouse5730.09%
16Zendesk5550.09%
17Oracle Cloud Email5440.09%
18Sage Intacct4920.08%
19Oracle Cloud4620.08%
20Lark / Feishu3880.06%
21HappyFox3390.06%
22UKG / UltiPro3120.05%
23Freshsales (Freshworks)2780.05%
24Shoptet2520.04%
25Chargebee2330.04%
26Gorgias2220.04%
27FormAssembly1940.03%
28Odoo1700.03%
29Squarespace1530.02%
30Recurly1280.02%

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

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

Trend — last 28 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=none21 402
2v=DMARC1; p=none;7 370
3v=DMARC1; p=none; sp=none; rua=mailto:dmarc@mailinblue.com!10m; ruf=mailto:dmarc@mailinblue.com!10m; rf=afrf; pct=100; ri=864004 132
4v=DMARC1; p=reject; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com3 012
5v=DMARC1; p=quarantine;2 563
6v=DMARC1; p=quarantine2 379
7v=DMARC1; p=reject;2 256
8v=DMARC1; p=none; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com2 084
9v=DMARC1; p=reject; rua=mailto:dmarc_report@mail.liamfactory.com; ruf=mailto:dmarc_report@mail.liamfactory.com; fo=1; pct=1001 790
10v=DMARC1; p=reject1 731
11v=DMARC1; p=none; aspf=r; sp=none1 644
12v=DMARC1;p=quarantine;pct=100;fo=11 393
13v=DMARC1; p=reject; sp=reject; adkim=s; aspf=s;1 392
14v=DMARC1; p=quarantine; pct=1001 273
15v=DMARC1; p=none; sp=none1 059
16v=DMARC1; p=none; rua=mailto:dmarc_agg@vali.email1 046
17v=DMARC1; p=none; rua=mailto:dmarc_agg@vali.email;1 014
18v=DMARC1; p=none; sp=none;904
19v=DMARC1;p=none867
20v=DMARC1; p=reject; rua=mailto:dmarc_agg@vali.email829
21v=DMARC1;p=none;sp=none;adkim=r;aspf=r;pct=100;fo=0;rf=afrf;ri=86400828
22v=DMARC1; p=quarantine; adkim=s; aspf=s790
23v=DMARC1;p=none;773
24v=DMARC1; p=none; sp=none; rf=afrf; pct=100; ri=86400711
25v=DMARC1; p=none; fo=1; ruf=mailto:dmarc@qiye.163.com; rua=mailto:dmarc_report@qiye.163.com673
Show rows 26 – 100
#DMARC recordDomains
26v=DMARC1; p=none; pct=100657
27v=DMARC1; p=reject; rua=mailto:mailauth-reports@google.com563
28v=DMARC1; p=reject; pct=100462
29v=DMARC1; p=quarantine; rua=mailto:dmarc_agg@vali.email455
30v=DMARC1; p=reject; sp=reject; pct=100; fo=1; ri=3600; rua=mailto:dmarcrecord@gmail.com; ruf=mailto:dmarcrecord@gmail.com;445
31v=DMARC1;p=quarantine;sp=none;adkim=r;aspf=r;pct=100;fo=0;rf=afrf;ri=86400366
32v=DMARC1; p=none; rua=mailto:mailauth-reports@qq.com360
33v=DMARC1; p=reject; rua=mailto:dmarc_agg@vali.email;295
34v=DMARC1; p=none; fo=1290
35v=DMARC1; p=reject; sp=none; rf=afrf; pct=100; ri=86400283
36v=DMARC1;p=reject;fo=1;rua=mailto:dmarc_rua@emaildefense.proofpoint.com;ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com279
37v=DMARC1;p=quarantine277
38v=DMARC1;p=none;sp=none;adkim=r;aspf=r;pct=100276
39v=DMARC1; p=reject; rua=mailto:dmarc_agg@dmarc.everest.email; ruf=mailto:dmarc_fr@dmarc.everest.email; fo=1; pct=100; rf=afrf267
40v=DMARC1; p=reject; pct=100;266
41v=DMARC1262
42v=DMARC1;p=none;pct=100;rua=mailto:dmarc@smtpeter.com257
43v=DMARC1; p=reject; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com;fo=1256
44v=DMARC1; p=quarantine; rua=mailto:dmarc_agg@vali.email;254
45v=DMARC1; p=none; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com;fo=1241
46v=DMARC1; p=reject; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com; fo=1238
47v=DMARC1;p=reject;sp=reject;adkim=s;aspf=s234
48v=DMARC1; p=quarantine; sp=none; pct=100; ri=86400234
49v=DMARC1; p=reject; rua=mailto:zicaptxt@ag.dmarcian.com;230
50v=DMARC1;p=reject226
51v=DMARC1; p=quarantine; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com223
52v=DMARC1; p=reject; adkim=s; aspf=s;221
53v=DMARC1; p=quarantine; pct=100;221
54v=DMARC1; p=none; pct=100;216
55v=DMARC1; p=reject; rua=mailto:report@dmarc.amazon.com; ruf=mailto:report@dmarc.amazon.com205
56v=DMARC1; p=reject; adkim=r; aspf=r; pct=100;198
57v=DMARC1; p=none; rua=mailto:mailauth-reports@google.com193
58v=DMARC1; p=none; sp=none; rua=mailto:dmarc-raports@dhosting.pl193
59v=DMARC1;p=reject;191
60v=DMARC1;p=none;pct=100;aspf=r;adkim=r;190
61v=DMARC1;p=reject;sp=none;adkim=r;aspf=r;pct=100;fo=0;rf=afrf;ri=86400186
62v=DMARC1; p=quarantine; sp=none; rf=afrf; pct=100; ri=86400181
63v=DMARC1; p=reject; rua=mailto:2ynhg3yt@ag.dmarcian.com177
64v=DMARC1;p=none;sp=none;pct=50;adkim=r;aspf=r;174
65v=DMARC1; p=none; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com; fo=1157
66v=DMARC1; p=reject; fo=1; ri=3600; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com155
67v=DMARC1; adkim=s; aspf=s; p=quarantine152
68v=DMARC1; p=none; rua=mailto:dmarc_agg@dmarc.everest.email; ruf=mailto:dmarc_fr@dmarc.everest.email; fo=1; pct=100; rf=afrf149
69v=DMARC1; p=reject; rua=mailto:zsrbf6su@ag.eu.dmarcadvisor.com;144
70v=DMARC1; p=none; rua=mailto:dmarc_agg@dmarc.250ok.net; ruf=mailto:dmarc_fr@dmarc.250ok.net; fo=1; pct=100; rf=afrf132
71v=DMARC1; p=none; rua=mailto:rua-mpse@mpub.ne.jp130
72v=DMARC1;""p=reject;""fo=1;""rua=mailto:dmarc_rua@emaildefense.proofpoint.com;""ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com126
73v=DMARC1; p=reject; sp=reject; pct=100; rua=mailto:adobe@rua.agari.com; ruf=mailto:adobe@ruf.agari.com; fo=1124
74v=DMARC1; p=none; adkim=r; aspf=r123
75v=DMARC1; p=none; sp=none; ri=86400118
76v=DMARC1; p=reject; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com118
77v=DMARC1; p=none; fo=1; rua=mailto:dmarc_agg@auth.returnpath.net; ruf=mailto:dmarc_afrf@auth.returnpath.net117
78v=DMARC1; p=none; fo=1;116
79v=DMARC1; p=reject; fo=1; ri=3600; rua=mailto:nexstar@rua.agari.com; ruf=mailto:nexstar@ruf.agari.com116
80v=DMARC1; p=none; pct=50;114
81v=DMARC1;p=none;fo=1;rua=mailto:dmarc_rua@emaildefense.proofpoint.com;ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com108
82v=DMARC1;p=reject;pct=100;rua=mailto:dmarc-groups@hubspot.com;ruf=mailto:dmarc-groups@hubspot.com105
83v=DMARC1; p=reject; sp=reject103
84v=DMARC1; p=quarantine; fo=1; ri=3600; rua=mailto:bcc@rua.dmp.cisco.com; ruf=mailto:bcc@ruf.dmp.cisco.com103
85v=DMARC1; p=none; rua=mailto:dmarc@inbound.flowmailer.net; ruf=mailto:dmarc@inbound.flowmailer.net; fo=1103
86v=DMARC1; p=reject; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com;ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com102
87v=DMARC1; p=quarantine; adkim=s102
88v=DMARC1;""p=none;""fo=1;""rua=mailto:dmarc_rua@emaildefense.proofpoint.com;""ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com102
89v=DMARC1; p=reject; pct=100; rua=mailto:dmarc-yahoo-rua@yahoo-inc.com;101
90v=DMARC1; p=reject; sp=reject;101
91v=DMARC1; p=reject; pct=100; rua=mailto:d@rua.agari.com; ruf=mailto:d@ruf.agari.com; fo=1100
92v=DMARC1;p=quarantine;99
93v=DMARC1;p=reject;pct=10098
94v=DMARC1;p=none;rua=mailto:dmarc@smtpeter.com98
95v=DMARC1; p=reject; adkim=s; aspf=s98
96v=DMARC1; p=reject; fo=1; rua=mailto:f1rg2pej@ag.eu.dmarcian.com; ruf=mailto:f1rg2pej@fr.eu.dmarcian.com96
97v=DMARC1; p=reject; aspf=s; adkim=s;95
98v=DMARC1; p=quarantine; fo=195
99v=DMARC1;p=none;pct=10094
100v=DMARC1;p=none;pct=100;rua=mailto:youremailaddress@yourdomain.com;ruf=mailto:youremailaddress@yourdomain.com93

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 605
2eforward4.registrar-servers.com10 598
3eforward1.registrar-servers.com10 596
4eforward2.registrar-servers.com10 586
5eforward3.registrar-servers.com10 561
6mailstore1.secureserver.net6 419
7smtp.secureserver.net6 389
8park-mx.above.com5 472
9route1.mx.cloudflare.net4 237
10route3.mx.cloudflare.net4 236
11route2.mx.cloudflare.net4 235
12mx1.hostinger.com2 710
13mx2.hostinger.com2 655
14mx2-hosting.jellyfish.systems2 425
15mx3-hosting.jellyfish.systems2 419
16mx1-hosting.jellyfish.systems2 415
17mail.h-email.net2 265
18mx1-us1.ppe-hosted.com2 086
19mx2-us1.ppe-hosted.com2 062
20mx1.csof.net1 810
21mx2.csof.net1 810
22mx1.privateemail.com1 642
23mx1.hostinger.in1 642
24mx2.privateemail.com1 631
25mx2.hostinger.in1 599
Show rows 26 – 100
#MX targetDomains
26nan1 475
27mx10.antispam.mailspamprotection.com1 352
28mx20.antispam.mailspamprotection.com1 352
29mx30.antispam.mailspamprotection.com1 352
30mx.a.locaweb.com.br1 286
31mx.b.locaweb.com.br1 272
32mx.jk.locaweb.com.br1 272
33mx20.mailspamprotection.com1 146
34mx10.mailspamprotection.com1 143
35mx30.mailspamprotection.com1 139
36mx156.hostedmxserver.com1 129
37mx.core.locaweb.com.br1 096
38isaac.mx.cloudflare.net1 069
39linda.mx.cloudflare.net1 068
40amir.mx.cloudflare.net1 068
41mx1.mailchannels.net1 041
42mx2.mailchannels.net1 038
43us2.mx3.mailhostbox.com918
44us2.mx1.mailhostbox.com917
45us2.mx2.mailhostbox.com917
46mxlb.ispgateway.de872
47mx.spamexperts.com821
48mx20.ukraine.com.ua801
49mx15.ukraine.com.ua799
50fallbackmx.spamexperts.eu769
51lastmx.spamexperts.net761
52mx.stackmail.com735
53localhost702
54smtpin.rzone.de690
55mx01.hornetsecurity.com605
56mx02.hornetsecurity.com604
57mx03.hornetsecurity.com596
58dmail.kagoya.net594
59mx04.hornetsecurity.com591
60mx.securemx.jp588
61mx00.1and1.com575
62mx01.1and1.com575
63mx01.nicmail.ru543
64mx-biz.mail.am0.yahoodns.net539
65za-smtp-inbound-1.mimecast.co.za534
66za-smtp-inbound-2.mimecast.co.za534
67mx02.nicmail.ru527
68mail.register.it526
69mx03.nicmail.ru526
70mx01.lolipop.jp462
71mx002.netsol.xion.oxcs.net450
72mx001.netsol.xion.oxcs.net449
73mx.ukraine.com.ua445
74mta-gw.infomaniak.ch430
75mx1.hostinger.com.br428
76mx1.forwardemail.net426
77mx2.forwardemail.net425
78mx1.qiye.aliyun.com421
79mx2.qiye.aliyun.com415
80mx3.qiye.aliyun.com405
81mx0.123-reg.co.uk403
82mx1.123-reg.co.uk403
83mx2.hostinger.com.br377
84mx1.dreamhost.com348
85mx1-eu1.ppe-hosted.com345
86mx.serviciodecorreo.es345
87mx2.dreamhost.com344
88mx2-eu1.ppe-hosted.com343
89mailgw.nic.in329
90mx01.1and1.fr307
91mx01.1and1.es306
92mx00.1and1.fr304
93mx00.1and1.es304
94mx-01-us-west-2.prod.hydra.sophos.com291
95mx003.netsol.xion.oxcs.net285
96mx004.netsol.xion.oxcs.net285
97mx-02-us-west-2.prod.hydra.sophos.com283
98mx00.1and1.co.uk279
99vlmx21.secure.ne.jp278
100vlmx22.secure.ne.jp278

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 624
2relay.mailchannels.net6 803
3secureserver.net6 761
4zoho.com6 507
5websitewelcome.com6 369
6_spf.mx.cloudflare.net5 528
7_spf.mail.hostinger.com4 630
8us._netblocks.mimecast.com4 216
9mx.ovh.com4 150
10emsd1.com3 539
11emailsrvr.com3 529
12_spf.mailspamprotection.com3 180
13spf.web-hosting.com3 094
14_incspfcheck.mailspike.net3 034
15spf.mail.qq.com2 978
16_spf.mlsend.com2 953
17helpscoutemail.com2 941
18beget.com2 639
19spf.sender.xserver.jp2 486
20spf.ess.barracudanetworks.com2 473
21_netblocks.mimecast.com2 367
22stspg-customer.com2 219
23mxsspf.sendpulse.com2 083
24eu._netblocks.mimecast.com2 030
25spf.emailsignatures365.com1 949
Show rows 26 – 100
#SPF includeDomains
26zcsend.net1 908
27_spf-eu.ionos.com1 709
28spf.messagelabs.com1 706
29aspmx.googlemail.com1 624
30transmail.net1 616
31spf.antispamcloud.com1 591
32spf.titan.email1 546
33spf.mxhichina.com1 519
34_spf.locaweb.com.br1 500
35_mailcust.gandi.net1 474
36spf.exclaimer.net1 406
37spf.dynect.net1 360
38spf.messagingengine.com1 358
39musvc.com1 344
40spf.163.com1 274
41netblocks.dreamhost.com1 270
42_spf.kundenserver.de1 251
43spf.tmes.trendmicro.com1 231
44mxsmtp.sendpulse.com1 195
45spf.crsend.com1 193
46_spf.perfora.net1 153
47spf.smtp2go.com1 141
48_spf.createsend.com1 127
49_spf.timeweb.ru1 035
50_spf.mailhostbox.com1 032
51authsmtp.com1 006
52spf.securedserverspace.com959
53spf2.esputnik.com957
54cmail1.com909
55_spf.ukraine.com.ua899
56bluehost.com894
57relay.mailbaby.net872
58_spf.jupiter.salesmanago.pl864
59spf-bma.mpme.jp822
60spf.mx.hostinger.com821
61ispgateway.de818
62_spf.kmitd.com788
63spf.improvmx.com770
64spf.hornetsecurity.com760
65mailcontrol.com749
66kagoya.net747
67spfa.mailendo.com743
68_spf.aruba.it719
69outboundmail.blackbaud.net718
70zoho.in702
71_spf.hosting.reg.ru700
72spf.mail.intercom.io698
73e2ma.net690
74spf.ipzmarketing.com658
75_spf.hostedemail.com647
76spf.webapps.net641
77infusionmail.com640
78spf.stackmail.com635
79au._netblocks.mimecast.com624
80spf.hostmar.com618
81spf.nl2go.com617
82_auxspf.axspace.com604
83spf.autopilothq.com600
84spf.securemx.jp591
85_spf.emaillabs.net.pl576
86_spf-us.ionos.com575
87turbo-smtp.com570
88spf.mindbox.ru558
89spf.afas.online556
90agenturserver.de554
91_spf.arandomserver.com550
92spf.mailanyone.net547
93_spf.act-on.net542
94_spf.embluemail.com538
95spf.a2hosting.com536
96outlook.com533
97msgfocus.com531
98email-od.com527
99spf.eu.exclaimer.net514
100outboundmail.convio.net509

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 2023-09-01. Aggregates only — raw OpenINTEL data is deleted after analysis per their data agreement.
Last build: 2026-04-28T14:05:03Z.