662 160
Domains with MX
627 184
Domains with SPF
465 863
Domains with DMARC
47.30%
DMARC enforced

What you're looking at. Headline numbers for the analysed Tranco snapshot: how many domains publish each kind of email-related DNS record, and what share of DMARC publishers actually enforce their policy (quarantine/reject). 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.

Key findings — 2026-08-10

Each statement is recomputed daily from the full dataset and published under CC BY 4.0 — reuse it, cite "Live Direct Marketing, Email infrastructure of the Tranco top-1M" with a link. Machine-readable version: api/latest.json · llms.txt. Looking for one domain? Domain lookup — mailbox provider, ESPs and DMARC policy of any top-10k website.

Classification coverage — what the dictionaries explain

66.15%
MX attributed to a vendor
11.27%
MX unresolved / generic
82.65%
SPF include targets classified
79 992
Unique unknown SPF targets

Coverage is recomputed from every snapshot. MX vendor attribution excludes self-hosted domains (22.58%); SPF coverage counts each distinct include:/redirect= target once per domain. Fully classified SPF stacks: 72.47% of domains that delegate through at least one include.

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. Note: Cloudflare Email Routing also appears in the ESP table below — that is the same service observed through two different record types (MX here, SPF there), not a double count of domains.

#Mailbox providerDomainsShare of MX-having domains
1Self-Hosted →149 51322.58%
2Google Workspace →143 70021.70%
3Microsoft 365 →111 22116.80%
4Unknown / Other →44 8396.77%
5Generic / unmatched (mx*.*) →16 9612.56%
6Proofpoint →12 7531.93%
7Generic / unmatched (mail.*) →11 7981.78%
8Cloudflare Email Routing →11 0631.67%
9Yandex 360 →10 8291.64%
10Mimecast →9 9461.50%
Show rows 11 – 30
#Mailbox providerDomainsShare of MX-having domains
11Namecheap Email Forwarding →8 7941.33%
12Hostinger →8 3541.26%
13Zoho Mail →6 7711.02%
14QQ Mail (Tencent) →5 4220.82%
15GoDaddy →5 1490.78%
16OVH Mail →4 8360.73%
17Amazon WorkMail →4 6050.70%
181&1 IONOS →4 2420.64%
19Mail.ru for Business →3 5320.53%
20Barracuda →3 4520.52%
21Jellyfish (Namecheap) →2 9880.45%
22Proofpoint Essentials →2 8350.43%
23SpamExperts (SolarWinds) →2 6300.40%
24Cisco IronPort →2 5640.39%
25Beget (RU) →2 4330.37%
26Mailgun (inbound) →2 2390.34%
27Rackspace Email →2 1960.33%
28Alibaba Mail (China) →2 0360.31%
29Zoho Mail (EU) →1 8550.28%
30ProtonMail →1 7120.26%
🏠 Open Providers portfolio → cards with country, blurb, sparkline & TLD breakdown — click any provider name above to drill into a detail page

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
11.27%
74 627 domains
Unique unmatched MX hosts
36 450
individual hostnames in the long tail
Self-hosted
22.58%
149 513 domains running their own MX
📋 Open detailed long-tail report →·⬇ Download top-1000 unmatched MX (CSV)·⬇ Download 100 curiosities (CSV)

Authentication by Tranco tier

The same metrics cut by list position. Enforcement is a function of how big the site is: the gradient from the top of the list to the tail is the finding, not the average. "Not in current list" = domains measured in this snapshot that are absent from today's Tranco file (list rotation).

#TierDomains with MXSPFDMARC enforcedSelf-hosted
1Tranco top-1k69493.52%73.05%11.67%
2top-1k … 10k6 51292.89%56.60%14.22%
3top-10k … 100k64 76891.23%43.55%17.57%
4top-100k … 1M464 18389.96%30.28%22.40%
5not in current list126 00387.66%18.79%26.31%

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 SES →38 6076.16%
2SendGrid (Twilio) →29 3724.68%
3Mailgun →25 3304.04%
4Zendesk →23 7193.78%
5Mailchimp →22 7243.62%
6Mandrill →20 7253.30%
7HubSpot →19 5743.12%
8Salesforce →16 2222.59%
9Mailjet (Sinch) →13 2372.11%
10Cloudflare Email Routing →11 6691.86%
Show rows 11 – 30
#ESPDomainsShare of SPF-publishing domains
11Namecheap Forwarding →9 0751.45%
12Brevo (ex-Sendinblue) →9 0731.45%
13Mimecast →8 7071.39%
14MailerSend →8 0311.28%
15MailChannels →6 7901.08%
16Proofpoint →5 8840.94%
17Elastic Email →4 4210.70%
18Unisender (RU) →3 6060.57%
19Constant Contact →3 5820.57%
20Campaign Monitor →3 4740.55%
21Marketo (Adobe) →3 2500.52%
22Zoho Campaigns →3 2140.51%
23Emsd1 (transactional) →2 9570.47%
24Postmark →2 9210.47%
25SendPulse →2 8740.46%
26Exclaimer (signatures) →2 6440.42%
27SparkPost →2 6220.42%
28Zoho ZeptoMail →2 6130.42%
29Help Scout →2 2630.36%
30Salesforce Marketing Cloud →2 1860.35%
📮 Open Mailing services portfolio → all detected ESPs with descriptions, country, sparklines — click any ESP above to drill into a detail page

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
1Shopify →5 2440.84%
2Pardot (Salesforce) →4 8440.77%
3CodeTwo Email Signatures 365 →4 4060.70%
4KnowBe4 →3 4510.55%
5Statuspage (Atlassian) →2 0590.33%
6Trustpilot →1 8800.30%
7Firebase (Google) →1 8210.29%
8Atlassian (Jira/Confluence) →1 7940.29%
9BigCommerce →1 7100.27%
10Lark / Feishu →1 2860.21%
Show rows 11 – 30
#SaaS appDomainsShare of SPF-publishing domains
11Sage Intacct →1 1180.18%
12NetSuite (Oracle) →1 1060.18%
13Qualtrics →1 0910.17%
14Oracle Cloud Email →1 0880.17%
15WordPress.com / WP Cloud →9940.16%
16SAP SuccessFactors →9560.15%
17Docebo (LMS) →9170.15%
18Oracle Cloud →8300.13%
19One.com (DK hosting) →7880.13%
20Zoho Books →7060.11%
21AFAS →6620.11%
22Greenhouse →6180.10%
23PayPal Braintree →5700.09%
24ClickDimensions →5510.09%
25UKG / UltiPro →5370.09%
26Autotask (ConnectWise) →4710.08%
27TOPdesk →4540.07%
28FormAssembly →4490.07%
29ConnectWise →4320.07%
30Odoo →4240.07%
📧 Open SaaS/ESP senders portfolio → SaaS apps sending FROM customer domains — click any SaaS name above for detail

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.12%30d ago▲ +0.33%

Trend — last 30 day(s) · DMARC policies

Does the DMARC record actually do anything?

A three-way split instead of the usual enforced/not-enforced binary. Enforcingp=quarantine or p=reject. Monitoringp=none with a working rua= address: a legitimate rollout phase, someone is reading the reports. Inertp=none with no reporting address at all: the record enforces nothing and reports nowhere.

35.38%
DMARC without reporting address
164 823 domains publish DMARC but receive no aggregate reports
24.95%
Inert records (p=none, no rua)
116 239 domains — the record does nothing at all
36.51%
Reports go to an external vendor only
170 092 domains send every report off-domain

Maturity split of 465 863 DMARC-publishing domains: 49.61% enforcing, 25.40% monitoring, 24.95% inert. Under DMARCbis (RFC 9989/9990/9991) the pct= tag no longer exists, so the same snapshot yields 49.61% enforcing against 47.30% under RFC 7489 — both are published, the RFC 7489 figure keeps the 2016 series continuous. DMARCbis adoption is still marginal: 287 domains (0.06%) publish np=, 70 publish psd=. 945 records carry a rua= tag that parses to no usable address at all.

#DMARC reporting destinationDomainsShare of DMARC publishers
1Self-hosted / Other216 10446.39%
2Cloudflare DMARC27 0985.82%
3Valimail14 2113.05%
4Proofpoint EFD12 6552.72%
5Brevo (ex-Sendinblue)12 5262.69%
6dmarcian10 2102.19%
7Postmark DMARC7 3001.57%
8DMARC Analyzer6 8741.48%
9DMARC Advisor3 1110.67%
10DMARC Digests2 8430.61%
Show rows 11 – 25
#DMARC reporting destinationDomainsShare of DMARC publishers
11PowerDMARC2 4660.53%
12Agari (Fortra)2 3220.50%
13URIports2 1330.46%
14DMARCLY1 9130.41%
15Barracuda1 5340.33%
16Google Workspace9340.20%
17EasyDMARC8230.18%
18MailHardener7120.15%
19Red Sift OnDMARC5670.12%
20Cisco Secure Email4080.09%
21Validity (Return Path)3090.07%
22Microsoft 3652920.06%
23Netcraft2890.06%
24TDMARC2180.05%
25MXToolbox450.01%

Mailbox provider × sending platform

Which sending platforms sit on top of which inbound stack. Cell = domains whose primary MX belongs to that mailbox provider and whose SPF authorises that ESP; the percentage is of that provider's domains. A domain may use several ESPs, so rows do not sum to 100%.

Mailbox providerAmazon SESSendGrid (Twilio)ZendeskMailchimpMailgunHubSpotMandrillSalesforceCloudflare Email RoutingMailjet (Sinch)
Self-Hosted2 726
1.82%
1 471
0.98%
754
0.50%
1 389
0.93%
1 562
1.04%
395
0.26%
1 144
0.77%
384
0.26%
105
0.07%
1 249
0.84%
Google Workspace14 491
10.08%
11 574
8.05%
11 026
7.67%
9 044
6.29%
9 579
6.67%
9 532
6.63%
8 396
5.84%
4 242
2.95%
334
0.23%
3 472
2.42%
Microsoft 3659 611
8.64%
9 168
8.24%
6 924
6.23%
7 330
6.59%
6 264
5.63%
6 403
5.76%
6 522
5.86%
7 086
6.37%
46
0.04%
4 110
3.70%
Proofpoint838
6.57%
680
5.33%
739
5.79%
471
3.69%
334
2.62%
457
3.58%
500
3.92%
1 105
8.66%
1
0.01%
252
1.98%
Cloudflare Email Routing232
2.10%
72
0.65%
70
0.63%
32
0.29%
139
1.26%
12
0.11%
18
0.16%
6
0.05%
10 830
97.89%
98
0.89%
Yandex 360158
1.46%
37
0.34%
29
0.27%
66
0.61%
211
1.95%
2
0.02%
70
0.65%
1
0.01%
8
0.07%
28
0.26%
Mimecast993
9.98%
1 025
10.31%
780
7.84%
687
6.91%
520
5.23%
790
7.94%
642
6.45%
1 162
11.68%
1
0.01%
194
1.95%
Namecheap Email Forwarding16
0.18%
11
0.13%
5
0.06%
2
0.02%
21
0.24%
0
0.00%
7
0.08%
0
0.00%
3
0.03%
9
0.10%
Hostinger45
0.54%
41
0.49%
9
0.11%
6
0.07%
45
0.54%
3
0.04%
5
0.06%
0
0.00%
9
0.11%
29
0.35%
Zoho Mail406
6.00%
171
2.53%
92
1.36%
117
1.73%
302
4.46%
19
0.28%
102
1.51%
4
0.06%
40
0.59%
103
1.52%

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;58 757
2v=DMARC1; p=none32 872
3v=DMARC1; p=none; rua=mailto:rua@dmarc.brevo.com9 170
4v=DMARC1; p=quarantine;5 013
5v=DMARC1; p=quarantine4 008
6v=DMARC1; p=quarantine; adkim=r; aspf=r; rua=mailto:dmarc_rua@onsecureserver.net;3 968
7v=DMARC1; p=reject;3 931
8v=DMARC1;p=none;3 721
9v=DMARC1; p=reject; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com3 163
10v=DMARC1; p=quarantine; adkim=s; aspf=s3 061
11v=DMARC1; p=reject2 896
12v=DMARC1; p=reject; sp=reject; rua=mailto:dmarc.report@axa.com;2 880
13v=DMARC1; p=none; aspf=r; adkim=r;2 344
14v=DMARC1; p=quarantine; pct=1002 325
15v=DMARC1; p=reject; sp=reject; adkim=s; aspf=s;2 193
16v=DMARC1; p=none; sp=none; rua=mailto:dmarc@mailinblue.com!10m; ruf=mailto:dmarc@mailinblue.com!10m; rf=afrf; pct=100; ri=864002 072
17v=DMARC1;p=none1 767
18v=DMARC1; p=none; aspf=r; sp=none1 730
19v=DMARC1; p=none; adkim=r; aspf=r;1 551
20v=DMARC1; p=reject; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com;1 492
21v=DMARC1; p=none; rua=mailto:dmarc_agg@vali.email1 260
22v=DMARC1; p=reject; rua=mailto:dmarc_agg@vali.email1 257
23v=DMARC1;p=reject;1 250
24v=DMARC1;p=quarantine;pct=100;fo=11 245
25v=DMARC1;p=none;sp=none;adkim=r;aspf=r;pct=100;fo=0;rf=afrf;ri=864001 221
Show rows 26 – 100
#DMARC recordDomains
26v=DMARC1; p=none; sp=none1 049
27v=DMARC1; p=none; sp=none;1 035
28v=DMARC1; p=reject; adkim=r; aspf=r; rua=mailto:dmarc_rua@onsecureserver.net;1 019
29v=DMARC1; p=reject; fo=1; ri=3600; rua=mailto:ewai10d2@ag.eu.dmarcian.com; ruf=mailto:ewai10d2@fr.eu.dmarcian.com1 007
30v=DMARC1; p=none; rua=mailto:dmarc_agg@vali.email;939
31v=DMARC1; p=reject; rua=mailto:report@dmarc.amazon.com; ruf=mailto:report@dmarc.amazon.com889
32v=DMARC1; p=none; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com869
33v=DMARC1; p=reject; sp=reject; adkim=s; aspf=s786
34v=DMARC1; p=quarantine; rua=mailto:dmarc_agg@vali.email755
35v=DMARC1; p=reject; pct=100729
36v=DMARC1; p=quarantine; fo=1; ruf=mailto:dmarc@qiye.163.com; rua=mailto:dmarc_report@qiye.163.com718
37v=DMARC1; p=none; pct=100718
38v=DMARC1; p=reject; rua=mailto:dmarc_rua@onsecureserver.net; adkim=r; aspf=r;709
39v=DMARC1;p=quarantine;sp=none;adkim=r;aspf=r;pct=100;fo=0;rf=afrf;ri=86400689
40v=DMARC1; p=none; fo=1; ruf=mailto:dmarc@qiye.163.com; rua=mailto:dmarc_report@qiye.163.com645
41v=DMARC1; p=reject; rua=mailto:mailauth-reports@google.com615
42v=DMARC1; p=none; sp=none; rf=afrf; pct=100; ri=86400553
43v=DMARC1; p=quarantine; pct=100;541
44v=DMARC1; p=quarantine; rua=mailto:dmarc_agg@vali.email;521
45v=DMARC1;p=quarantine514
46v=DMARC1; p=none; rua=mailto:mailauth-reports@qq.com494
47v=DMARC1;p=reject;sp=reject;adkim=s;aspf=s460
48v=DMARC1; p=reject; pct=100;457
49v=DMARC1; p=reject; rua=mailto:dmarc_agg@vali.email;450
50v=DMARC1; p=none; sp=none; adkim=r; aspf=r400
51v=DMARC1; p=none; adkim=r; aspf=r389
52v=DMARC1; p=none; pct=100;366
53v=DMARC1; p=reject; adkim=s; aspf=s;360
54v=DMARC1; p=reject; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com; fo=1348
55v=DMARC1; p=reject; sp=none; rf=afrf; pct=100; ri=86400329
56v=DMARC1;p=reject323
57v=DMARC1315
58v=DMARC1; p=reject; adkim=s; aspf=s313
59v=DMARC1;p=quarantine;313
60v=DMARC1;p=reject;fo=1;rua=mailto:dmarc_rua@emaildefense.proofpoint.com;ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com306
61v=DMARC1; p=reject; sp=reject; pct=100; fo=1; ri=3600; rua=mailto:dmarcrecord@gmail.com; ruf=mailto:dmarcrecord@gmail.com;303
62v=DMARC1; p=none; aspf=r; adkim=r303
63v=DMARC1; p=none; fo=1301
64v=DMARC1; p=none; rua=mailto:dmarc@smtp.mailtrap.live; ruf=mailto:dmarc@smtp.mailtrap.live; rf=afrf; pct=100299
65v=DMARC1; p=none; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com;299
66v=DMARC1;p=none;sp=none;pct=50;adkim=r;aspf=r;274
67v=DMARC1; p=reject; rua=mailto:tnoff9hr@ag.eu.dmarcadvisor.com; aspf=s; adkim=s;274
68v=DMARC1;p=reject;sp=none;adkim=r;aspf=r;pct=100;fo=0;rf=afrf;ri=86400273
69v=DMARC1; p=none; rua=mailto:mailauth-reports@google.com269
70v=DMARC1;p=none;pct=100263
71v=DMARC1;p=none;rua=mailto:dmarc_report@service.aliyun.com254
72v=DMARC1; p=quarantine; rua=mailto:rua@dmarc.brevo.com249
73v=DMARC1; p=reject; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com;fo=1245
74v=DMARC1; p=quarantine; adkim=s; aspf=s;238
75v=DMARC1; p=none; rua=mailto:rua-mpse@mpub.ne.jp235
76v=DMARC1; p=reject; rua=mailto:2ynhg3yt@ag.dmarcian.com233
77v=DMARC1; p=quarantine; adkim=r; aspf=r226
78v=DMARC1; p=reject; rua=mailto:zsrbf6su@ag.eu.dmarcadvisor.com;223
79v=DMARC1; p=reject; rua=mailto:dmarc.report@axa.com;213
80v=DMARC1; p=reject; rua=mailto:dmarc_rua@onsecureserver.net;212
81v=DMARC1; p=none; sp=none; rua=mailto:dmarc-raports@dhosting.pl209
82v=DMARC1; p=none; rua=mailto:dmarc.rua@edrone.app; ruf=mailto:dmarc.ruf@edrone.app206
83v=DMARC1; p=quarantine; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com204
84v=DMARC1; p=reject; rua=mailto:zicaptxt@ag.dmarcian.com;200
85v=DMARC1; p=none; rua=mailto:dmarc@reporting.unisender.com198
86v=DMARC1; p=reject; fo=1; ri=3600; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com198
87v=DMARC1;p=none;rua=mailto:rua@dmarc.brevo.com190
88v=DMARC1; p=reject; sp=reject187
89v=DMARC1; p=quarantine; fo=1; rua=mailto:dmarc_rua@emaildefense.proofpoint.com; ruf=mailto:dmarc_ruf@emaildefense.proofpoint.com;184
90v=DMARC1; p=quarantine; pct=100; rua=mailto:61e7fc8674b33@ag.eu.dmarcly.com; ruf=mailto:61e7fc8674b33@fo.eu.dmarcly.com; sp=quarantine; fo=1;183
91v=DMARC1; p=quarantine; pct=100; adkim=r; aspf=r181
92v=DMARC1;p=reject;pct=100;178
93v=DMARC1; p=quarantine; fo=1176
94v=DMARC1; p=reject; sp=reject; aspf=s; pct=100174
95v=DMARC1; p=none; pct=100; rua=mailto:dmarc@fbl.optin.com;174
96v=DMARC1;p=none;sp=none;adkim=r;aspf=r;pct=100174
97v=DMARC1; p=quarantine; adkim=r; aspf=r;170
98v=DMARC1; p=reject; sp=reject;170
99v=DMARC1;p=none;pct=100;aspf=r;adkim=r;169
100v=DMARC1; p=reject; pct=100; adkim=s; aspf=s167
Is your domain one of them? More than half of DMARC-publishing domains enforce nothing — and most senders only find out from their open rates. Run a free inbox placement test: send a real message to our seed mailboxes at Gmail, Outlook, Yandex and Mail.ru and see where it lands — inbox, spam, or nowhere.
Test your deliverability →

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
1localhost414
2mx.services292
3mail238
4mail.parktons.com231
5zonemx.eu194
6mail1.sbnation.com167
7mail.pickelhost.com160
8mail.autoline.com.ua149
9mx2.z-ns.net148
10mx.email-messaging.com134
11alltheemails.com133
12mail2.recop.jp131
13lbmx.bcc.gov.bd125
14mxi.alpha-prm.jp122
15mx1.ticketsinbound.com120
16mx2.ticketsinbound.com116
17mx1d10.thinline.cz113
18mx1b20.thinline.cz113
19~103
20s.mail.dcsaas.net96
21mx-backup.serveriai.lt96
22cloudmail.auto-vision.ru93
23mx.maxns.net87
24amazon-smtp.amazon.com87
25mailforward.dnsv.jp86
Show rows 26 – 100
#MX targetDomains
26mx.aams4.jp82
27mx-0.aams4.jp79
28mx-1.aams4.jp79
29mx.vshosting.eu78
30mx1-dk.centerasecurity.dk77
31mx2-dk.centerasecurity.dk77
32mx1.netim.net77
33mx2.netim.net77
34email.webglobe.cz76
35email2.webglobe.cz76
36email3.webglobe.cz75
37email4.webglobe.cz75
38mail.vipmailservice.com75
39mx-01.mail-forwarder.io74
40mx-02.mail-forwarder.io72
41mail-fr.securemail.pro72
42mx3-dk.centerasecurity.dk71
43townsites.dnsmaster.net71
44mx6.kvnbw.de71
45mx7.kvnbw.de71
46mx8.kvnbw.de71
47mx9.kvnbw.de71
48mail.global.frontbridge.com70
49mx.sendcloud.org69
50q01es.mail.s-web.de69
51q02es.mail.s-web.de69
52r01es.mail.s-web.de69
53r02es.mail.s-web.de69
54mx1.email-cluster.com68
55mx2.email-cluster.com68
56mxa.expediagroup.com67
57mxb.expediagroup.com67
58mx4.emailowl.com65
59mx1.daouoffice.com65
60failover1.email-cluster.com65
61mx5.emailowl.com64
62void.blackhole.mx64
63gmail22.gadmail.de64
64gmail23.gadmail.de64
65wmail22.gadmail.de64
66posta.mediacenter.hu63
67posta2.mediacenter.hu63
68posta4.mediacenter.hu63
69posta5.mediacenter.hu63
70mx.spamfilter.io63
71mx6.emailowl.com63
72smtp-avas.seeweb.it63
73mailgw01.host.it63
74wmail23.gadmail.de63
75posta3.mediacenter.hu62
76mailgw02.host.it62
77mx01.statens-it.dk62
78mx02.statens-it.dk62
79mx03.statens-it.dk62
80mx04.statens-it.dk62
81mx05.statens-it.dk62
82mx06.statens-it.dk62
83mx07.statens-it.dk62
84mx08.statens-it.dk62
85mx1.alwaysdata.com61
86mx2.alwaysdata.com61
87mail.mpcloud.net60
88antispam.korea.kr60
89mx2.daouoffice.com60
90omail22.gadmail.de60
91omail23.gadmail.de60
92rmail22.gadmail.de60
93rmail23.gadmail.de60
94mx1.nepal.gov.np60
95mx2.nepal.gov.np59
96d01es.mail.s-web.de59
97d02es.mail.s-web.de59
98e01es.mail.s-web.de59
99e02es.mail.s-web.de59
100mta.vshosting.eu58

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
1yunyou.top136
2spf.mailii.org132
3_spf1-aws.recop.jp131
4_spf.edhost.eu121
5_spf.mail-neoserv.si119
6spf.pitcom.net116
7gateways.firstdata.com113
8_spf.tld-mx.com109
9relay.guzelhosting.com109
10_spf.exsilia.net109
11_spf.armada.it109
12_spf.lh.pl108
13mailii.org107
14spf.aams4.jp106
15spf.w4ymail.at105
16spf.boldem.cz104
17spf.mailcamp.nl104
18mlrcloud.com103
19_spf.abcp.ru103
20spf.cesky-hosting.cz103
21spf.spcloud.jp103
22spf.host-ww.net102
23relay.thundermail.uk102
24spf-2248456.jmsend.com102
25spf.v6send.net100
Show rows 26 – 100
#SPF includeDomains
26spf.satorimail.net100
27send.k-crm.jp100
28spf.betrend.com100
29amazon.com98
30smtp-cluster.plusvps.com98
31_spf.wpopt.net98
32fmx.etius.jp97
33_spf.sendnode.com96
34spf.mijndomeinhosting.nl96
35spf.ssmx.net96
36spf-bulk.axa.com95
37_spf.academicworks.com95
38_pmta2.antevenio.com95
39_spf.simpleviewinc.com94
40_spf.octadesk.com94
41spf.shopserve.jp94
42_spf.localservices.com.br94
43spf.emailfilter.io93
44mfg.siteprotect.com92
45spf.mars-inc.com92
46spf.form.run92
47verifymyfafsa.com92
48mailing.eqs.com91
49spf.qboxmail.com91
50_spf01.mykronos.com91
51_spf.presscloud.com91
52dospf.simplepart.com90
53spf.symplicity.com90
54_spf.axa.com90
55_spf.aid.no90
56_spf.yourfilter.nl89
57ofsys.com89
58spf.protection.outlook89
59spf.qb-feedback.com88
60_spf.eemsg.mail.mil88
61sender.zcsend.jp88
62spf.redpoints.com87
63eversrv.com86
64_spf.sent2email.com86
65ciphr247.com86
66senders.mailmasterplus.net86
67spf.sosafe.de85
68spf85
69custmail.vdata.com85
70spf.w2solution.com85
71mailmailmail.net84
72_spf.shared-server.net84
73spf-us.appmail.granicusgovaccess.net84
74spf2.nlk2.smtps.jp84
75spf.esvacloud.com84
76relay.email-cluster.com83
77spfref.jackhenry.com82
78spf.263xmail.com82
79spf.zoner.fi81
80spf.chinaemail.cn81
81no-ip.com80
82support.gov.sg80
83_spf-c.arukereso.hu80
84_spf.goskope.com79
85spf.protect.kvnbw.de79
86spf.byway.it79
87spfv.global-mail.cn79
88eur.pb-dynmktge.com78
89_spf.saashr.com78
90spf.am.arara.com78
91spf.filteredmx.net78
92spf.rpost.net78
93spf.sabre.com78
94spf.host.it77
95mail.imismailcenter.com77
96universalspf.org77
97x.universalspf.org77
98successfactors.eu77
99_spf.herodesk-mails.io77
100_spf.ungapped.io77

Methodology — how the numbers were produced

1. Data source

The dataset is the daily OpenINTEL forward-DNS Tranco snapshot (University of Twente / SURFnet / SIDN Labs). OpenINTEL queries the entire Tranco top-1M domain list daily for MX, TXT, NS, A, AAAA, SOA, CAA, DNSSEC and other records, publishing the results as Apache Parquet. For pre-2022 history we additionally use OpenINTEL's alexa source (the legacy Alexa top-1M list, retired 2023).

Cite: Roland van Rijswijk-Deij et al., "A High-Performance, Scalable Infrastructure for Large-Scale Active DNS Measurements", IEEE JSAC 2016.

1b. Where the rest of the analysis lives

Six deep-dive pages are rebuilt by the same daily run and were previously reachable only through the sitemap: SPF health (final all qualifier, DNS-lookup limit, record length) · Email security posture (MTA-STS, BIMI, TLS-RPT, DKIM selectors) · SaaS via verification tokens · DNS/NS providers · Country × ESP · Infrastructure & TLS.

2. Sample & cadence

Each report covers a single date — OpenINTEL publishes snapshot D on D+1, so the current UTC date is never treated as an expected snapshot. Freshness means matching the latest date actually present in the OpenINTEL catalogue, typically ~700 k domains with MX records and ~620 k with SPF. The pipeline runs daily at 03:00 UTC, after the usual source-publication window; each daily run produces an HTML report, a JSON summary, an updated time-series, and incremental updates to the domain registry (§ 12). No sub-sampling.

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, currently 328 patterns, hash below). 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 for dictionary improvement.

4. ESP / SaaS / forwarder / gateway classification (SPF-based)

For each domain's apex SPF record (TXT starting with v=spf1) we extract every include: and redirect= target and resolve them against open classification dictionaries (ESPs, mailbox-as-sender, anti-spam gateways, forwarders, SaaS senders, DMARC vendors, NS providers, verification tokens).

Resolution order: PURE_ESP → MAILBOX_AS_SENDER → GATEWAYS → FORWARDERS → bare-apex substring fallback → SAAS_SENDERS substring iteration. Bare-apex derivation strips leading _spf., _spf-eu., spf., mail. prefixes from dict keys to catch subdomain variants (e.g. _spf.m1.websupport.sk → matches websupport.sk). Malformed includes (no dot, <4 chars) are filtered.

One domain may use several ESPs simultaneously, so ESP shares sum to more than 100% of SPF-publishing domains. Current SPF-include target coverage: 82.65%, recomputed from this snapshot rather than hard-coded.

Limitation: "flattened" SPF (where include chains were replaced with raw IP ranges to fit the 10-lookup limit) is not detectable from DNS alone — those domains appear ESP-less even when an ESP is in fact used.

5. DMARC (deep)

For each domain we query the _dmarc.<domain> TXT record. Records starting with v=DMARC1 are parsed for:

  • p= (apex policy): none / quarantine / reject / invalid
  • sp= (subdomain policy)
  • pct= (rollout percentage)
  • rua= aggregate-report destinations → classified into vendor buckets (Postmark DMARC, Valimail, dmarcian, URIports, EasyDMARC, Red Sift, Proofpoint EFD, Agari/Fortra, …) using dictionaries/dmarc_vendors.py

A domain is counted as enforced if p=quarantine or p=reject with pct=100 (or pct absent — defaults to 100).

6. SPF mechanics & health

For every SPF record we additionally extract:

  • Final qualifier on the all mechanism: -all (hard fail), ~all (soft fail), ?all (neutral), +all (pass-everything — broken / dangerous), or missing
  • DNS lookup count (include:, redirect=, a:, mx:, exists:, ptr:) — each mechanism counts as 1 against the spec limit of 10. Records exceeding the limit return PermErr at recipients
  • Mechanism mix: include-only (modern), raw IP4/IP6 ranges only (legacy/flattened), mixed
  • Record byte length: percentiles to flag fragmentation risk (>450 B)

7. Email security maturity

Adoption of modern mail-security TXT records, parsed from the same OpenINTEL parquet:

  • MTA-STS: TXT at _mta-sts.<domain> with v=STSv1 — domain advertises required-TLS to its MX
  • BIMI: TXT at default._bimi.<domain> with v=BIMI1 — brand publishes a verified logo (requires p=reject)
  • TLS-RPT (SMTP TLS Reporting): TXT at _smtp._tls.<domain> with v=TLSRPTv1 — domain monitors TLS-failure reports
  • DKIM selectors: where the OpenINTEL scan includes *._domainkey.<domain> queries, well-known selectors (google, selector1/2, s1/s2, k1/k2/k3, mailo, mte1, …) are mapped to issuing ESPs

8. DNS provider classification

For each domain's NS RRset, every NS hostname is matched against a suffix dictionary (dictionaries/ns_providers.py) with patterns for Cloudflare, AWS Route 53, Azure DNS, Google Cloud DNS, GoDaddy, Akamai, NS1, UltraDNS, Yandex, DNSPod, Aliyun, OVH, Hetzner, Gandi, registrars, and others. A domain is assigned to its dominant NS provider; ties resolve to whichever pattern was matched first.

9. SaaS-via-verification-tokens

Many SaaS apps a domain is connected to never appear in SPF (because the SaaS doesn't send mail FROM the customer domain). To recover this signal we parse apex TXT records for verification tokens — google-site-verification=…, MS=…, atlassian-domain-verification=…, stripe-verification=…, plus 149 other patterns in dictionaries/verification_tokens.py. This produces a complementary "SaaS density" metric and surfaces apps that the SPF-only view misses.

10. Email infrastructure modernity

Three additional TLS / IPv6 metrics:

  • IPv6-on-MX: MX hostname has at least one AAAA record
  • DANE / TLSA on MX: TLSA record at _25._tcp.<mx_host> (where the parquet includes TLSA queries)
  • CAA: any 0 issue … / 0 issuewild … record at apex; CAs aggregated into a market-share view (Let's Encrypt, DigiCert, Sectigo, …)

11. Cross-tabulations

  • Country × ESP heatmap: top-15 ccTLDs × top-15 ESPs, cell = % of country's SPF-publishing domains using ESP X. Surfaces regional ESP champions (Brevo / FR, Unisender / RU, MailerLite / LT, Akna / BR, Shoptet / CZ).
  • Mailbox × ESP combinations: stacked frequency of common stack pairings — published as Mailbox provider × sending platform.

12. Domain registry & identifiers

Every domain ever observed across snapshots is assigned a stable integer ID in /var/openintel-cache/registry/domains.sqlite3 (currently 1 906 434 domains). Reports reference domains by ID rather than embedding strings; clients resolve names from a single gzipped registry dump (/email-stats/domains.csv.gz, 21.6 MB). This keeps per-report payloads compact, enables fast set-operation diffs across snapshots, and gives every domain a first-seen / last-seen timestamp.

13. Daily change-alerts feed

Each daily run computes a domain-level diff vs the previous scan and emits a change-feed at /email-stats/alerts.html (also as JSON + Atom). Detected events: ESP added/removed in SPF, DMARC policy upgrade/downgrade, primary-mailbox-provider change, SPF strict→soft regression, MTA-STS / BIMI first publication. Severity tag is good / bad / info.

14. Per-entity detail pages

The top-100 ESPs, top-100 SaaS senders and top-80 mailbox providers each have a dedicated detail page at /email-stats/detail/<kind>/<slug>.html showing KPI cards, a Chart.js sparkline (from history.json), TLD distribution and a sample of customer domains.

15. Tier breakdown

Each domain is assigned a tier from its Tranco rank: top-1k / top-10k / top-100k / top-1M, plus unranked for domains measured in the snapshot but absent from the current list file (rotation). Published as Authentication by Tranco tier: SPF, DMARC enforcement and self-hosting per tier.

16. Reproducibility & data hygiene

Dictionary hashes for this run (sha256, first 12 hex):

  • compliance.py76d502287abe
  • dmarc_vendors.py8c195eb564fc
  • esps.py0f7a40a1f7d3
  • mx_providers.pyc29c6e1b1f58
  • ns_providers.pycc4f43c6651f
  • providers_meta.py5dc92db7869f
  • saas_meta.pyfe611e6e8a68
  • saas_senders.py1c5ebd9f7c09
  • tld_regions.py61e8bd3dcca8
  • verification_tokens.py6ba8313e55ab

Every published report includes the exact OpenINTEL date, dictionary file 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 long-term (per OpenINTEL data agreement). The domain registry stores names but no record-level content.

16b. Methodology changelog

Every change to a metric definition is recorded in the methodology changelog and stamped into each history point as methodology_version — so a step in a series can always be attributed to a formula change rather than to reality.

17. 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. The alexa source used for pre-2022 history has a different composition and a different size: the alexa partition of 2022-04-01 contains 1 637 544 measured apex names against 1 087 498 in tranco on 2026-07-24, so absolute counts are not comparable across the 2022-08-11 boundary — only shares within a snapshot are.
  • 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 (Mimecast/Proofpoint customers using their own brand) is not detectable from DNS alone.
  • DKIM enumeration is selector-based — only domains whose well-known selectors are scanned by OpenINTEL appear in the DKIM layer.
  • Long-tail unmatched: this snapshot contains 79 992 unique unclassified SPF targets. The count is published as a measured coverage KPI rather than a fixed estimate; many are regional hosters, tenant-specific endpoints, malformed records, or single-domain infrastructure.
  • Newly-added dictionary entries have no historical sparkline until ≥ 2 daily scans accumulate, since archived raw parquet is purged after parsing per the OpenINTEL data agreement.

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 one point per month. Points marked partial are incomplete days at the source and are excluded from deltas and trends.

213 snapshots since 2016-01-22 — open the list
2026-08-10 — 662 160 MX, 627 184 SPF2026-08-09 — 661 672 MX, 626 624 SPF2026-08-08 — 670 439 MX, 634 892 SPF2026-08-07 — 670 484 MX, 634 873 SPF2026-08-06 — 668 231 MX, 632 544 SPF2026-08-05 — 680 832 MX, 644 102 SPF2026-08-04 — 664 122 MX, 628 339 SPF2026-08-02 — 664 010 MX, 628 104 SPF2026-08-01 — 667 030 MX, 630 925 SPF2026-07-31 — 667 040 MX, 630 769 SPF2026-07-30 — 667 152 MX, 630 662 SPF2026-07-29 — 666 778 MX, 630 142 SPF2026-07-28 — 666 803 MX, 630 030 SPF2026-07-27 — 666 750 MX, 629 781 SPF2026-07-26 — 667 887 MX, 630 738 SPF2026-07-25 — 671 693 MX, 634 220 SPF2026-07-24 — 668 195 MX, 626 838 SPF2026-07-23 — 668 612 MX, 627 156 SPF2026-07-22 — 667 580 MX, 626 173 SPF2026-07-21 — 667 464 MX, 626 022 SPF2026-07-20 — 668 961 MX, 627 463 SPF2026-07-19 — 659 183 MX, 618 199 SPF2026-07-18 — 659 259 MX, 618 271 SPF2026-07-17 — 659 253 MX, 618 231 SPF2026-07-16 — 659 459 MX, 618 470 SPF2026-07-15 — 659 420 MX, 618 461 SPF2026-07-14 — 659 112 MX, 618 197 SPF2026-07-13 — 658 711 MX, 617 702 SPF2026-07-12 — 658 108 MX, 617 244 SPF2026-07-11 — 657 701 MX, 616 967 SPF2026-07-10 — 657 207 MX, 616 333 SPF2026-07-09 — 657 304 MX, 616 494 SPF2026-07-08 — 656 808 MX, 615 969 SPF2026-07-07 — 655 988 MX, 615 231 SPF2026-07-06 — 655 261 MX, 614 575 SPF2026-07-05 — 654 926 MX, 614 272 SPF2026-07-04 — 665 047 MX, 623 765 SPF2026-07-03 — 664 686 MX, 623 266 SPF2026-07-02 — 664 961 MX, 623 597 SPF2026-07-01 — 664 715 MX, 623 370 SPF2026-06-30 — 665 299 MX, 624 066 SPF2026-06-29 — 671 597 MX, 630 016 SPF2026-06-28 — 667 370 MX, 626 001 SPF2026-06-27 — 666 220 MX, 624 986 SPF2026-06-26 — 666 177 MX, 624 950 SPF2026-06-25 — 665 951 MX, 624 772 SPF2026-06-24 — 665 655 MX, 624 551 SPF2026-06-23 — 665 823 MX, 624 757 SPF2026-06-22 — 665 950 MX, 625 047 SPF2026-06-21 — 667 342 MX, 626 553 SPF2026-06-20 — 669 301 MX, 628 455 SPF2026-06-19 — 661 817 MX, 621 795 SPF2026-06-18 — 661 882 MX, 622 049 SPF2026-06-17 — 661 091 MX, 621 709 SPF2026-06-16 — 660 933 MX, 621 836 SPF2026-06-15 — 662 137 MX, 623 017 SPF2026-06-14 — 650 734 MX, 612 415 SPF2026-06-13 — 650 753 MX, 612 354 SPF2026-06-12 — 651 025 MX, 612 617 SPF2026-06-11 — 651 209 MX, 612 707 SPF2026-06-10 — 651 319 MX, 612 713 SPF2026-06-09 — 650 861 MX, 612 459 SPF2026-06-08 — 650 013 MX, 611 648 SPF2026-06-07 — 649 787 MX, 611 420 SPF2026-06-06 — 658 426 MX, 619 451 SPF2026-06-05 — 659 595 MX, 620 522 SPF2026-06-04 — 660 158 MX, 620 940 SPF2026-06-03 — 660 101 MX, 620 354 SPF2026-06-02 — 660 335 MX, 620 446 SPF2026-06-01 — 662 428 MX, 622 222 SPF2026-05-31 — 667 641 MX, 626 984 SPF2026-05-30 — 663 036 MX, 622 559 SPF2026-05-29 — 663 271 MX, 622 553 SPF2026-05-28 — 663 075 MX, 622 229 SPF2026-05-27 — 663 040 MX, 621 877 SPF2026-05-23 — 660 587 MX, 620 034 SPF2026-05-22 — 657 556 MX, 617 016 SPF2026-05-21 — 659 930 MX, 619 421 SPF2026-05-20 — 659 568 MX, 618 994 SPF2026-05-19 — 661 300 MX, 620 621 SPF2026-05-18 — 653 826 MX, 613 816 SPF2026-05-17 — 652 834 MX, 613 060 SPF2026-05-16 — 653 289 MX, 613 507 SPF2026-05-15 — 653 883 MX, 614 025 SPF2026-05-14 — 654 606 MX, 614 742 SPF2026-05-13 — 654 450 MX, 614 641 SPF2026-05-11 — 654 275 MX, 614 529 SPF2026-05-04 — 662 839 MX, 622 414 SPF2026-04-30 — 665 325 MX, 624 448 SPF2026-04-27 — 665 219 MX, 624 507 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-11-01 — 659 524 MX, 613 922 SPF2025-10-01 — 644 366 MX, 599 103 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-07-02 — 632 526 MX, 578 066 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 SPF2022-08-11 — 427 823 MX, 354 634 SPF partial2022-07-01 — 968 388 MX, 789 788 SPF alexa2022-06-01 — 1 026 911 MX, 833 170 SPF alexa2022-05-01 — 921 706 MX, 748 398 SPF alexa2022-04-01 — 1 217 939 MX, 976 244 SPF alexa2022-03-01 — 975 521 MX, 779 131 SPF alexa2022-02-01 — 569 414 MX, 464 224 SPF partial alexa2022-01-01 — 552 174 MX, 447 427 SPF partial alexa2021-12-01 — 786 477 MX, 631 833 SPF alexa2021-11-01 — 525 808 MX, 424 311 SPF partial alexa2021-10-01 — 794 460 MX, 633 349 SPF alexa2021-09-01 — 788 407 MX, 628 585 SPF alexa2021-08-01 — 619 384 MX, 493 457 SPF partial alexa2021-07-01 — 728 817 MX, 579 133 SPF alexa2021-06-01 — 660 453 MX, 523 956 SPF alexa2021-05-01 — 788 324 MX, 620 170 SPF alexa2021-04-01 — 792 560 MX, 621 808 SPF alexa2021-03-01 — 646 458 MX, 507 824 SPF alexa2021-02-01 — 430 383 MX, 339 425 SPF partial alexa2021-01-01 — 714 286 MX, 554 817 SPF alexa2020-12-01 — 814 029 MX, 629 118 SPF alexa2020-11-01 — 748 490 MX, 574 865 SPF alexa2020-10-01 — 618 268 MX, 476 027 SPF partial alexa2020-09-01 — 768 508 MX, 586 561 SPF alexa2020-08-01 — 754 330 MX, 572 036 SPF alexa2020-07-01 — 947 188 MX, 717 066 SPF alexa2020-06-01 — 703 956 MX, 531 244 SPF partial alexa2020-05-01 — 965 680 MX, 721 262 SPF alexa2020-04-01 — 859 917 MX, 639 926 SPF alexa2020-03-01 — 780 292 MX, 579 459 SPF alexa2020-02-01 — 947 773 MX, 696 310 SPF alexa2020-01-01 — 565 274 MX, 417 038 SPF partial alexa2019-12-01 — 826 277 MX, 600 095 SPF alexa2019-11-01 — 1 039 570 MX, 747 867 SPF alexa2019-10-01 — 966 667 MX, 692 386 SPF alexa2019-09-01 — 838 362 MX, 594 935 SPF partial alexa2019-08-01 — 1 162 343 MX, 819 141 SPF alexa2019-07-01 — 1 177 952 MX, 806 744 SPF alexa2019-06-01 — 1 205 558 MX, 822 402 SPF alexa2019-05-01 — 1 196 890 MX, 811 837 SPF alexa2019-04-01 — 1 120 142 MX, 752 449 SPF alexa2019-03-01 — 1 170 801 MX, 787 932 SPF alexa2019-02-01 — 1 202 345 MX, 799 255 SPF alexa2019-01-01 — 1 190 206 MX, 783 686 SPF alexa2018-12-01 — 1 196 068 MX, 792 282 SPF alexa2018-11-01 — 1 177 133 MX, 775 137 SPF alexa2018-10-01 — 1 140 868 MX, 743 256 SPF alexa2018-09-01 — 1 183 473 MX, 765 011 SPF alexa2018-08-01 — 1 194 344 MX, 772 448 SPF alexa2018-07-01 — 1 165 617 MX, 745 554 SPF alexa2018-06-01 — 1 193 038 MX, 753 513 SPF alexa2018-05-01 — 1 168 881 MX, 732 275 SPF alexa2018-04-01 — 1 174 598 MX, 730 483 SPF alexa2018-03-01 — 827 056 MX, 516 103 SPF partial alexa2018-02-01 — 1 195 663 MX, 725 044 SPF alexa2018-01-01 — 813 525 MX, 512 876 SPF alexa2017-12-01 — 818 419 MX, 513 903 SPF alexa2017-11-01 — 815 080 MX, 507 477 SPF alexa2017-10-01 — 823 380 MX, 508 173 SPF alexa2017-09-01 — 815 671 MX, 500 347 SPF alexa2017-08-01 — 829 376 MX, 505 516 SPF alexa2017-07-01 — 830 824 MX, 502 438 SPF alexa2017-06-01 — 828 635 MX, 497 007 SPF partial alexa2017-05-01 — 828 210 MX, 493 097 SPF alexa2017-04-01 — 828 454 MX, 490 217 SPF alexa2017-03-01 — 824 804 MX, 483 151 SPF alexa2017-02-01 — 839 476 MX, 482 733 SPF alexa2017-01-01 — 827 995 MX, 470 990 SPF alexa2016-12-01 — 825 158 MX, 467 480 SPF alexa2016-11-01 — 837 849 MX, 472 624 SPF alexa2016-10-01 — 838 377 MX, 469 807 SPF alexa2016-09-01 — 835 089 MX, 462 936 SPF alexa2016-08-01 — 848 095 MX, 469 528 SPF alexa2016-07-01 — 842 098 MX, 463 893 SPF alexa2016-06-01 — 848 829 MX, 462 786 SPF alexa2016-05-01 — 843 824 MX, 455 820 SPF alexa2016-04-01 — 843 843 MX, 449 460 SPF alexa2016-03-01 — 865 090 MX, 456 873 SPF alexa2016-02-01 — 862 585 MX, 450 683 SPF alexa2016-01-22 — 845 356 MX, 440 606 SPF alexa
Data source: https://openintel.nl/data/forward-dns/top-lists/
Generated automatically from OpenINTEL Tranco snapshot 2026-08-10. Aggregates only — raw OpenINTEL data is deleted after analysis per their data agreement.
Last build: 2026-08-12T03:51:14Z.