Who uses what for email DAILY

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

659 524
Domains with MX
613 922
Domains with SPF
428 059
Domains with DMARC
659 524
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 / Other169 13825.65%
2Google Workspace144 41521.9%
3Microsoft 365108 64816.47%
4Generic / unmatched (mail.*)90 63213.74%
5Generic / unmatched (mx*.*)58 5288.87%
6Yandex 36013 3472.02%
7Mimecast10 1461.54%
8Generic / unmatched (smtp.*)7 8831.2%
9Zoho Mail6 8851.04%
10Amazon WorkMail4 8830.74%
Show rows 11 – 30
#Mailbox providerDomainsShare of MX-having domains
11Mail.ru for Business4 5110.68%
12OVH Mail4 3810.66%
13QQ Mail (Tencent)4 0640.62%
14Cisco IronPort3 0070.46%
151&1 IONOS2 9880.45%
16Rackspace Email2 6800.41%
17Beget (RU)2 3230.35%
18Mailgun (inbound)2 2800.35%
19Hosted Email (Rackspace/IONOS)2 0940.32%
20Zoho Mail (EU)1 6520.25%
21Alibaba Mail (China)1 4970.23%
22FastMail1 4810.22%
23Gandi Mail1 4660.22%
24ProtonMail1 3590.21%
25Timeweb (RU)1 2490.19%
26Titan (Hostinger)1 1350.17%
27NetEase Mail1 1250.17%
28Zoho Mail (IN)8910.14%
29Reg.ru7790.12%
30ImprovMX (forwarding)6820.1%

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
49.46%
326 181 domains
Unique unmatched MX hosts
201 128
individual hostnames in the long tail
Self-hosted
24.15%
159 290 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 SES36 0275.87%
2SendGrid (Twilio)29 1414.75%
3Mailgun25 3454.13%
4Zendesk24 5924.01%
5Mailchimp24 0843.92%
6Mandrill22 5503.67%
7Salesforce15 8582.58%
8Mailjet (Sinch)12 7012.07%
9Brevo (ex-Sendinblue)7 0311.15%
10Elastic Email4 4680.73%
Show rows 11 – 30
#ESPDomainsShare of SPF-publishing domains
11Unisender (RU)4 1770.68%
12Marketo (Adobe)3 5350.58%
13Postmark2 7050.44%
14SparkPost2 6940.44%
15Salesforce Marketing Cloud2 0410.33%
16Constant Contact1 9020.31%
17MailerSend1 6980.28%
18Freshdesk1 5190.25%
19SMTP.com1 2410.2%
20SMTP.BZ7750.13%
21Sailthru6530.11%
22GetResponse5280.09%
23Customer.io4990.08%
24Eloqua (Oracle)2900.05%
25HubSpot450.01%
26Intercom350.01%
27Klaviyo130.0%
28Dotdigital60.0%
29MailPoet40.0%
30ConvertKit40.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
1Shopify5 6300.92%
2Pardot (Salesforce)5 4480.89%
3KnowBe43 4020.55%
4Atlassian (Jira/Confluence)1 9500.32%
5Trustpilot1 9290.31%
6Firebase (Google)1 6500.27%
7Lark / Feishu1 1670.19%
8NetSuite (Oracle)1 1330.18%
9Qualtrics1 1320.18%
10BigCommerce1 1000.18%
Show rows 11 – 30
#SaaS appDomainsShare of SPF-publishing domains
11Sage Intacct1 0430.17%
12Oracle Cloud Email9740.16%
13Docebo (LMS)9310.15%
14Oracle Cloud8110.13%
15WordPress.com / WP Cloud7880.13%
16PayPal Braintree6470.11%
17Greenhouse6400.1%
18ClickDimensions6190.1%
19ConnectWise5880.1%
20Autotask (ConnectWise)5620.09%
21UKG / UltiPro5340.09%
22Zendesk4450.07%
23HappyFox4330.07%
24FormAssembly4020.07%
25Odoo3400.06%
26Chargebee3360.05%
27Shoptet3160.05%
28Freshsales (Freshworks)2190.04%
29Gorgias1730.03%
30Squarespace1190.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=none;48 683
2v=DMARC1; p=none33 002
3v=DMARC1; p=none; rua=mailto:rua@dmarc.brevo.com6 620
4v=DMARC1; p=quarantine;4 267
5v=DMARC1;p=none;3 963
6v=DMARC1; p=quarantine3 535
7v=DMARC1; p=reject; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com3 411
8v=DMARC1; p=reject;3 271
9v=DMARC1; p=quarantine; adkim=s; aspf=s2 931
10v=DMARC1; p=reject2 605
11v=DMARC1; p=none; sp=none; rua=mailto:dmarc@mailinblue.com!10m; ruf=mailto:dmarc@mailinblue.com!10m; rf=afrf; pct=100; ri=864002 449
12v=DMARC1; p=quarantine; pct=1002 378
13v=DMARC1; p=none; aspf=r; adkim=r;2 260
14v=DMARC1; p=none; aspf=r; sp=none1 975
15v=DMARC1;p=none1 733
16v=DMARC1; p=reject; sp=reject; adkim=s; aspf=s;1 675
17v=DMARC1;p=quarantine;pct=100;fo=11 433
18v=DMARC1; p=none; rua=mailto:dmarc_agg@vali.email1 335
19v=DMARC1; p=reject; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com;1 328
20v=DMARC1;p=none;sp=none;adkim=r;aspf=r;pct=100;fo=0;rf=afrf;ri=864001 312
21v=DMARC1; p=none; adkim=r; aspf=r;1 285
22v=DMARC1; p=none; rua=mailto:dmarc_agg@vali.email;1 219
23v=DMARC1; p=reject; rua=mailto:dmarc_agg@vali.email1 214
24v=DMARC1; p=none; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com1 171
25v=DMARC1; p=reject; adkim=r; aspf=r; rua=mailto:dmarc_rua@onsecureserver.net;1 092
Show rows 26 – 100
#DMARC recordDomains
26v=DMARC1; p=none; sp=none;1 049
27v=DMARC1; p=quarantine; adkim=r; aspf=r; rua=mailto:dmarc_rua@onsecureserver.net;965
28v=DMARC1; p=none; sp=none937
29v=DMARC1;p=reject;806
30v=DMARC1; p=none; pct=100747
31v=DMARC1; p=reject; sp=reject; adkim=s; aspf=s723
32v=DMARC1; p=quarantine; rua=mailto:dmarc_agg@vali.email713
33v=DMARC1; p=reject; pct=100698
34v=DMARC1; p=none; sp=none; rf=afrf; pct=100; ri=86400623
35v=DMARC1;p=quarantine;sp=none;adkim=r;aspf=r;pct=100;fo=0;rf=afrf;ri=86400581
36v=DMARC1; p=reject; rua=mailto:mailauth-reports@google.com579
37v=DMARC1; p=reject; pct=100;571
38v=DMARC1; p=quarantine; fo=1; ruf=mailto:dmarc@qiye.163.com; rua=mailto:dmarc_report@qiye.163.com520
39v=DMARC1; p=none; fo=1; ruf=mailto:dmarc@qiye.163.com; rua=mailto:dmarc_report@qiye.163.com519
40v=DMARC1;p=quarantine490
41v=DMARC1; p=none; rua=mailto:mailauth-reports@qq.com468
42v=DMARC1; p=quarantine; rua=mailto:dmarc_agg@vali.email;460
43v=DMARC1; p=reject; rua=mailto:dmarc_agg@vali.email;448
44v=DMARC1; p=quarantine; pct=100;447
45v=DMARC1; p=reject; rua=mailto:zsrbf6su@ag.eu.dmarcadvisor.com;433
46v=DMARC1;p=reject;sp=reject;adkim=s;aspf=s397
47v=DMARC1; p=none; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com;386
48v=DMARC1; p=none; pct=100;380
49v=DMARC1; p=reject; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com; fo=1376
50v=DMARC1; p=none; fo=1353
51v=DMARC1;p=reject352
52v=DMARC1;p=reject;fo=1;rua=mailto:dmarc_rua@emaildefense.proofpoint.com;ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com351
53v=DMARC1; p=none; rua=mailto:dmarc@smtp.mailtrap.live; ruf=mailto:dmarc@smtp.mailtrap.live; rf=afrf; pct=100348
54v=DMARC1; p=none; sp=none; adkim=r; aspf=r341
55v=DMARC1; p=reject; adkim=s; aspf=s;331
56v=DMARC1312
57v=DMARC1; p=reject; sp=none; rf=afrf; pct=100; ri=86400302
58v=DMARC1; p=reject; sp=reject; pct=100; fo=1; ri=3600; rua=mailto:dmarcrecord@gmail.com,mailto:65b747b4546e7@ag.eu.dmarcly.com; ruf=mailto:dmarcrecord@gmail.com,mailto:65b747b4546e7@fo.eu.dmarcly.com;292
59v=DMARC1; p=none; adkim=r; aspf=r291
60v=DMARC1; p=reject; rua=mailto:report@dmarc.amazon.com; ruf=mailto:report@dmarc.amazon.com280
61v=DMARC1; p=reject; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com;fo=1270
62v=DMARC1;p=reject;sp=none;adkim=r;aspf=r;pct=100;fo=0;rf=afrf;ri=86400259
63v=DMARC1; p=none; rua=mailto:mailauth-reports@google.com258
64v=DMARC1;p=quarantine;248
65v=DMARC1; p=reject; rua=mailto:dmarc_rua@onsecureserver.net;244
66v=DMARC1; p=reject; fo=1; ri=3600; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com236
67v=DMARC1; p=reject; adkim=s; aspf=s224
68v=DMARC1; p=none; rua=mailto:rua-mpse@mpub.ne.jp220
69v=DMARC1;p=none;rua=mailto:dmarc_report@service.aliyun.com219
70v=DMARC1; p=none; aspf=r; adkim=r215
71v=DMARC1; p=quarantine; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com215
72v=DMARC1; p=reject; rua=mailto:zicaptxt@ag.dmarcian.com;215
73v=DMARC1; p=none; pct=100; rua=mailto:dmarc@fbl.optin.com;214
74v=DMARC1;p=none;sp=none;pct=50;adkim=r;aspf=r;210
75v=DMARC1;p=none;rua=mailto:rua@dmarc.brevo.com210
76v=DMARC1;p=none;sp=none;adkim=r;aspf=r;pct=100199
77v=DMARC1;p=none;pct=100198
78v=DMARC1; p=quarantine; adkim=s; aspf=s;198
79v=DMARC1;p=none;pct=100;aspf=r;adkim=r;193
80v=DMARC1; p=reject; sp=reject179
81v=DMARC1; p=none; rua=mailto:dmarc@reporting.unisender.com178
82v=DMARC1; p=none; rua=mailto:dmarc@newsletters.visualsoft.co.uk; aspf=r; adkim=r; ri=86400; fo=1170
83v=DMARC1; p=none; sp=none; rua=mailto:dmarc-raports@dhosting.pl169
84v=DMARC1; p=reject; rua=mailto:a@dmarcreports.facebook.com;168
85v=DMARC1; p=quarantine; sp=none; pct=100; ri=86400165
86v=DMARC1; p=none; rua=mailto:dmarc.rua@edrone.app; ruf=mailto:dmarc.ruf@edrone.app162
87v=DMARC1; p=quarantine; sp=none; rf=afrf; pct=100; ri=86400160
88v=DMARC1; p=none; pct=100; fo=1; ri=3600; rua=mailto:1dd3f5c7@inbox.ondmarc.com; ruf=mailto:1dd3f5c7@inbox.ondmarc.com;157
89v=DMARC1; p=reject; pct=100; adkim=s; aspf=s151
90v=DMARC1;p=reject;pct=100;rua=mailto:dmarcreport@matrimony.com;ruf=mailto:dmarcreports@matrimony.com151
91v=DMARC1; p=quarantine; fo=1149
92v=DMARC1;p=none;pct=0;rua=mailto:dmarc@vercom.pl147
93v=DMARC1; p=none; rua=mailto:dmarc_agg@dmarc.everest.email; ruf=mailto:dmarc_fr@dmarc.everest.email; fo=1; pct=100; rf=afrf147
94v=DMARC1; p=none; pct=50;146
95v=DMARC1; p=quarantine; adkim=r; aspf=r145
96v=DMARC1; p=none; rua=mailto:abuse@mailbiz.com.br; ruf=mailto:abuse@mailbiz.com.br145
97v=DMARC1; p=quarantine; sp=quarantine144
98v=DMARC1;p=reject;pct=100144
99v=DMARC1; p=quarantine; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com;143
100v=DMARC1; p=none; pct=100; adkim=r; aspf=r141

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
1route1.mx.cloudflare.net7 499
2route3.mx.cloudflare.net7 496
3route2.mx.cloudflare.net7 494
4eforward5.registrar-servers.com7 106
5eforward1.registrar-servers.com7 097
6eforward4.registrar-servers.com7 097
7eforward2.registrar-servers.com7 090
8eforward3.registrar-servers.com7 079
9smtp.secureserver.net5 302
10mailstore1.secureserver.net5 300
11mx1.hostinger.com4 689
12mx2.hostinger.com4 664
13nan2 644
14mx1-us1.ppe-hosted.com2 287
15mx2-us1.ppe-hosted.com2 268
16mx3-hosting.jellyfish.systems1 923
17mx2-hosting.jellyfish.systems1 895
18mx1-hosting.jellyfish.systems1 882
19mx1.privateemail.com1 693
20mx2.privateemail.com1 680
21mx10.antispam.mailspamprotection.com1 482
22mx20.antispam.mailspamprotection.com1 481
23mx30.antispam.mailspamprotection.com1 480
24mx.plingest.com1 044
25park-mx.above.com1 032
Show rows 26 – 100
#MX targetDomains
26mx1.mailchannels.net957
27mx.a.locaweb.com.br951
28mx2.mailchannels.net951
29mx.b.locaweb.com.br941
30mx.jk.locaweb.com.br938
31mx02.hornetsecurity.com936
32mx01.hornetsecurity.com936
33mx03.hornetsecurity.com914
34mx04.hornetsecurity.com908
35isaac.mx.cloudflare.net890
36amir.mx.cloudflare.net888
37linda.mx.cloudflare.net888
38mx.stackmail.com876
39mx.core.locaweb.com.br841
40mx1.hostinger.in797
41mx2.hostinger.in790
42us2.mx1.mailhostbox.com734
43us2.mx2.mailhostbox.com731
44us2.mx3.mailhostbox.com730
45mx1.qiye.aliyun.com704
46mx.spamexperts.com696
47mx2.qiye.aliyun.com688
48fallbackmx.spamexperts.eu682
49mx3.qiye.aliyun.com678
50lastmx.spamexperts.net669
51mx1.feishu.cn658
52mx2.feishu.cn658
53mx3.feishu.cn654
54mx20.mailspamprotection.com581
55mx10.mailspamprotection.com578
56smtpin.rzone.de577
57mx30.mailspamprotection.com571
58mx.securemx.jp562
59dmail.kagoya.net558
60mta-gw.infomaniak.ch550
61mx1.csof.net547
62mx2.csof.net547
63za-smtp-inbound-1.mimecast.co.za542
64za-smtp-inbound-2.mimecast.co.za541
65mx01.nicmail.ru536
66mx20.ukraine.com.ua523
67mx02.nicmail.ru522
68mx03.nicmail.ru522
69mx15.ukraine.com.ua520
70localhost515
71mxlb.ispgateway.de499
72mx2.forwardemail.net486
73mx1.forwardemail.net484
74mailstream-east.mxrecord.io469
75mailstream-west.mxrecord.io468
76mailstream-central.mxrecord.mx449
77mail.register.it442
78mx.ukraine.com.ua424
79mx001.netsol.xion.oxcs.net392
80mx002.netsol.xion.oxcs.net392
81mx2.larksuite.com365
82mx2-eu1.ppe-hosted.com364
83mx1.larksuite.com363
84mx3.larksuite.com363
85mx1-eu1.ppe-hosted.com363
86mx01.lolipop.jp354
87mail350
88mx.serviciodecorreo.es333
89mx-biz.mail.am0.yahoodns.net328
90mailstream-eu1.mxrecord.io297
91mx1.spaceweb.ru295
92mx2.spaceweb.ru294
93mxext1.mailbox.org286
94mxext2.mailbox.org286
95mxext3.mailbox.org280
96in.arubabusiness.it279
97mx01.udag.de278
98mx1.123-reg.co.uk277
99mx00.udag.de276
100mx0.123-reg.co.uk274

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
1_spf.mx.cloudflare.net8 843
2secureserver.net8 780
3spf.efwd.registrar-servers.com7 302
4_spf.mail.hostinger.com6 261
5relay.mailchannels.net6 222
6_spf.mlsend.com5 870
7zoho.com5 613
8mx.ovh.com4 791
9websitewelcome.com4 082
10us._netblocks.mimecast.com3 661
11emsd1.com3 277
12emailsrvr.com3 090
13_spf.createsend.com2 716
14spf.mail.qq.com2 695
15beget.com2 593
16helpscoutemail.com2 586
17mxsspf.sendpulse.com2 426
18spf.web-hosting.com2 405
19zcsend.net2 371
20_spf-eu.ionos.com2 328
21stspg-customer.com2 252
22spf.ess.barracudanetworks.com2 111
23eu._netblocks.mimecast.com2 110
24spf.sender.xserver.jp2 028
25transmail.net1 802
Show rows 26 – 100
#SPF includeDomains
26_spf.rdstation.com.br1 770
27zohomail.com1 648
28spf.emailsignatures365.com1 603
29spf.messagingengine.com1 550
30spf.brevo.com1 522
31_spf.hostedemail.com1 408
32musvc.com1 407
33_netblocks.mimecast.com1 403
34spf.crsend.com1 375
35_spf.timeweb.ru1 338
36_incspfcheck.mailspike.net1 305
37spf.antispamcloud.com1 299
38spf.mxhichina.com1 280
39_mailcust.gandi.net1 276
40spf.titan.email1 250
41aspmx.googlemail.com1 249
42spf.exclaimer.net1 248
43spf.163.com1 247
44spf.tmes.trendmicro.com1 208
45spf.hornetsecurity.com1 175
46relay.mailbaby.net1 139
47spf.messagelabs.com1 125
48netblocks.dreamhost.com1 120
49_spf.locaweb.com.br1 113
50spf.smtp2go.com1 061
51one.zoho.com1 053
52_spf.kundenserver.de1 050
53spfa.cpmails.com1 039
54spf2.esputnik.com1 025
55spf.securedserverspace.com1 005
56authsmtp.com998
57outboundmail.blackbaud.net985
58_spf.jupiter.salesmanago.pl971
59_spf.perfora.net963
60_spf.hosting.reg.ru944
61_spf.aruba.it939
62spf.dynect.net927
63spf.mysecurecloudhost.com927
64spf.stackmail.com904
65spf.ipzmarketing.com904
66_spf.ukraine.com.ua886
67spf-bma.mpme.jp867
68spf.qiye.aliyun.com862
69spfa.mailendo.com848
70_spf.mailhostbox.com846
71_spf.mailspamprotection.com827
72mxsmtp.sendpulse.com802
73spf-de.emailsignatures365.com799
74_spf.emaillabs.net.pl796
75zoho.in788
76_spf.dashasender.ru760
77ispgateway.de757
78spf.eu.exclaimer.net730
79usb._netblocks.mimecast.com709
80kagoya.net706
81_spf.kmitd.com702
82cmail1.com694
83eu.zcsend.net679
84spf.unisender.ru677
85spf.improvmx.com671
86de._netblocks.mimecast.com667
87turbo-smtp.com661
88spf.sendsay.ru661
89spf.infomaniak.ch660
90_spf-us.ionos.com647
91spf.mindbox.ru646
92agenturserver.de629
93bluehost.com626
94eu.transmail.net626
95spf.afas.online626
96spf.webapps.net623
97sendersrv.com614
98au._netblocks.mimecast.com613
99spf.flowmailer.net610
100spf.us.exclaimer.net609

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.

2026-04-27 — 665 219 MX, 624 507 SPF2026-04-26 — 673 272 MX, 632 104 SPF2026-03-01 — 683 543 MX, 639 798 SPF2026-02-01 — 688 114 MX, 641 985 SPF2026-01-01 — 660 114 MX, 616 352 SPF2025-12-01 — 668 692 MX, 622 313 SPF2025-09-01 — 685 366 MX, 635 390 SPF2025-08-01 — 681 988 MX, 632 521 SPF2025-07-01 — 687 700 MX, 638 068 SPF2025-06-01 — 699 879 MX, 648 954 SPF2025-05-01 — 711 257 MX, 659 028 SPF2025-04-01 — 702 306 MX, 651 786 SPF2025-03-01 — 705 611 MX, 653 173 SPF2025-02-01 — 696 358 MX, 644 666 SPF2025-01-01 — 674 214 MX, 626 064 SPF2024-12-01 — 675 247 MX, 626 465 SPF2024-11-01 — 669 912 MX, 614 354 SPF2024-10-01 — 659 879 MX, 603 315 SPF2024-09-01 — 660 693 MX, 604 347 SPF2024-08-01 — 639 733 MX, 586 007 SPF2024-06-01 — 614 961 MX, 562 373 SPF2024-05-01 — 621 817 MX, 566 602 SPF2024-04-01 — 641 948 MX, 582 732 SPF2024-03-01 — 666 638 MX, 601 954 SPF2024-02-01 — 653 497 MX, 588 373 SPF2024-01-01 — 657 371 MX, 586 519 SPF2023-12-01 — 660 455 MX, 588 456 SPF2023-11-01 — 666 944 MX, 591 587 SPF2023-10-01 — 675 039 MX, 597 200 SPF2023-09-01 — 694 895 MX, 612 567 SPF2023-08-01 — 716 729 MX, 622 501 SPF2023-07-01 — 653 321 MX, 565 370 SPF2023-06-01 — 656 260 MX, 561 661 SPF2023-05-01 — 657 236 MX, 561 046 SPF2023-04-01 — 662 162 MX, 562 122 SPF2023-03-01 — 730 155 MX, 620 415 SPF2023-02-01 — 715 023 MX, 602 519 SPF2023-01-01 — 712 767 MX, 599 702 SPF2022-12-01 — 712 641 MX, 594 977 SPF2022-11-01 — 710 891 MX, 590 969 SPF2022-10-01 — 716 152 MX, 594 587 SPF2022-09-01 — 716 956 MX, 595 410 SPF
Data source: https://openintel.nl/data/forward-dns/top-lists/
Generated automatically from OpenINTEL Tranco snapshot 2025-11-01. Aggregates only — raw OpenINTEL data is deleted after analysis per their data agreement.
Last build: 2026-04-28T19:09:44Z.