DomainCanary Start free

DMARC Census

DMARC Census, September 2026

This is the September 2026 edition. The newest is October 2026.

We looked up the DMARC and SPF records of 1,000,767 domains. For each one, we checked whether it publishes a policy receivers act on and whether anyone can receive its DMARC reports.

We scanned the Tranco top 1 million (list GQJJK) and 1,321 US federal domains on 1 Sep 2026. 554 of the federal domains are already in the million, so the total is 1,000,767 domains.

Most percentages on this page are out of the 1,000,424 domains whose DMARC lookup got an answer. We call these the measured domains. Where we use a different group, we say which. We left out the 343 lookups that failed after retries, because a failed lookup can't show whether a record exists.

Jump to key findings, what changed, tiers, rank, countries, TLDs, reports that go nowhere, SPF, the federal cohort, collectors, methodology or the data.

Key findings

  • In the September 2026 scan of the Tranco top million and a US federal cohort, 131,008 domains publish p=none and name no reporting address that can receive a report. That's 27.7% of the 472,655 valid DMARC records in the scan.
  • 47.2% of the 1,000,424 domains we could measure in September 2026 publish a DMARC record receivers can act on. 47.8% publish something at the _dmarc name. 52.2% publish nothing.
  • 20.8% of the domains measured in September 2026, 208,354 of them, publish quarantine or reject with no pct or sp tag weakening it. 11.8% publish p=reject.
  • 34,749 domains in the September 2026 scan name an outside reporting address, and the address's owner hadn't published an authorization record for them when we scanned. Receivers that check for that record won't send reports there. 30,036 of these domains in the September 2026 scan name only outside addresses without authorization.
  • Of the top 1,000 domains in the September 2026 scan, 72.3% publish a valid DMARC record and 56.1% are in the enforced tier. Across ranks 100,000 to 1,000,000, those shares are 46.0% and 19.4%.
  • 402 of the domains with a usable SPF record in the September 2026 scan end it with +all. That lets any host on the internet send as them.
  • Of 1,321 registered US federal .gov domains, 81.0% publish p=reject in the September 2026 scan and 174 publish no DMARC record. That list is wider than the mail-sending executive-branch set that Binding Operational Directive 18-01 has held to p=reject since October 2018, so the gap isn't a count of agencies breaking the directive.
  • Between the August 2026 and September 2026 scans, 3,004 domains moved to a stronger policy, 1,302 of them by publishing a first p=none record, and 1,059 moved to a weaker one. 99.6% of the 926,567 domains we measured in both months kept the same policy.

What changed since August 2026

We compare the policy of every domain that was on the list in both months and whose lookup got an answer both times. From weakest to strongest, the policies are no usable record, p=none, p=quarantine and p=reject. A broken record counts as no usable record. If DNS failed in either month, we leave the domain out and don't count it as a change.

3,004
moved to a stronger policy
1,059
moved to a weaker policy
1,435
reached quarantine or reject
99.6%
of domains measured in both months kept the same policy

926,567 domains were on both lists and got an answer both times. 922,504 of them kept the same policy from August 2026 to September 2026. 3,004 moved to a stronger policy and 1,059 to a weaker one. The stronger count includes 1,302 domains that published their first p=none record. 1,435 reached quarantine or reject from p=none or no usable record, and 831 of those had been at p=none. The most common change was no usable record to p=none, on 1,302 domains.

The headline shares, month against month

Share August 2026 September 2026 Change
Valid DMARC record 46.9% 47.2% +0.3 pts
Enforced tier 20.8% 20.8% 0.0 pts
p=reject 11.8% 11.8% 0.0 pts
Dead reporting, as a share of valid records 27.5% 27.7% +0.2 pts
No DMARC record 52.6% 52.2% -0.4 pts
SPF record published 64.0% 64.1% +0.1 pts
SPF permerror, as a share of SPF records 5.7% 5.7% 0.0 pts

The Tranco list changes from month to month. 73,642 domains in the September 2026 scan weren't on the August 2026 list, so part of every change in this table comes from that turnover. The changes below count only domains that were on both lists, so start with those.

Every policy change, largest first

FromToDomains
no usable record p=none 1,302
p=none p=quarantine 636
p=none no usable record 491
no usable record p=quarantine 316
no usable record p=reject 288
p=quarantine p=reject 267
p=none p=reject 195
p=quarantine no usable record 185
p=reject no usable record 160
p=quarantine p=none 112
p=reject p=none 63
p=reject p=quarantine 48

73,642 domains in the September 2026 scan weren't on the August 2026 list, so there's nothing earlier to compare them with. 558 pairs were on both lists but failed to resolve in one month or the other. They're left out of every count here.

One month of movement is one data point. We'll draw trend lines once three editions exist, and not before.

The quality tiers

We put each domain in one tier, based on whether receivers act on its policy and whether anyone can receive its DMARC reports.

Quality tiers across 1,000,424 measured domains No record 52.2%, Broken 0.5%, Dead reporting 13.1%, Monitoring 10.6%, Partial enforcement 2.7%, Enforced 20.8%. No record: 522,642 domains, 52.2% Broken: 5,127 domains, 0.5% Dead reporting: 131,008 domains, 13.1% Monitoring: 106,056 domains, 10.6% Partial enforcement: 27,237 domains, 2.7% Enforced: 208,354 domains, 20.8%
TierDomainsShare
No record 522,642 52.2%
Broken 5,127 0.5%
Dead reporting 131,008 13.1%
Monitoring 106,056 10.6%
Partial enforcement 27,237 2.7%
Enforced 208,354 20.8%
  • No record 522,642 domains (52.2%) No DMARC record at the _dmarc name.
  • Broken 5,127 domains (0.5%) A record exists and receivers ignore it: more than one record, a bad v= tag, or no usable p=.
  • Dead reporting 131,008 domains (13.1%) p=none, and no rua destination that can receive a report.
  • Monitoring 106,056 domains (10.6%) p=none, with at least one rua destination that can receive a report, or one the scan could not rule out.
  • Partial enforcement 27,237 domains (2.7%) quarantine or reject, weakened by pct below 100 or a softer sp=.
  • Enforced 208,354 domains (20.8%) quarantine or reject, with no pct or sp tag weakening it.

Two tags weaken a policy without changing it. pct= applies the policy to only that share of failing mail, and sp= sets a separate, often softer, policy for subdomains.

5,127 domains publish a broken record that receivers can't use, including 4,478 with more than one DMARC record. RFC 7489 tells receivers to treat that as no record at all, so we don't count broken records as valid.

Of the 472,655 valid records, 50.2% set p=none, 24.8% set p=quarantine and 25.1% set p=reject.

47.8% of measured domains publish something at the _dmarc name, but that count mixes every tier, broken records included. 208,354 domains (20.8%) reach the enforced tier. 522,642 (52.2%) publish no record. Most of the rest publish p=none, with 131,008 in the dead tier and 106,056 in monitoring.

Among domains at quarantine or reject, 10,279 apply the policy to only part of their failing mail with pct below 100, and 18,546 leave subdomains weaker than the organizational domain. Some domains do both, so the two figures add up to more than the 27,237 domains in the partial-enforcement tier.

Percentages are out of the 1,000,424 domains whose DMARC lookup got an answer. We left out the 343 domains whose lookup failed after retries, because a failed lookup can't show whether a record exists.

Run the same tier rules against your own domain.

Valid records and enforcement by rank

The top 1,000 domains publish and enforce at far higher rates than the rest of the million, so don't quote their percentages for the whole list. Both bars are percentages of the domains in that rank range whose DMARC lookup got an answer.

DMARC adoption and enforcement by Tranco rank range Top 1k: Valid DMARC record 72.3%, Enforced tier 56.1%. 1k to 10k: Valid DMARC record 66.1%, Enforced tier 43.9%. 10k to 100k: Valid DMARC record 57.1%, Enforced tier 31.6%. 100k to 1M: Valid DMARC record 46.0%, Enforced tier 19.4%. 0% 25% 50% 75% 100% Valid DMARC record Enforced tier Top 1k, Valid DMARC record: 72.3% 72.3% Top 1k, Enforced tier: 56.1% 56.1% Top 1k 1k to 10k, Valid DMARC record: 66.1% 66.1% 1k to 10k, Enforced tier: 43.9% 43.9% 1k to 10k 10k to 100k, Valid DMARC record: 57.1% 57.1% 10k to 100k, Enforced tier: 31.6% 31.6% 10k to 100k 100k to 1M, Valid DMARC record: 46.0% 46.0% 100k to 1M, Enforced tier: 19.4% 19.4% 100k to 1M domaincanary.com/research/dmarc-census
Rank range Measured Valid DMARC Enforced tier
Top 1k 1,000 72.3% 56.1%
1k to 10k 9,000 66.1% 43.9%
10k to 100k 89,957 57.1% 31.6%
100k to 1M 899,700 46.0% 19.4%

Fewer domains publish a record the further down the list you go, and the enforced share falls faster than the valid-record share.

The rank ranges cover the Tranco million only. The 767 federal domains outside the million count toward the overall percentages but not toward any rank range.

Adoption by country

The map shades each country by the percentage of measured domains under its ccTLD that publish a valid DMARC record. Hover over a country to see its numbers.

Valid DMARC share by country-code TLD A world map shaded by valid DMARC share. 106 countries clear the 200-domain bar and 89 of them are shaded here. Norway leads at 78.2% and China trails at 15.9%. The table after the map lists every country measured. United Arab Emirates (.ae): 728 measured, 66.9% valid DMARC, 41.6% at enforcementAfghanistan: under 200 measured domainsAlbania: under 200 measured domainsArmenia (.am): 350 measured, 54.6% valid DMARC, 37.1% at enforcementAngola: under 200 measured domainsArgentina (.ar): 3,251 measured, 67.0% valid DMARC, 25.5% at enforcementAustria (.at): 3,019 measured, 63.9% valid DMARC, 32.3% at enforcementAustralia (.au): 8,383 measured, 73.0% valid DMARC, 40.7% at enforcementAzerbaijan (.az): 545 measured, 44.2% valid DMARC, 29.2% at enforcementBosnia and Herzegovina (.ba): 316 measured, 64.9% valid DMARC, 37.0% at enforcementBangladesh (.bd): 658 measured, 58.5% valid DMARC, 38.3% at enforcementBelgium (.be): 3,361 measured, 69.1% valid DMARC, 38.8% at enforcementBurkina Faso: under 200 measured domainsBulgaria (.bg): 1,228 measured, 65.0% valid DMARC, 30.9% at enforcementBurundi: under 200 measured domainsBenin: under 200 measured domainsBrunei: under 200 measured domainsBolivia: under 200 measured domainsBrazil (.br): 17,029 measured, 62.3% valid DMARC, 27.0% at enforcementBahamas: under 200 measured domainsBhutan: under 200 measured domainsBotswana: under 200 measured domainsBelarus (.by): 1,284 measured, 47.5% valid DMARC, 26.1% at enforcementBelize: under 200 measured domainsCanada (.ca): 6,064 measured, 63.0% valid DMARC, 33.2% at enforcementDem. Rep. Congo: under 200 measured domainsCentral African Rep.: under 200 measured domainsCongo: under 200 measured domainsSwitzerland (.ch): 3,820 measured, 65.5% valid DMARC, 37.5% at enforcementCĂŽte d'Ivoire: under 200 measured domainsChile (.cl): 2,616 measured, 65.3% valid DMARC, 34.1% at enforcementCameroon: under 200 measured domainsChina (.cn): 10,338 measured, 15.9% valid DMARC, 8.7% at enforcementColombia: .co is registered worldwide, so it is measured in the table but not shaded as a countryCosta Rica (.cr): 222 measured, 64.4% valid DMARC, 46.4% at enforcementCuba: under 200 measured domainsCyprus (.cy): 200 measured, 62.5% valid DMARC, 30.0% at enforcementCzechia (.cz): 4,980 measured, 63.7% valid DMARC, 26.6% at enforcementGermany (.de): 26,938 measured, 60.6% valid DMARC, 31.0% at enforcementDjibouti: under 200 measured domainsDenmark (.dk): 2,257 measured, 74.8% valid DMARC, 52.7% at enforcementDominican Republic (.do): 275 measured, 59.6% valid DMARC, 32.4% at enforcementAlgeria (.dz): 217 measured, 68.2% valid DMARC, 47.9% at enforcementEcuador (.ec): 563 measured, 66.3% valid DMARC, 44.2% at enforcementEstonia (.ee): 739 measured, 73.6% valid DMARC, 44.8% at enforcementEgypt (.eg): 324 measured, 55.6% valid DMARC, 34.9% at enforcementW. Sahara: under 200 measured domainsEritrea: under 200 measured domainsSpain (.es): 5,409 measured, 64.7% valid DMARC, 34.6% at enforcementEthiopia: under 200 measured domainsFinland (.fi): 2,254 measured, 66.1% valid DMARC, 28.9% at enforcementFiji: under 200 measured domainsFalkland Is.: under 200 measured domainsFrance (.fr): 10,660 measured, 64.3% valid DMARC, 29.9% at enforcementGabon: under 200 measured domainsUnited Kingdom (.uk): 29,040 measured, 40.9% valid DMARC, 21.7% at enforcementGeorgia (.ge): 454 measured, 49.8% valid DMARC, 23.6% at enforcementGhana: under 200 measured domainsGreenland: under 200 measured domainsGambia: under 200 measured domainsGuinea: under 200 measured domainsEq. Guinea: under 200 measured domainsGreece (.gr): 3,551 measured, 67.0% valid DMARC, 26.3% at enforcementGuatemala (.gt): 236 measured, 61.9% valid DMARC, 39.0% at enforcementGuinea-Bissau: under 200 measured domainsGuyana: under 200 measured domainsHonduras: under 200 measured domainsCroatia (.hr): 1,116 measured, 70.1% valid DMARC, 28.5% at enforcementHaiti: under 200 measured domainsHungary (.hu): 2,998 measured, 61.9% valid DMARC, 21.5% at enforcementIndonesia (.id): 4,834 measured, 54.0% valid DMARC, 25.3% at enforcementIreland (.ie): 1,440 measured, 70.7% valid DMARC, 36.5% at enforcementIsrael (.il): 1,763 measured, 66.9% valid DMARC, 22.4% at enforcementIndia (.in): 12,337 measured, 48.5% valid DMARC, 25.1% at enforcementIraq: under 200 measured domainsIran (.ir): 3,176 measured, 38.5% valid DMARC, 21.4% at enforcementIceland (.is): 441 measured, 56.2% valid DMARC, 30.6% at enforcementItaly (.it): 14,591 measured, 46.0% valid DMARC, 16.6% at enforcementJamaica: under 200 measured domainsJordan: under 200 measured domainsJapan (.jp): 16,906 measured, 56.7% valid DMARC, 12.9% at enforcementKenya (.ke): 545 measured, 56.0% valid DMARC, 28.1% at enforcementKyrgyzstan (.kg): 271 measured, 46.5% valid DMARC, 31.4% at enforcementCambodia: under 200 measured domainsNorth Korea: under 200 measured domainsSouth Korea (.kr): 4,389 measured, 23.9% valid DMARC, 4.8% at enforcementKuwait: under 200 measured domainsKazakhstan (.kz): 1,459 measured, 38.5% valid DMARC, 21.4% at enforcementLaos (.la): 201 measured, 27.9% valid DMARC, 14.9% at enforcementLebanon: under 200 measured domainsSri Lanka (.lk): 523 measured, 44.2% valid DMARC, 18.4% at enforcementLiberia: under 200 measured domainsLesotho: under 200 measured domainsLithuania (.lt): 1,089 measured, 68.2% valid DMARC, 31.3% at enforcementLuxembourg (.lu): 274 measured, 69.7% valid DMARC, 47.1% at enforcementLatvia (.lv): 851 measured, 62.6% valid DMARC, 40.4% at enforcementLibya: under 200 measured domainsMorocco (.ma): 570 measured, 50.2% valid DMARC, 24.0% at enforcementMoldova (.md): 428 measured, 61.4% valid DMARC, 32.2% at enforcementMontenegro: .me is registered worldwide, so it is measured in the table but not shaded as a countryMadagascar: under 200 measured domainsNorth Macedonia (.mk): 286 measured, 58.0% valid DMARC, 27.3% at enforcementMali: under 200 measured domainsMyanmar: under 200 measured domainsMongolia: under 200 measured domainsMauritania: under 200 measured domainsMalawi: under 200 measured domainsMexico (.mx): 3,356 measured, 56.3% valid DMARC, 29.7% at enforcementMalaysia (.my): 1,625 measured, 56.9% valid DMARC, 36.2% at enforcementMozambique: under 200 measured domainsNamibia: under 200 measured domainsNew Caledonia: under 200 measured domainsNiger: under 200 measured domainsNigeria (.ng): 696 measured, 52.0% valid DMARC, 18.4% at enforcementNicaragua: under 200 measured domainsNetherlands (.nl): 18,759 measured, 37.4% valid DMARC, 20.3% at enforcementNorway (.no): 1,755 measured, 78.2% valid DMARC, 49.7% at enforcementNepal (.np): 263 measured, 43.3% valid DMARC, 25.5% at enforcementNew Zealand (.nz): 1,703 measured, 71.3% valid DMARC, 38.2% at enforcementOman: under 200 measured domainsPanama: under 200 measured domainsPeru (.pe): 1,240 measured, 59.0% valid DMARC, 32.3% at enforcementPapua New Guinea: under 200 measured domainsPhilippines (.ph): 1,360 measured, 52.7% valid DMARC, 28.5% at enforcementPakistan (.pk): 1,703 measured, 49.0% valid DMARC, 17.4% at enforcementPoland (.pl): 9,163 measured, 66.0% valid DMARC, 33.6% at enforcementPuerto Rico: under 200 measured domainsPalestine: under 200 measured domainsPortugal (.pt): 2,035 measured, 69.1% valid DMARC, 38.2% at enforcementParaguay (.py): 310 measured, 68.1% valid DMARC, 42.9% at enforcementQatar: under 200 measured domainsRomania (.ro): 4,106 measured, 70.2% valid DMARC, 29.1% at enforcementSerbia (.rs): 1,060 measured, 57.5% valid DMARC, 21.9% at enforcementRussia (.ru): 36,982 measured, 39.1% valid DMARC, 20.6% at enforcementRwanda: under 200 measured domainsSaudi Arabia (.sa): 552 measured, 73.9% valid DMARC, 57.4% at enforcementSolomon Is.: under 200 measured domainsSudan: under 200 measured domainsSweden (.se): 3,466 measured, 66.4% valid DMARC, 36.6% at enforcementSlovenia (.si): 789 measured, 70.5% valid DMARC, 33.0% at enforcementSlovakia (.sk): 1,855 measured, 66.6% valid DMARC, 30.4% at enforcementSierra Leone: under 200 measured domainsSenegal: under 200 measured domainsSomalia: under 200 measured domainsSuriname: under 200 measured domainsS. Sudan: under 200 measured domainsEl Salvador: under 200 measured domainsSyria: under 200 measured domainseSwatini: under 200 measured domainsChad: under 200 measured domainsFr. S. Antarctic Lands: under 200 measured domainsTogo: under 200 measured domainsThailand (.th): 947 measured, 54.7% valid DMARC, 29.3% at enforcementTajikistan: under 200 measured domainsTimor-Leste: under 200 measured domainsTurkmenistan: under 200 measured domainsTunisia (.tn): 305 measured, 40.7% valid DMARC, 18.7% at enforcementTurkey (.tr): 3,072 measured, 61.8% valid DMARC, 36.2% at enforcementTrinidad and Tobago: under 200 measured domainsTaiwan (.tw): 2,766 measured, 43.2% valid DMARC, 20.5% at enforcementTanzania (.tz): 224 measured, 68.8% valid DMARC, 41.5% at enforcementUkraine (.ua): 4,805 measured, 46.1% valid DMARC, 20.4% at enforcementUganda: under 200 measured domainsUnited States (.us): 3,685 measured, 34.4% valid DMARC, 22.0% at enforcementUruguay (.uy): 481 measured, 68.2% valid DMARC, 34.7% at enforcementUzbekistan (.uz): 639 measured, 46.9% valid DMARC, 26.8% at enforcementVenezuela (.ve): 241 measured, 58.5% valid DMARC, 39.0% at enforcementVietnam (.vn): 2,731 measured, 34.3% valid DMARC, 17.7% at enforcementVanuatu: under 200 measured domainsYemen: under 200 measured domainsSouth Africa (.za): 2,833 measured, 64.8% valid DMARC, 34.9% at enforcementZambia: under 200 measured domainsZimbabwe: under 200 measured domains Hong Kong (.hk): 889 measured, 58.2% valid DMARC, 35.1% at enforcementSingapore (.sg): 904 measured, 68.3% valid DMARC, 46.0% at enforcement domaincanary.com/research/dmarc-census
  • under 30%
  • 30 to 39%
  • 40 to 49%
  • 50 to 59%
  • 60% and up
  • under 200 domains
CountryccTLDMeasuredValid DMARC At enforcement
Norway .no 1,755 78.2% 49.7%
Denmark .dk 2,257 74.8% 52.7%
Saudi Arabia .sa 552 73.9% 57.4%
Estonia .ee 739 73.6% 44.8%
Australia .au 8,383 73.0% 40.7%
Anguilla .ai 3,540 72.7% 40.7%
New Zealand .nz 1,703 71.3% 38.2%
Ireland .ie 1,440 70.7% 36.5%
Slovenia .si 789 70.5% 33.0%
Romania .ro 4,106 70.2% 29.1%
Croatia .hr 1,116 70.1% 28.5%
Luxembourg .lu 274 69.7% 47.1%
Portugal .pt 2,035 69.1% 38.2%
Belgium .be 3,361 69.1% 38.8%
Tanzania .tz 224 68.8% 41.5%
Singapore .sg 904 68.3% 46.0%
Lithuania .lt 1,089 68.2% 31.3%
Algeria .dz 217 68.2% 47.9%
Uruguay .uy 481 68.2% 34.7%
Paraguay .py 310 68.1% 42.9%
Argentina .ar 3,251 67.0% 25.5%
Greece .gr 3,551 67.0% 26.3%
United Arab Emirates .ae 728 66.9% 41.6%
Israel .il 1,763 66.9% 22.4%
Slovakia .sk 1,855 66.6% 30.4%
Sweden .se 3,466 66.4% 36.6%
Ecuador .ec 563 66.3% 44.2%
Finland .fi 2,254 66.1% 28.9%
Poland .pl 9,163 66.0% 33.6%
Switzerland .ch 3,820 65.5% 37.5%
Chile .cl 2,616 65.3% 34.1%
Bulgaria .bg 1,228 65.0% 30.9%
Bosnia and Herzegovina .ba 316 64.9% 37.0%
South Africa .za 2,833 64.8% 34.9%
Spain .es 5,409 64.7% 34.6%
Costa Rica .cr 222 64.4% 46.4%
France .fr 10,660 64.3% 29.9%
Austria .at 3,019 63.9% 32.3%
Czechia .cz 4,980 63.7% 26.6%
Canada .ca 6,064 63.0% 33.2%
Latvia .lv 851 62.6% 40.4%
Cyprus .cy 200 62.5% 30.0%
Brazil .br 17,029 62.3% 27.0%
Hungary .hu 2,998 61.9% 21.5%
Guatemala .gt 236 61.9% 39.0%
Turkey .tr 3,072 61.8% 36.2%
Moldova .md 428 61.4% 32.2%
Germany .de 26,938 60.6% 31.0%
Dominican Republic .do 275 59.6% 32.4%
Peru .pe 1,240 59.0% 32.3%
Bangladesh .bd 658 58.5% 38.3%
Venezuela .ve 241 58.5% 39.0%
Hong Kong .hk 889 58.2% 35.1%
North Macedonia .mk 286 58.0% 27.3%
Serbia .rs 1,060 57.5% 21.9%
Malaysia .my 1,625 56.9% 36.2%
Japan .jp 16,906 56.7% 12.9%
Mexico .mx 3,356 56.3% 29.7%
Iceland .is 441 56.2% 30.6%
Kenya .ke 545 56.0% 28.1%
Egypt .eg 324 55.6% 34.9%
Thailand .th 947 54.7% 29.3%
European Union .eu 5,922 54.7% 28.0%
Armenia .am 350 54.6% 37.1%
Indonesia .id 4,834 54.0% 25.3%
Niue .nu 280 52.9% 23.6%
Philippines .ph 1,360 52.7% 28.5%
British Indian Ocean Territory .io 10,072 52.4% 30.8%
Nigeria .ng 696 52.0% 18.4%
Colombia .co 7,121 52.0% 27.5%
Micronesia .fm 327 51.7% 21.7%
Morocco .ma 570 50.2% 24.0%
Georgia .ge 454 49.8% 23.6%
Pakistan .pk 1,703 49.0% 17.4%
Guernsey .gg 763 48.9% 23.9%
India .in 12,337 48.5% 25.1%
Belarus .by 1,284 47.5% 26.1%
Uzbekistan .uz 639 46.9% 26.8%
Kyrgyzstan .kg 271 46.5% 31.4%
Ukraine .ua 4,805 46.1% 20.4%
Italy .it 14,591 46.0% 16.6%
Azerbaijan .az 545 44.2% 29.2%
Sri Lanka .lk 523 44.2% 18.4%
Nepal .np 263 43.3% 25.5%
Taiwan .tw 2,766 43.2% 20.5%
United Kingdom .uk 29,040 40.9% 21.7%
Tunisia .tn 305 40.7% 18.7%
Saint Helena .sh 276 40.6% 25.7%
Russia .ru 36,982 39.1% 20.6%
Iran .ir 3,176 38.5% 21.4%
Kazakhstan .kz 1,459 38.5% 21.4%
Netherlands .nl 18,759 37.4% 20.3%
Tuvalu .tv 2,750 35.6% 16.8%
United States .us 3,685 34.4% 22.0%
Vietnam .vn 2,731 34.3% 17.7%
Isle of Man .im 275 33.8% 20.4%
Montenegro .me 2,902 33.6% 17.6%
Soviet Union .su 1,018 30.7% 15.7%
Samoa .ws 385 30.6% 20.5%
Laos .la 201 27.9% 14.9%
Tonga .to 855 26.5% 12.4%
South Korea .kr 4,389 23.9% 4.8%
Sao Tome and Principe .st 255 20.0% 12.5%
Palau .pw 300 19.0% 10.0%
China .cn 10,338 15.9% 8.7%
Cocos Islands .cc 4,624 14.4% 8.1%

106 countries have at least 200 measured domains under their ccTLD in this snapshot, and 89 of them are shaded on the map. Norway is highest, with 78.2% of measured .no domains publishing a valid DMARC record. .cn is lowest, at 15.9%.

A domain counts toward a country by its TLD alone. Every .de domain counts as Germany, wherever it's hosted or owned. Domains on gTLDs like .com have no country in their name, so they're left off the map. The TLD table below covers them. ccTLDs registered mostly from outside their country, .io, .ai, .co, .tv and .me among them, are measured and listed in the table but not shaded, because shading them would color the wrong country. Countries with fewer than 200 measured domains stay uncolored. A few too small to draw at this size, Singapore and Hong Kong among them, are marked with a dot in the same colors.

Adoption by TLD

The same measurement grouped by TLD, so it includes generic TLDs like .com that the map can't show. Every TLD with at least 1,000 measured domains, biggest first.

TLD Measured Valid DMARC At enforcement
.com 426,315 48.2% 23.9%
.net 48,757 36.0% 18.7%
.org 38,809 54.6% 26.6%
.ru 36,502 39.4% 20.8%
.uk 29,040 40.9% 21.7%
.de 26,938 60.6% 31.0%
.nl 18,759 37.4% 20.3%
.br 17,029 62.3% 27.0%
.jp 16,906 56.7% 12.9%
.it 14,591 46.0% 16.6%
.in 12,337 48.5% 25.1%
.fr 10,660 64.3% 29.9%
.cn 10,338 15.9% 8.7%
.io 10,072 52.4% 30.8%
.pl 9,163 66.0% 33.6%
.au 8,383 73.0% 40.7%
.co 7,121 52.0% 27.5%
.xyz 6,743 11.0% 5.1%
.ca 6,064 63.0% 33.2%
.eu 5,922 54.7% 28.0%
.es 5,409 64.7% 34.6%
.info 5,389 31.2% 15.7%
.cz 4,980 63.7% 26.6%
.top 4,960 5.8% 3.1%
.id 4,834 54.0% 25.3%

.com is the largest registry in the snapshot at 426,315 measured domains, 48.2% of them publishing a valid DMARC record. 61 further TLDs clear the 1,000-domain bar and aren't listed here. The full set is in the published aggregates.

Domains are grouped by the last label of their name, so .co.uk is grouped under .uk. All percentages are based on the domains whose DMARC lookup got an answer, which matches the rest of this report.

Reports that go nowhere

The rua tag on a DMARC record holds the addresses receivers send aggregate reports to. A record with a rua on it looks like monitoring. Whether anything can arrive depends on a second record, and the destination has to publish that one.

131,008
p=none with no reachable rua
34,749
unauthorized external rua
30,036
every rua destination dead
162,715
authorized external rua

131,008 domains publish a p=none DMARC record whose reporting address is missing, dead, or not authorized by its owner. That's 13.1% of measured domains and 27.7% of every valid record in the scan. We call it monitoring theater. The record passes a presence scan as adoption, but receivers that follow the standard send the domain no reports.

The scan reads DNS, so it can see whether a destination can receive a report. It can't see whether anyone reads one. The monitoring tier means a report can arrive. It doesn't mean anyone reads it.

When a rua address sits on another organization's domain, RFC 7489 requires an authorization TXT record at <domain>._report._dmarc.<rua-host>. A receiver that finds no DMARC version tag there must not send the report, and it raises no error to the domain that named the address. 34,749 domains in this scan name at least one outside address whose owner hadn't authorized them when we scanned. Receivers that run this check send nothing to that address. Some of those domains also name another address, on their own domain or with authorization, and receivers can still send reports there.

30,036 domains name only outside addresses without authorization. They're the domains in the unauthorized group with no other address to fall back on. Neither group covers the whole dead tier, because a p=none record with no rua tag is dead too. It gives receivers nowhere to send a report.

193,499 domains name at least one outside reporting address. 141 of them name at least one address the scan could not resolve to a verdict, which counts as neither authorized nor dead. A domain is counted once in each category it has an address in, so the categories overlap. At least 2,053 domains name more than one kind, which is why the counts sum past the total.

SPF

DMARC passes on SPF or DKIM alignment. When receivers can't evaluate a domain's SPF record, its mail can pass DMARC only on DKIM.

64.1%
of measured domains publish SPF
5.7%
of published SPF records permerror

641,215 of the 1,000,424 measured domains publish an SPF record. 36,598 of those records (5.7%) return permerror, which means receivers refuse to evaluate the record at all. 16,482 exceed the ten-lookup limit and 10,448 publish more than one record. The scan also flags an include that points at a name with no SPF record, and an include or redirect loop. It doesn't check for other syntax errors, so the true permerror count can only be higher.

How the records end

EndingDomainsShare
-all (fail) 236,871 39.2%
~all (softfail) 333,354 55.1%
?all (neutral) 15,927 2.6%
+all (pass everything) 402 0.1%
no all mechanism 18,063 3.0%

Percentages are out of the 604,617 domains with a usable SPF record. Records that already permerror are left out, because receivers never reach their final mechanism.

US federal .gov domains

This is every registered federal .gov zone in CISA's public registry, across the executive, legislative and judicial branches. CISA's Binding Operational Directive 18-01 required executive-branch domains that send mail to reach p=reject by October 2018. This list is wider than that, and its parked and redirect names have no mail to protect, so its reject share is not a compliance rate.

TierDomainsShare
No record 174 13.2%
Broken 7 0.5%
Dead reporting 25 1.9%
Monitoring 19 1.4%
Partial enforcement 9 0.7%
Enforced 1,087 82.3%

The enforced count, 1,087, sits above the reject count, 1,070, because 26 quarantine domains join the tier and 9 weakened domains leave it.

The federal reject share is 81.0% (1,070 domains). Across the whole scan it's 11.8% (118,536 domains), and that figure already includes this cohort. 174 federal domains (13.2%) publish no DMARC record, and 25 publish a dead one. Some of those are parked names that send no mail. The registry doesn't say which.

1,321 domains in the cohort. 81.0% publish p=reject and 83.0% publish quarantine or reject.

Who is named to receive the reports

The rua tag lists where a domain wants its reports sent, so counting rua hosts shows which platforms domains pick to receive them. A rua entry doesn't prove a report arrives, and these counts aren't the platforms' customer numbers. The largest named collector is Cloudflare, on 28,095 domains, then Brevo at 16,177 and Valimail at 14,333.

A p=none domain moves from the dead tier to monitoring once it has a working rua address. With a free collector, an operator can get a first report without signing a contract. Cloudflare, the largest collector in the scan, includes collection with the domain. Postmark's free DMARC Digests is the sixth largest collector.

Each bar counts the domains whose rua list includes a destination on that platform, once per domain. A domain naming two platforms counts for both.

Domains reporting to each DMARC platform (top 12 of 27 named) Cloudflare 28,095, Brevo 16,177, Valimail 14,333, Proofpoint 12,597, dmarcian 10,265, Postmark 10,141, Mimecast 6,682, GoDaddy 6,185, Red Sift 5,410, EasyDMARC 5,328, MxToolbox 4,858, DMARC Advisor 3,111. Cloudflare: 28,095 domains Cloudflare 28,095 Brevo: 16,177 domains Brevo 16,177 Valimail: 14,333 domains Valimail 14,333 Proofpoint: 12,597 domains Proofpoint 12,597 dmarcian: 10,265 domains dmarcian 10,265 Postmark: 10,141 domains Postmark 10,141 Mimecast: 6,682 domains Mimecast 6,682 GoDaddy: 6,185 domains GoDaddy 6,185 Red Sift: 5,410 domains Red Sift 5,410 EasyDMARC: 5,328 domains EasyDMARC 5,328 MxToolbox: 4,858 domains MxToolbox 4,858 DMARC Advisor: 3,111 domains DMARC Advisor 3,111

141,242 matches across 27 platforms. The largest destination matching no platform in the list is axa.com, named by 4,114 domains.

MTA-STS, TLS-RPT and BIMI

Far fewer domains publish these three records than publish DMARC.

9,563
MTA-STS policy record
11,542
TLS-RPT record
17,428
BIMI record

Out of the 1,000,424 measured domains, 1.0% publish MTA-STS, 1.2% TLS-RPT and 1.7% BIMI.

Methodology

Population Tranco list GQJJK, 1,000,000 domains, plus the cohort frames below. We scanned 1,000,767 domains in total. Tranco builds the list from the Crux, Farsight, Majestic, Radar and Umbrella rankings over the 30 days before the list date, combined with the Dowdall rule. Reference: Victor Le Pochat, Tom Van Goethem, Samaneh Tajalizadehkhoob, Maciej KorczyƄski and Wouter Joosen, "Tranco: A Research-Oriented Top Sites Ranking Hardened Against Manipulation", NDSS 2019, doi:10.14722/ndss.2019.23386.
Frames tranco: 1,000,000 domains from https://tranco-list.eu/list/GQJJK
cohort:us-federal-gov: 1,321 domains from research/cohorts/us-federal-gov.csv
554 cohort domains also rank in the Tranco million and were scanned once, which is why the frames add up to more than the number of domains scanned.
Collection window 2026-09-01T07:20:01.523Z to 2026-09-01T08:49:48.941Z. Aggregated 2026-09-03T16:20:26.246Z.
Resolver Queries went to unbound:5353, with retries against 1.1.1.1, 8.8.8.8.
Error rate 343 DMARC lookups failed after retries, which is 0.03% of the domains scanned. We left those domains out of every percentage on this page.
Public Suffix List Whether a reporting address is external is decided by comparing organizational domains against the Public Suffix List fetched 2026-09-01T07:20:00.670Z, sha256 24b79d731bb0d296. The list is pinned per snapshot so a re-run classifies destinations the same way. The list is used with its private section, so two customers of one platform that publishes a private rule count as external to each other, and a report address on a sibling tenant needs its own authorization record.
Multiple records More than one v=DMARC1 record at _dmarc is invalid per RFC 7489. This scan scores those 4,478 domains as broken.
Vendor classification Each rua destination is classified by the host that receives the mail, so a platform reselling another platform's collection counts under the receiving host. Hosts we don't recognize stay unmatched. We don't guess.
Absence versus failure NXDOMAIN or an empty TXT answer is absence. A timeout or SERVFAIL after retries is unknown. Failures are never counted as absence.
Month over month We compare each domain's policy with the one we stored for it in the August 2026 snapshot. If a lookup failed in either month, we drop the domain and count it separately, so a DNS failure never shows up as a policy change.
Independent comparison The adoption tracker at dmarcdkim.com/dmarc-adoption updates daily. It covers 1.35 million domains it has collected over time. When we checked it in August 2026 it reported 11.4% at full reject, where this scan finds 11.8% (118,536 domains) at p=reject. This scan's count includes 1,839 rejects weakened by pct and 7,723 with a weaker sp, which the tier framework scores as partial. The two measurements agree closely on policy rates. Their adoption headlines are not directly comparable, because the tracker measures an accumulated set of domains and this scan measures one pinned Tranco snapshot. We haven't compared the two populations.
Scanner Version a551ef2-dirty.

Limitations

The scan reads what domains publish in DNS. Nothing here is a delivered-mail pass rate or an actual rejection.

A domain whose reporting address couldn't be resolved to a verdict counts as neither authorized nor dead. At p=none that puts it in monitoring, so the true dead-reporting count can only be higher.

  • With two editions there's one month of change to report. We'll draw trend lines once three editions exist.
  • Some DNS lookups fail even after retries. 343 ended in error and are excluded rather than scored as no DMARC. If those lookups had succeeded, any count on this page could have moved by up to that many domains.
  • We checked rua authorization at scan time only. If a destination's owner added or removed an authorization after the scan, this snapshot doesn't show it.
  • So far the only named cohort is the 1,321 US federal domains. Other planned cohorts aren't in this edition.
  • We haven't matched every rua host to a platform yet. As we add more, some unmatched destinations will move into named platforms.

The data

Citing and reusing the data

We publish the aggregate data under CC BY 4.0. Reuse it, including commercially, with attribution. Suggested citation:

DomainCanary. DMARC Census, 2026-09. https://domaincanary.com/research/dmarc-census. Data licensed CC BY 4.0.