← All checks
Emaillowdmarc-partial-enforcement

Selected enforcing DMARC record declares pct below 100

ShipReady found a selected DMARC record with p=quarantine or p=reject and a parsed pct value from 0 through 99.

Why it matters

A lower pct value can be an intentional rollout setting. Reviewing it helps the owner confirm that the published policy still reflects the intended stage of that rollout.

How ShipReady detects it

What it inspects

ShipReady performs bounded DNS TXT inspection, selects one qualifying DMARC record, and parses its semicolon-separated key=value tags.

What triggers a finding

The rule triggers only when the selected record has p=quarantine or p=reject and its pct tag parses as an integer from 0 through 99. A missing pct tag, an unparseable or out-of-range value, or p=none does not trigger this rule.

What the evidence shows

The selected enforcing DMARC record declares a parsed pct value below 100.

Limits of this check

ShipReady reads DNS text only. It does not send mail, evaluate DMARC alignment, test receiving-server handling, confirm how a percentage is applied to real messages, or determine inbox placement or deliverability.

How to fix it

Confirm whether the rollout is intentional

Review the domain's sending paths and the reason for the current pct value before changing an enforcement setting.

Set the intended percentage

If the staged rollout is complete, update or remove pct according to the intended DMARC policy. Test the actual sending systems separately before broadening enforcement.

How to verify the change

Query the published DMARC record

After DNS propagation, inspect the selected DMARC TXT value and confirm that p and pct match the intended rollout state.

Expected: The selected record declares the intended policy and pct value.