SPF too many DNS lookups

Updated 15 October 2026

Short answer

Your SPF record needs more than 10 DNS lookups to check, and 10 is the limit. Past it, the SPF check returns an error instead of a pass, so your email can fail authentication. Count the include:, a, mx, ptr, exists and redirect parts, including those inside each include, and remove the services you no longer send from.

What's the problem

An SPF checker reports "too many DNS lookups" or "PermError", or your email fails SPF even though your sending services are listed.

Why it happens

  • Every email service you add puts another include: in the record, and each include can contain more lookups of its own.
  • Old services are never removed after you stop using them.
  • a, mx and ptr parts also count toward the 10.

How to fix it

  1. List what's in the record: look up the TXT record starting v=spf1 on your domain.
  2. Remove includes for services you don't send from anymore.
  3. Remove a or mx if those servers don't send mail.
  4. If you still need more, send bulk or marketing mail from a subdomain with its own SPF record.
  5. Check again that the total is 10 or fewer and that there is only one v=spf1 record.

What Preventionlabs checks

One click runs the full report on your domain. For this problem it shows your email authentication: SPF (and its 10-lookup limit), DMARC and DKIM; whether mail to you must arrive encrypted (MTA-STS) and whether you get reports when it does not; your DNS: nameservers, addresses, DNSSEC, and records pointing at services that no longer exist. It can't see your sending provider's delivery logs, so check bounces there.

Run your free report

Your first report is free, no card needed. Then A$50 a month, up to 10 domains. Read-only: it never changes anything.

Sources

  1. IETF: Sender Policy Framework (SPF)RFC 7208MUST limit the total number of those terms to 10 during SPF evaluation
  2. Google: Set up SPFhelp centerAn SPF record can have up to 10 include : tags.
← All of Email