Who uses what for email DAILY

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

653 321
Domains with MX
565 370
Domains with SPF
223 569
Domains with DMARC
653 321
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 / Other184 20028.19%
2Google Workspace129 95519.89%
3Generic / unmatched (mail.*)99 13615.17%
4Microsoft 36587 06313.33%
5Generic / unmatched (mx*.*)59 2469.07%
6Yandex 36015 5712.38%
7Mimecast11 6741.79%
8Generic / unmatched (smtp.*)9 2391.41%
9QQ Mail (Tencent)6 1390.94%
10Zoho Mail5 8100.89%
Show rows 11 – 30
#Mailbox providerDomainsShare of MX-having domains
11Mail.ru for Business4 3780.67%
12OVH Mail3 8670.59%
13Beget (RU)3 6210.55%
14Rackspace Email3 5880.55%
15Amazon WorkMail3 5130.54%
16Cisco IronPort3 0900.47%
171&1 IONOS2 6770.41%
18Alibaba Mail (China)2 0370.31%
19Mailgun (inbound)1 8130.28%
20Gandi Mail1 6720.26%
21Hosted Email (Rackspace/IONOS)1 4890.23%
22Timeweb (RU)1 4730.23%
23FastMail1 3270.2%
24Titan (Hostinger)1 3220.2%
25Zoho Mail (EU)1 2640.19%
26NetEase Mail1 1050.17%
27ImprovMX (forwarding)1 0720.16%
28ProtonMail8680.13%
29Reg.ru8240.13%
30CSC (corporate)7730.12%

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
53.85%
351 821 domains
Unique unmatched MX hosts
225 246
individual hostnames in the long tail
Self-hosted
27.86%
182 028 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
1Mailchimp25 4794.51%
2Amazon SES23 7834.21%
3Mandrill22 8254.04%
4SendGrid (Twilio)21 6223.82%
5Zendesk18 7533.32%
6Mailgun17 5093.1%
7Salesforce11 5162.04%
8Mailjet (Sinch)8 3971.49%
9Brevo (ex-Sendinblue)7 0451.25%
10Marketo (Adobe)3 9740.7%
Show rows 11 – 30
#ESPDomainsShare of SPF-publishing domains
11Elastic Email3 3630.59%
12Unisender (RU)3 0870.55%
13Postmark2 4120.43%
14Constant Contact2 2280.39%
15SparkPost2 1590.38%
16Freshdesk1 5800.28%
17Salesforce Marketing Cloud1 4610.26%
18SMTP.com9580.17%
19Sailthru6850.12%
20Customer.io5580.1%
21MailerSend5510.1%
22SMTP.BZ5230.09%
23Eloqua (Oracle)3460.06%
24GetResponse2120.04%
25Intercom130.0%
26HubSpot90.0%
27AWeber20.0%
28MailPoet10.0%
29Klaviyo10.0%
30Help 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)6 6501.18%
2Shopify3 5770.63%
3KnowBe42 4320.43%
4Atlassian (Jira/Confluence)1 8330.32%
5Trustpilot1 3530.24%
6Firebase (Google)1 1380.2%
7BigCommerce9950.18%
8NetSuite (Oracle)9780.17%
9Qualtrics8960.16%
10ClickDimensions8740.15%
Show rows 11 – 30
#SaaS appDomainsShare of SPF-publishing domains
11Docebo (LMS)7400.13%
12PayPal Braintree6500.11%
13ConnectWise6270.11%
14Greenhouse5800.1%
15Zendesk4830.09%
16Sage Intacct4690.08%
17Autotask (ConnectWise)4270.08%
18Oracle Cloud Email4010.07%
19Oracle Cloud4000.07%
20HappyFox3390.06%
21Lark / Feishu3290.06%
22UKG / UltiPro3120.06%
23Squarespace2680.05%
24Freshsales (Freshworks)2520.04%
25FormAssembly2070.04%
26Chargebee2040.04%
27Gorgias1800.03%
28Odoo1450.03%
29Recurly1210.02%
30Shoptet1030.02%

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=none19 449
2v=DMARC1; p=none;6 233
3v=DMARC1; p=none; sp=none; rua=mailto:dmarc@mailinblue.com!10m; ruf=mailto:dmarc@mailinblue.com!10m; rf=afrf; pct=100; ri=864003 420
4v=DMARC1; p=reject; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com2 735
5v=DMARC1; p=quarantine2 205
6v=DMARC1; p=quarantine;2 106
7v=DMARC1; p=none; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com1 860
8v=DMARC1; p=reject1 575
9v=DMARC1; p=none; aspf=r; sp=none1 514
10v=DMARC1; p=reject;1 491
11v=DMARC1; p=reject; sp=reject; adkim=s; aspf=s;1 220
12v=DMARC1; p=reject; rua=mailto:dmarc_report@mail.liamfactory.com; ruf=mailto:dmarc_report@mail.liamfactory.com; fo=1; pct=1001 171
13v=DMARC1; p=quarantine; pct=1001 110
14v=DMARC1;p=quarantine;pct=100;fo=11 032
15v=DMARC1; p=none; rua=mailto:dmarc_agg@vali.email946
16v=DMARC1; p=none; rua=mailto:dmarc_agg@vali.email;868
17v=DMARC1;p=none;sp=none;adkim=r;aspf=r;pct=100;fo=0;rf=afrf;ri=86400849
18v=DMARC1; p=none; sp=none808
19v=DMARC1; p=none; sp=none;775
20v=DMARC1; p=reject; rua=mailto:dmarc_agg@vali.email736
21v=DMARC1; p=none; sp=none; rf=afrf; pct=100; ri=86400733
22v=DMARC1; p=none; fo=1; ruf=mailto:dmarc@qiye.163.com; rua=mailto:dmarc_report@qiye.163.com726
23v=DMARC1;p=none648
24v=DMARC1;p=none;639
25v=DMARC1; p=none; pct=100590
Show rows 26 – 100
#DMARC recordDomains
26v=DMARC1; p=quarantine; adkim=s; aspf=s510
27v=DMARC1; p=reject; rua=mailto:mailauth-reports@google.com496
28v=DMARC1;p=none;sp=none;adkim=r;aspf=r;pct=100392
29v=DMARC1; p=quarantine; rua=mailto:dmarc_agg@vali.email386
30v=DMARC1; p=reject; pct=100385
31v=DMARC1;p=quarantine;sp=none;adkim=r;aspf=r;pct=100;fo=0;rf=afrf;ri=86400372
32v=DMARC1; p=none; rua=mailto:mailauth-reports@qq.com290
33v=DMARC1; p=none; fo=1277
34v=DMARC1;p=reject;fo=1;rua=mailto:dmarc_rua@emaildefense.proofpoint.com;ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com267
35v=DMARC1; p=reject; rua=mailto:dmarc_agg@vali.email;245
36v=DMARC1; p=reject; sp=none; rf=afrf; pct=100; ri=86400243
37v=DMARC1;p=quarantine234
38v=DMARC1; p=reject; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com;fo=1231
39v=DMARC1; p=reject; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com; fo=1226
40v=DMARC1; p=reject; rua=mailto:2ynhg3yt@ag.dmarcian.com223
41v=DMARC1; p=reject; rua=mailto:zicaptxt@ag.dmarcian.com;216
42v=DMARC1215
43v=DMARC1; p=quarantine; rua=mailto:dmarc_agg@vali.email;214
44v=DMARC1;p=reject214
45v=DMARC1; p=quarantine; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com203
46v=DMARC1; p=none; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com;fo=1200
47v=DMARC1; p=quarantine; pct=100;197
48v=DMARC1;p=reject;sp=none;adkim=r;aspf=r;pct=100;fo=0;rf=afrf;ri=86400192
49v=DMARC1; p=reject; rua=mailto:report@dmarc.amazon.com; ruf=mailto:report@dmarc.amazon.com189
50v=DMARC1; p=quarantine; sp=none; rf=afrf; pct=100; ri=86400185
51v=DMARC1; p=none; pct=100;183
52v=DMARC1;p=none;pct=100;rua=mailto:dmarc@smtpeter.com181
53v=DMARC1; p=reject; pct=100;171
54v=DMARC1;p=none;pct=100;aspf=r;adkim=r;167
55v=DMARC1; p=none; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com; fo=1155
56v=DMARC1; p=quarantine; sp=none; pct=100; ri=86400153
57v=DMARC1;p=reject;sp=reject;adkim=s;aspf=s152
58v=DMARC1; p=reject; adkim=s; aspf=s;142
59v=DMARC1; p=reject; fo=1; ri=3600; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com141
60v=DMARC1; p=reject; fo=1; ri=3600; rua=mailto:abbvie@rua.dmp.cisco.com; ruf=mailto:abbvie@ruf.dmp.cisco.com139
61v=DMARC1;p=none;sp=none;pct=50;adkim=r;aspf=r;136
62v=DMARC1;p=reject;136
63v=DMARC1; p=none; rua=mailto:mailauth-reports@google.com135
64v=DMARC1; adkim=s; aspf=s; p=quarantine132
65v=DMARC1; p=reject; rua=mailto:dmarc_agg@dmarc.everest.email; ruf=mailto:dmarc_fr@dmarc.everest.email; fo=1; pct=100; rf=afrf132
66v=DMARC1; p=none; rua=mailto:dmarc_agg@dmarc.250ok.net; ruf=mailto:dmarc_fr@dmarc.250ok.net; fo=1; pct=100; rf=afrf129
67v=DMARC1; p=none; fo=1;120
68v=DMARC1; p=quarantine; pct=90; sp=none114
69v=DMARC1; p=reject; fo=1; ri=3600; rua=mailto:nexstar@rua.agari.com; ruf=mailto:nexstar@ruf.agari.com114
70v=DMARC1; p=none; rua=mailto:report@dmarc.em.secureserver.net114
71v=DMARC1; p=none; sp=none; ri=86400112
72v=DMARC1;""p=none;""fo=1;""rua=mailto:dmarc_rua@emaildefense.proofpoint.com;""ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com111
73v=DMARC1; p=reject; sp=reject; pct=100; rua=mailto:adobe@rua.agari.com; ruf=mailto:adobe@ruf.agari.com; fo=1110
74v=DMARC1; p=none; sp=none; rua=mailto:dmarc-raports@dhosting.pl109
75v=DMARC1;""p=reject;""fo=1;""rua=mailto:dmarc_rua@emaildefense.proofpoint.com;""ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com102
76v=DMARC1;p=none;fo=1;rua=mailto:dmarc_rua@emaildefense.proofpoint.com;ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com102
77v=DMARC1; p=reject; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com;ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com102
78v=DMARC1; p=reject; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com102
79v=DMARC1;p=reject;pct=100;rua=mailto:dmarc-groups@hubspot.com;ruf=mailto:dmarc-groups@hubspot.com101
80v=DMARC1; p=reject; sp=reject97
81v=DMARC1; p=none; rua=mailto:dmarc_agg@dmarc.everest.email; ruf=mailto:dmarc_fr@dmarc.everest.email; fo=1; pct=100; rf=afrf96
82v=DMARC1; p=reject; pct=100; rua=mailto:d@rua.agari.com; ruf=mailto:d@ruf.agari.com; fo=194
83v=DMARC1;p=quarantine;sp=quarantine;adkim=r;aspf=r;pct=100;fo=0;rf=afrf;ri=8640093
84v=DMARC1; p=reject; adkim=s; aspf=s93
85v=DMARC1; p=none; adkim=r; aspf=r88
86v=DMARC1; p=quarantine; fo=187
87v=DMARC1; p=quarantine; sp=quarantine86
88v=DMARC1; p=none; fo=1; rua=mailto:dmarc_agg@auth.returnpath.net; ruf=mailto:dmarc_afrf@auth.returnpath.net86
89v=DMARC1; p=none; pct=50;86
90v=DMARC1;p=reject;pct=10085
91v=DMARC1;p=none;pct=10083
92v=DMARC1; p=quarantine; adkim=s83
93v=DMARC1; p=reject; fo=1; ri=3600; rua=mailto:unitedhealthgroup@rua.agari.com; ruf=mailto:unitedhealthgroup@ruf.agari.com82
94v=DMARC1; p=reject; pct=100; rua=mailto:dmarc-yahoo-rua@yahoo-inc.com;79
95v=DMARC1; p=reject; sp=reject; rua=mailto:tcod1eh2@ag.eu.dmarcadvisor.com;79
96v=DMARC1; p=reject; rua=mailto:d@rua.agari.com; ruf=mailto:d@ruf.agari.com;78
97v=DMARC1;p=none;pct=100;rua=mailto:youremailaddress@yourdomain.com;ruf=mailto:youremailaddress@yourdomain.com78
98v=DMARC1; p=reject; aspf=s; adkim=s;78
99v=DMARC1;p=quarantine;75
100v=DMARC1;""p=quarantine;""pct=100;""rua=mailto:report@dmarc.amazon.com;""ruf=mailto:report@dmarc.amazon.com74

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
1eforward4.registrar-servers.com7 974
2eforward5.registrar-servers.com7 971
3eforward1.registrar-servers.com7 965
4eforward2.registrar-servers.com7 963
5eforward3.registrar-servers.com7 953
6mailstore1.secureserver.net6 499
7smtp.secureserver.net6 479
8park-mx.above.com3 018
9mx2-hosting.jellyfish.systems2 841
10mx3-hosting.jellyfish.systems2 832
11mx1-hosting.jellyfish.systems2 820
12route2.mx.cloudflare.net2 816
13route1.mx.cloudflare.net2 816
14route3.mx.cloudflare.net2 815
15nan2 512
16mx1-us1.ppe-hosted.com2 375
17mx2-us1.ppe-hosted.com2 351
18mail.h-email.net2 271
19mx1.hostinger.com1 932
20mx2.hostinger.com1 877
21mx30.antispam.mailspamprotection.com1 774
22mx10.antispam.mailspamprotection.com1 773
23mx20.antispam.mailspamprotection.com1 773
24mx1.privateemail.com1 497
25mx10.mailspamprotection.com1 495
Show rows 26 – 100
#MX targetDomains
26mx20.mailspamprotection.com1 490
27mx2.privateemail.com1 489
28mx30.mailspamprotection.com1 485
29mx1.hostinger.in1 407
30mx2.hostinger.in1 363
31mx1.mailchannels.net1 238
32mx2.mailchannels.net1 235
33mx1.csof.net1 188
34mx2.csof.net1 188
35mx156.hostedmxserver.com1 107
36mx.stackmail.com1 061
37smtpin.rzone.de1 040
38mxlb.ispgateway.de962
39localhost892
40amir.mx.cloudflare.net889
41isaac.mx.cloudflare.net889
42linda.mx.cloudflare.net888
43us2.mx1.mailhostbox.com785
44us2.mx2.mailhostbox.com777
45us2.mx3.mailhostbox.com776
46mx001.netsol.xion.oxcs.net771
47mx002.netsol.xion.oxcs.net771
48mx.spamexperts.com759
49mx00.1and1.com739
50mx01.1and1.com734
51mx01.nicmail.ru699
52fallbackmx.spamexperts.eu696
53mx-biz.mail.am0.yahoodns.net689
54lastmx.spamexperts.net686
55mx03.nicmail.ru684
56mx02.nicmail.ru681
57mx01.lolipop.jp633
58mx.a.locaweb.com.br598
59mx.b.locaweb.com.br594
60mx.jk.locaweb.com.br590
61mx1.123-reg.co.uk531
62mx0.123-reg.co.uk525
63mx01.hornetsecurity.com515
64mx02.hornetsecurity.com513
65mx03.hornetsecurity.com505
66mx04.hornetsecurity.com501
67mx003.netsol.xion.oxcs.net497
68mx.core.locaweb.com.br497
69mx004.netsol.xion.oxcs.net496
70mx1.qiye.aliyun.com489
71mx2.qiye.aliyun.com482
72mx1.dreamhost.com471
73mx3.qiye.aliyun.com469
74mx2.dreamhost.com466
75za-smtp-inbound-2.mimecast.co.za454
76za-smtp-inbound-1.mimecast.co.za453
77mx.securemx.jp434
78mx15.ukraine.com.ua429
79mx20.ukraine.com.ua425
80mx1.spaceweb.ru416
81mta-gw.infomaniak.ch411
82mx2.spaceweb.ru409
83mx1.forwardemail.net402
84mx2.forwardemail.net402
85mx00.1and1.co.uk365
86mx01.1and1.co.uk364
87mail.register.it342
88mx1-eu1.ppe-hosted.com283
89mx2-eu1.ppe-hosted.com283
90dmail.kagoya.net281
91mx01.1and1.fr281
92mx00.1and1.fr279
93kr1-aspmx1.worksmobile.com278
94mx.serviciodecorreo.es278
95mx.ukraine.com.ua277
96mx-01-us-west-2.prod.hydra.sophos.com274
97mx00.1and1.es272
98mx-02-us-west-2.prod.hydra.sophos.com271
99mx01.1and1.es271
100alt1.us.email.fireeyecloud.com271

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
1websitewelcome.com8 498
2spf.efwd.registrar-servers.com7 942
3secureserver.net6 987
4relay.mailchannels.net6 938
5zoho.com5 810
6us._netblocks.mimecast.com4 563
7_spf.mailspamprotection.com4 079
8_spf.mx.cloudflare.net3 837
9beget.com3 762
10spf.web-hosting.com3 612
11emailsrvr.com3 596
12_spf.mail.hostinger.com3 543
13mx.ovh.com3 105
14emsd1.com3 103
15spf.mail.qq.com3 083
16spf.ess.barracudanetworks.com2 788
17_spf.mlsend.com2 763
18helpscoutemail.com2 667
19_netblocks.mimecast.com2 623
20spf.sender.xserver.jp2 600
21_spf-eu.ionos.com2 165
22_incspfcheck.mailspike.net2 132
23eu._netblocks.mimecast.com1 941
24stspg-customer.com1 941
25zcsend.net1 858
Show rows 26 – 100
#SPF includeDomains
26spf.emailsignatures365.com1 849
27mxsspf.sendpulse.com1 849
28spf.mxhichina.com1 827
29spf.messagelabs.com1 644
30netblocks.dreamhost.com1 584
31aspmx.googlemail.com1 563
32transmail.net1 522
33spf.titan.email1 511
34_spf.timeweb.ru1 494
35bluehost.com1 373
36spf.163.com1 373
37spf.exclaimer.net1 336
38spf.antispamcloud.com1 330
39_mailcust.gandi.net1 287
40spf.messagingengine.com1 275
41spf.dynect.net1 240
42_spf.kundenserver.de1 226
43_spf.perfora.net1 147
44_spf.createsend.com1 105
45spf.crsend.com1 083
46mxsmtp.sendpulse.com1 077
47spf.smtp2go.com1 056
48relay.mailbaby.net1 024
49_auxspf.axspace.com1 021
50spf.tmes.trendmicro.com1 017
51spf.improvmx.com1 010
52authsmtp.com998
53_spf.hosting.reg.ru966
54spf.securedserverspace.com915
55_spf.mailhostbox.com901
56spf.stackmail.com899
57cmail1.com881
58musvc.com844
59spf.cloudus.oxcs.net796
60outboundmail.blackbaud.net788
61ispgateway.de744
62e2ma.net733
63spf.mx.hostinger.com687
64_spf-us.ionos.com685
65infusionmail.com678
66spf.registeredsite.com659
67spf.mail.intercom.io656
68mailcontrol.com655
69zoho.in654
70_spf.hostedemail.com644
71spf.hornetsecurity.com642
72spf.a2hosting.com635
73agenturserver.de619
74nicmail.ru617
75webhostbox.net615
76_spf.locaweb.com.br612
77spfa.mailendo.com590
78spf2.esputnik.com590
79spf.autopilothq.com588
80aruba.it559
81_spf.act-on.net550
82spf.mailanyone.net548
83spf.nl2go.com546
84outlook.com540
85msgfocus.com518
86outboundmail.convio.net516
87au._netblocks.mimecast.com516
88spf-bma.mpme.jp507
89spf.qiye.aliyun.com505
90spf.afas.online501
91email-od.com492
92send.aweber.com485
93spf.infomaniak.ch478
94spf.mindbox.ru475
95spf.mysecurecloudhost.com457
96_spf.prod.hydra.sophos.com456
97spf.ipzmarketing.com456
98icpbounce.com450
99_spfprod.ngpvan.com444
100_spf.lolipop.jp438

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