Who uses what for email DAILY

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

715 023
Domains with MX
602 519
Domains with SPF
231 673
Domains with DMARC
715 023
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 30 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 / Other202 33628.3%
2Google Workspace140 43019.64%
3Generic / unmatched (mail.*)111 14715.54%
4Microsoft 36592 55512.94%
5Generic / unmatched (mx*.*)63 8818.93%
6Yandex 36020 3882.85%
7Mimecast13 3201.86%
8Generic / unmatched (smtp.*)10 7201.5%
9QQ Mail (Tencent)8 0581.13%
10Zoho Mail5 8810.82%
Show rows 11 – 30
#Mailbox providerDomainsShare of MX-having domains
11Rackspace Email4 3320.61%
12Amazon WorkMail3 8750.54%
13Mail.ru for Business3 7810.53%
14Beget (RU)3 7240.52%
15Cisco IronPort3 5730.5%
16OVH Mail3 5360.49%
17Alibaba Mail (China)2 4370.34%
181&1 IONOS2 3520.33%
19Mailgun (inbound)2 0400.29%
20Gandi Mail1 6830.24%
21Hosted Email (Rackspace/IONOS)1 5160.21%
22Timeweb (RU)1 4960.21%
23FastMail1 4640.2%
24NetEase Mail1 2720.18%
25Zoho Mail (EU)1 2190.17%
26ImprovMX (forwarding)1 1990.17%
27ProtonMail9700.14%
28Titan (Hostinger)9120.13%
29NetEase 1638210.11%
30Reg.ru8100.11%

Trend — last 30 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.28%
388 084 domains
Unique unmatched MX hosts
250 075
individual hostnames in the long tail
Self-hosted
28.55%
204 166 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
1Mailchimp29 2504.85%
2Amazon SES25 4924.23%
3Mandrill25 3684.21%
4SendGrid (Twilio)23 8603.96%
5Zendesk20 6413.43%
6Mailgun18 8533.13%
7Salesforce12 2552.03%
8Mailjet (Sinch)8 8801.47%
9Brevo (ex-Sendinblue)7 2321.2%
10Marketo (Adobe)4 6100.77%
Show rows 11 – 29
#ESPDomainsShare of SPF-publishing domains
11Elastic Email3 4400.57%
12Unisender (RU)3 3060.55%
13Postmark2 7000.45%
14Constant Contact2 4550.41%
15SparkPost2 4290.4%
16Freshdesk1 8480.31%
17Salesforce Marketing Cloud1 6530.27%
18SMTP.com8770.15%
19Sailthru7510.12%
20Customer.io6790.11%
21SMTP.BZ4880.08%
22MailerSend4640.08%
23Eloqua (Oracle)3850.06%
24GetResponse2370.04%
25Intercom180.0%
26HubSpot90.0%
27AWeber20.0%
28MailPoet10.0%
29Help Scout10.0%

Trend — last 30 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)7 7571.29%
2Shopify3 8740.64%
3KnowBe42 5200.42%
4Atlassian (Jira/Confluence)2 1640.36%
5Trustpilot1 5160.25%
6Firebase (Google)1 1690.19%
7BigCommerce1 1410.19%
8NetSuite (Oracle)1 0950.18%
9ClickDimensions1 0450.17%
10Qualtrics9990.17%
Show rows 11 – 30
#SaaS appDomainsShare of SPF-publishing domains
11Docebo (LMS)7950.13%
12PayPal Braintree7200.12%
13ConnectWise7110.12%
14Zendesk6010.1%
15Greenhouse5740.1%
16Autotask (ConnectWise)5090.08%
17Sage Intacct4700.08%
18Oracle Cloud3580.06%
19HappyFox3530.06%
20Lark / Feishu3100.05%
21Oracle Cloud Email3070.05%
22UKG / UltiPro3000.05%
23Freshsales (Freshworks)2910.05%
24Squarespace2460.04%
25Chargebee2070.03%
26Gorgias2040.03%
27FormAssembly1860.03%
28Recurly1390.02%
29Odoo1240.02%
30SurveyMonkey590.01%

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

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

Trend — last 30 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=none22 065
2v=DMARC1; p=none;5 945
3v=DMARC1; p=none; sp=none; rua=mailto:dmarc@mailinblue.com!10m; ruf=mailto:dmarc@mailinblue.com!10m; rf=afrf; pct=100; ri=864003 789
4v=DMARC1; p=reject; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com2 741
5v=DMARC1; p=quarantine2 293
6v=DMARC1; p=none; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com2 137
7v=DMARC1; p=quarantine;2 012
8v=DMARC1; p=none; aspf=r; sp=none1 895
9v=DMARC1; p=reject;1 584
10v=DMARC1; p=reject1 529
11v=DMARC1; p=reject; sp=reject; adkim=s; aspf=s;1 348
12v=DMARC1;p=quarantine;pct=100;fo=11 101
13v=DMARC1; p=none; rua=mailto:dmarc_agg@vali.email;1 088
14v=DMARC1; p=quarantine; pct=1001 006
15v=DMARC1; p=reject; rua=mailto:dmarc_report@mail.liamfactory.com; ruf=mailto:dmarc_report@mail.liamfactory.com; fo=1; pct=100981
16v=DMARC1; p=none; rua=mailto:dmarc_agg@vali.email966
17v=DMARC1; p=none; sp=none;825
18v=DMARC1; p=none; fo=1; ruf=mailto:dmarc@qiye.163.com; rua=mailto:dmarc_report@qiye.163.com814
19v=DMARC1; p=none; sp=none814
20v=DMARC1; p=none; sp=none; rf=afrf; pct=100; ri=86400790
21v=DMARC1;p=none;sp=none;adkim=r;aspf=r;pct=100;fo=0;rf=afrf;ri=86400724
22v=DMARC1; p=reject; rua=mailto:dmarc_agg@vali.email679
23v=DMARC1;p=none643
24v=DMARC1; p=none; pct=100581
25v=DMARC1;p=none;566
Show rows 26 – 100
#DMARC recordDomains
26v=DMARC1; p=reject; rua=mailto:mailauth-reports@google.com562
27v=DMARC1;p=none;sp=none;adkim=r;aspf=r;pct=100451
28v=DMARC1; p=reject; sp=none; rf=afrf; pct=100; ri=86400429
29v=DMARC1; p=reject; pct=100388
30v=DMARC1; p=quarantine; rua=mailto:dmarc_agg@vali.email387
31v=DMARC1;p=quarantine;sp=none;adkim=r;aspf=r;pct=100;fo=0;rf=afrf;ri=86400332
32v=DMARC1; p=none; rua=mailto:mailauth-reports@qq.com300
33v=DMARC1; p=none; fo=1288
34v=DMARC1; p=reject; rua=mailto:zicaptxt@ag.dmarcian.com;267
35v=DMARC1257
36v=DMARC1;p=reject;fo=1;rua=mailto:dmarc_rua@emaildefense.proofpoint.com;ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com250
37v=DMARC1; p=reject; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com;fo=1247
38v=DMARC1; p=none; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com;fo=1244
39v=DMARC1;p=quarantine242
40v=DMARC1; p=reject; rua=mailto:dmarc_agg@vali.email;242
41v=DMARC1;p=none;pct=100;rua=mailto:dmarc@smtpeter.com236
42v=DMARC1; p=quarantine; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com229
43v=DMARC1; p=quarantine; rua=mailto:dmarc_agg@vali.email;225
44v=DMARC1;p=reject210
45v=DMARC1; p=reject; rua=mailto:report@dmarc.amazon.com; ruf=mailto:report@dmarc.amazon.com208
46v=DMARC1; p=none; pct=100;206
47v=DMARC1; p=reject; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com; fo=1198
48v=DMARC1; p=quarantine; sp=none; rf=afrf; pct=100; ri=86400187
49v=DMARC1; p=quarantine; pct=100;181
50v=DMARC1; p=none; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com; fo=1178
51v=DMARC1;p=reject;sp=none;adkim=r;aspf=r;pct=100;fo=0;rf=afrf;ri=86400176
52v=DMARC1; p=reject; pct=100;175
53v=DMARC1; p=reject; rua=mailto:2ynhg3yt@ag.dmarcian.com175
54v=DMARC1;p=reject;173
55v=DMARC1;p=none;pct=100;aspf=r;adkim=r;165
56v=DMARC1; p=none; rua=mailto:mailauth-reports@google.com157
57v=DMARC1; p=none; rua=mailto:dmarc_agg@dmarc.250ok.net; ruf=mailto:dmarc_fr@dmarc.250ok.net; fo=1; pct=100; rf=afrf157
58v=DMARC1;""p=none;""fo=1;""rua=mailto:dmarc_rua@emaildefense.proofpoint.com;""ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com149
59v=DMARC1;p=none;fo=1;rua=mailto:dmarc_rua@emaildefense.proofpoint.com;ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com144
60v=DMARC1; p=reject; fo=1; ri=3600; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com134
61v=DMARC1; p=none; rua=mailto:report@dmarc.em.secureserver.net132
62v=DMARC1; p=reject; pct=100; rua=mailto:dmarc-yahoo-rua@yahoo-inc.com;130
63v=DMARC1;p=none;sp=none;pct=50;adkim=r;aspf=r;129
64v=DMARC1; p=reject; pct=100; rua=mailto:d@rua.agari.com; ruf=mailto:d@ruf.agari.com; fo=1127
65v=DMARC1; p=reject; fo=1; ri=3600; rua=mailto:nexstar@rua.agari.com; ruf=mailto:nexstar@ruf.agari.com127
66v=DMARC1; p=reject; adkim=s; aspf=s;124
67v=DMARC1; p=reject; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com;ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com123
68v=DMARC1; p=none; fo=1;121
69v=DMARC1; p=none; sp=none; ri=86400120
70v=DMARC1; p=reject; sp=reject; pct=100; rua=mailto:adobe@rua.agari.com; ruf=mailto:adobe@ruf.agari.com; fo=1120
71v=DMARC1; p=reject; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com119
72v=DMARC1; p=none; sp=none; rua=mailto:dmarc-raports@dhosting.pl116
73v=DMARC1; p=none; rua=mailto:dmarc_agg@dmarc.everest.email; ruf=mailto:dmarc_fr@dmarc.everest.email; fo=1; pct=100; rf=afrf111
74v=DMARC1; p=none; fo=1; rua=mailto:dmarc_agg@auth.returnpath.net; ruf=mailto:dmarc_afrf@auth.returnpath.net103
75v=DMARC1;p=reject;pct=100;rua=mailto:dmarc-groups@hubspot.com;ruf=mailto:dmarc-groups@hubspot.com102
76v=DMARC1; p=quarantine; sp=none; pct=100; ri=86400101
77v=DMARC1; p=none; adkim=r; aspf=r97
78v=DMARC1; p=quarantine; pct=90; sp=none97
79v=DMARC1; p=reject; sp=reject96
80v=DMARC1; p=reject; adkim=s; aspf=s95
81v=DMARC1;""p=reject;""fo=1;""rua=mailto:dmarc_rua@emaildefense.proofpoint.com;""ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com95
82v=DMARC1; p=quarantine; adkim=s94
83v=DMARC1; p=reject; fo=1; ri=3600; rua=mailto:unitedhealthgroup@rua.agari.com; ruf=mailto:unitedhealthgroup@ruf.agari.com93
84v=DMARC1; p=none; fo=1; ri=3600; rua=mailto:procter-gamble@rua.dmp.cisco.com; ruf=mailto:procter-gamble@ruf.dmp.cisco.com89
85v=DMARC1;p=none;pct=100;rua=mailto:youremailaddress@yourdomain.com;ruf=mailto:youremailaddress@yourdomain.com88
86v=DMARC1; p=none; pct=50;87
87v=DMARC1; p=reject; pct=100; sp=reject; adkim=s; aspf=s; fo=1;85
88v=DMARC1; p=none; rua=mailto:rua-mpse@mpub.ne.jp84
89v=DMARC1;p=quarantine;sp=quarantine;adkim=r;aspf=r;pct=100;fo=0;rf=afrf;ri=8640082
90v=DMARC1; p=quarantine; fo=182
91v=DMARC1;p=reject;sp=reject;adkim=s;aspf=s82
92v=DMARC1; p=none; rua=mailto:dmarc@inbound.flowmailer.net; ruf=mailto:dmarc@inbound.flowmailer.net; fo=181
93v=DMARC1; p=reject; pct=100; sp=reject; rua=mailto:a6816915@inbox.ondmarc.com; ruf=mailto:a6816915@inbox.ondmarc.com; adkim=r; aspf=r; fo=1; rf=afrf; ri=360081
94v=DMARC1; p=reject; sp=reject; rua=mailto:tcod1eh2@ag.eu.dmarcadvisor.com;79
95v=DMARC1; pct=100; p=none79
96v=DMARC1; p=reject; aspf=s; adkim=s;78
97v=DMARC1; p=quarantine; sp=quarantine77
98v=DMARC1;p=quarantine;77
99v=DMARC1;p=reject;sp=none;adkim=s;aspf=s;pct=100;fo=0;rf=afrf;ri=8640077
100v=DMARC1;p=none;pct=10076

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 506
2eforward4.registrar-servers.com9 505
3eforward1.registrar-servers.com9 496
4eforward2.registrar-servers.com9 493
5eforward3.registrar-servers.com9 482
6mailstore1.secureserver.net7 510
7smtp.secureserver.net7 474
8mx20.mailspamprotection.com3 180
9mx10.mailspamprotection.com3 179
10mx30.mailspamprotection.com3 171
11route2.mx.cloudflare.net2 748
12route1.mx.cloudflare.net2 748
13route3.mx.cloudflare.net2 745
14park-mx.above.com2 744
15mx2-hosting.jellyfish.systems2 641
16mx1-hosting.jellyfish.systems2 631
17mx3-hosting.jellyfish.systems2 629
18mx1-us1.ppe-hosted.com2 599
19mx2-us1.ppe-hosted.com2 564
20mx1.privateemail.com1 644
21mx2.privateemail.com1 634
22mx1.hostinger.com1 428
23mx1.mailchannels.net1 387
24mx2.mailchannels.net1 385
25mx1.hostinger.in1 380
Show rows 26 – 100
#MX targetDomains
26mx2.hostinger.com1 353
27mx2.hostinger.in1 322
28mx002.netsol.xion.oxcs.net1 177
29mx001.netsol.xion.oxcs.net1 175
30localhost1 138
31mail.h-email.net1 127
32mx.stackmail.com1 078
33nan1 027
34isaac.mx.cloudflare.net1 022
35amir.mx.cloudflare.net1 021
36linda.mx.cloudflare.net1 020
37mx1.csof.net998
38mx2.csof.net998
39mxlb.ispgateway.de977
40mx156.hostedmxserver.com970
41smtpin.rzone.de941
42mx.spamexperts.com857
43mx00.1and1.com848
44mx01.1and1.com844
45us2.mx1.mailhostbox.com800
46us2.mx3.mailhostbox.com798
47us2.mx2.mailhostbox.com795
48fallbackmx.spamexperts.eu791
49lastmx.spamexperts.net788
50mx003.netsol.xion.oxcs.net771
51mx004.netsol.xion.oxcs.net771
52mx01.nicmail.ru768
53mx03.nicmail.ru754
54mx02.nicmail.ru751
55mx-biz.mail.am0.yahoodns.net742
56mail.eye-mail.net697
57mx.securemx.jp581
58mx1.dreamhost.com555
59mx2.dreamhost.com553
60mx1.qiye.aliyun.com544
61mx0.123-reg.co.uk543
62mx1.123-reg.co.uk542
63mx1.forwardemail.net540
64mx2.forwardemail.net539
65mx2.qiye.aliyun.com539
66mx3.qiye.aliyun.com524
67mx.a.locaweb.com.br505
68mx01.hornetsecurity.com500
69mx20.ukraine.com.ua499
70mx15.ukraine.com.ua498
71mx.b.locaweb.com.br498
72mx.jk.locaweb.com.br498
73mx02.hornetsecurity.com497
74mx03.hornetsecurity.com488
75mx04.hornetsecurity.com483
76mx.core.locaweb.com.br431
77mx1.spaceweb.ru409
78mx2.spaceweb.ru407
79mx01.1and1.co.uk407
80mx00.1and1.co.uk406
81za-smtp-inbound-2.mimecast.co.za393
82za-smtp-inbound-1.mimecast.co.za390
83mta-gw.infomaniak.ch383
84mail.register.it336
85mx.ukraine.com.ua324
86mx10.antispam.mailspamprotection.com322
87mx20.antispam.mailspamprotection.com322
88mx30.antispam.mailspamprotection.com322
89primary.us.email.fireeyecloud.com316
90alt1.us.email.fireeyecloud.com316
91mx01.lolipop.jp315
92alt2.us.email.fireeyecloud.com313
93mx1-eu1.ppe-hosted.com313
94alt3.us.email.fireeyecloud.com311
95mx2-eu1.ppe-hosted.com311
96mx-01-us-east-2.prod.hydra.sophos.com297
97mx1.mtaroutes.com293
98mx-01-us-west-2.prod.hydra.sophos.com288
99mx2.mtaroutes.com285
100mx-02-us-east-2.prod.hydra.sophos.com284

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 433
2websitewelcome.com7 724
3relay.mailchannels.net7 160
4secureserver.net7 010
5zoho.com5 938
6us._netblocks.mimecast.com5 251
7_spf.mailspamprotection.com4 351
8emailsrvr.com3 941
9_spf.mx.cloudflare.net3 834
10beget.com3 834
11spf.mail.qq.com3 785
12spf.web-hosting.com3 521
13emsd1.com3 276
14_netblocks.mimecast.com3 197
15spf.ess.barracudanetworks.com3 135
16_spf.mail.hostinger.com3 020
17helpscoutemail.com2 947
18mx.ovh.com2 842
19_spf.mlsend.com2 702
20spf.emailsignatures365.com2 228
21eu._netblocks.mimecast.com2 179
22spf.mxhichina.com2 168
23stspg-customer.com2 162
24mxsspf.sendpulse.com2 130
25spf.messagelabs.com2 006
Show rows 26 – 100
#SPF includeDomains
26zcsend.net1 893
27_incspfcheck.mailspike.net1 890
28aspmx.googlemail.com1 860
29netblocks.dreamhost.com1 773
30bluehost.com1 704
31transmail.net1 647
32spf.163.com1 559
33spf.exclaimer.net1 553
34spf.dynect.net1 510
35spf.sender.xserver.jp1 444
36_spf.timeweb.ru1 429
37spf.messagingengine.com1 384
38mxsmtp.sendpulse.com1 274
39spf.crsend.com1 244
40_mailcust.gandi.net1 212
41spf.smtp2go.com1 209
42_spf.createsend.com1 201
43spf.antispamcloud.com1 164
44spf.tmes.trendmicro.com1 108
45spf.improvmx.com1 099
46authsmtp.com1 082
47_spf.kundenserver.de1 079
48relay.mailbaby.net1 075
49spf.titan.email1 073
50cmail1.com1 063
51spf.securedserverspace.com1 056
52spf.registeredsite.com1 046
53_spf.perfora.net999
54_spf.hosting.reg.ru961
55_spf.mailhostbox.com894
56spf.stackmail.com889
57outboundmail.blackbaud.net879
58spf.cloudus.oxcs.net858
59musvc.com853
60e2ma.net824
61infusionmail.com796
62spf.mx.hostinger.com775
63spf.mail.intercom.io774
64mailcontrol.com762
65ispgateway.de712
66spf.autopilothq.com691
67nicmail.ru671
68outlook.com665
69spf2.esputnik.com663
70spf.a2hosting.com661
71aruba.it658
72spf.nl2go.com625
73spf-bma.mpme.jp623
74outboundmail.convio.net619
75spf.hornetsecurity.com617
76msgfocus.com594
77_spf.act-on.net589
78zoho.in578
79spf.securemx.jp572
80send.aweber.com571
81spf.mailanyone.net570
82spf.afas.online567
83spfa.mailendo.com566
84agenturserver.de566
85icpbounce.com557
86_spf.hostedemail.com551
87email-od.com548
88_spf.prod.hydra.sophos.com532
89au._netblocks.mimecast.com522
90spf.qiye.aliyun.com521
91_spf.locaweb.com.br518
92_auxspf.axspace.com517
93spf.mindbox.ru510
94_spf.arandomserver.com491
95_netblocks.google.com485
96spf.topdesk.net481
97_spf.ukraine.com.ua478
98webhostbox.net466
99spf.intermedia.net463
100spf.mysecurecloudhost.com459

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