SPF, DKIM & DMARC Checker - Bulk Email Deliverability Audit avatar

SPF, DKIM & DMARC Checker - Bulk Email Deliverability Audit

Pricing

from $0.60 / 1,000 per domain auditeds

Go to Apify Store
SPF, DKIM & DMARC Checker - Bulk Email Deliverability Audit

SPF, DKIM & DMARC Checker - Bulk Email Deliverability Audit

Bulk SPF, DKIM and DMARC checker: SPF lookup count, DMARC policy, DKIM selectors, MX, MTA-STS, TLS-RPT and BIMI with a score, grade and fix list per domain. $0.0009 per domain.

Pricing

from $0.60 / 1,000 per domain auditeds

Rating

0.0

(0)

Developer

Ja doei

Ja doei

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

12 days ago

Last modified

Security

Limited permissions

Share

✅ Tested daily with its default input (Apify's automated QA plus our own smoke test before every release).

SPF, DKIM and DMARC checker for any number of domains. Since Gmail and Yahoo started enforcing sender requirements, missing or broken SPF, DKIM and DMARC records mean mail lands in spam or bounces. This Actor audits the email authentication setup using public DNS only and tells you in plain words what to fix. $0.0009 per domain.

What is checked

  • MX records (and null MX)
  • SPF: record present, duplicates, the final all qualifier, and the recursive DNS-lookup count across all includes (the 10-lookup limit from RFC 7208 is the most common silent failure)
  • DMARC: policy p, subdomain policy sp, pct, alignment modes, and whether aggregate (rua) and forensic (ruf) reports are configured
  • DKIM: ~30 common selectors (Google Workspace, Microsoft 365, Mailchimp/Mandrill, SendGrid, Zoho, Proton, Fastmail, Amazon SES, ...) plus any selectors you add; key type, approximate key length and revoked keys
  • MTA-STS, TLS-RPT and BIMI records
  • A score (0–100), a grade (A–F) and an issues list per domain

Use cases

  • Agencies and MSPs checking client domains before a campaign or onboarding
  • Deliverability audits of a list of sending domains
  • Monitoring your own domains on a schedule for accidental DNS changes
  • Lead qualification for email/DNS service providers (domain-level data only)

Output example

{
"domain": "example.org", "score": 72, "grade": "C",
"mx": ["mx1.example.org"], "spfRecord": "v=spf1 include:_spf.google.com ~all",
"spfLookups": 4, "spfAll": "~all", "dmarcPolicy": "none", "dmarcRuaDomains": ["example.org"],
"dkimSelectorsFound": ["google"], "mtaSts": false, "tlsRpt": false, "bimi": false,
"issues": ["DMARC p=none (monitoring only, no protection)"]
}

Input

FieldDefaultDescription
domains–Domains, URLs or email domains (@example.com)
dkimSelectors–Your own DKIM selectors
skipCommonSelectorsfalseTest only your selectors
nameservers1.1.1.1, 8.8.8.8Public resolvers used

Pricing (pay per event)

  • $0.0009 per domain audited. Domains that do not exist are reported for free.

Privacy

Only public DNS records are read. Report addresses in DMARC rua/ruf are reduced to their domain, so the output contains no email addresses. DKIM cannot be enumerated — if your provider uses a custom selector, add it in dkimSelectors.

Use with AI agents (MCP)

This Actor can be used as a tool by AI agents (Claude, Cursor, VS Code, other MCP clients) through the official Apify MCP server:

  • Add only this Actor as a tool: https://mcp.apify.com?tools=admirala/email-domain-auth-checker (sign in with OAuth or an Apify API token).
  • Or connect https://mcp.apify.com and let the agent find it with search-actors (e.g. "dmarc checker"), read the input schema with fetch-actor-details and run it with call-actor.

Example input an agent can pass:

{
"domains": [
"github.com",
"wikipedia.org"
]
}

Cost per call: $0.0009 per domain audited; non-existent domains are free. Results come back as dataset items (get-dataset-items).

FAQ

How do I check a domain's SPF, DKIM and DMARC records? Add the domain to domains. You get the SPF record and lookup count, DMARC policy, DKIM selectors found, a 0-100 score, grade A-F and an issues list.

Why does my SPF fail with too many DNS lookups? RFC 7208 allows 10 lookups. spfLookups counts them recursively across all includes.

Can it find my DKIM selector? It probes about 30 common selectors (Google, Microsoft 365, SendGrid, Mailchimp, ...). Custom selectors cannot be enumerated; add them in dkimSelectors.