Skip to content

Email Blacklist Check

A blacklist check asks DNS-based blocklists whether they have an entry for your mail server's IP address. Each list is a DNS zone: reverse the four octets, append the zone name, and a returned A record inside 127.0.0.0/8 means listed. We query ten public zones live.

How a DNSBL check actually works

A DNS blocklist (DNSBL, sometimes RBL) is not a database you query over an API. It is an ordinary DNS zone. To ask whether 198.51.100.10 is listed on bl.example.net, you reverse the octets to 10.100.51.198, prepend that to the zone, and resolve 10.100.51.198.bl.example.net as an A record. If the zone returns an address inside 127.0.0.0/8, the IP is listed and the last octet is a coded reason. If it returns NXDOMAIN, the IP is not listed. That is the whole protocol, and it is why a blocklist lookup costs a receiving mail server almost nothing.

The return code carries meaning that varies by operator. SpamCop only ever answers 127.0.0.2. SpamRats uses 127.0.0.36 for missing rDNS and 127.0.0.38 for dynamic-looking rDNS. UCEPROTECT uses 127.0.0.2 for Level 1 (the single IP) and different zones for Level 2 and 3 (the netblock and the ASN). Many zones also publish a TXT record at the same name containing a human-readable reason and a delisting URL, which this tool fetches whenever a listing is found.

Enter a domain and we resolve its A record first, then check that address. Mail is judged on the IP that opens the SMTP connection, not on the domain in the From header — so check the IP of your outbound relay, which is often different from your website.

Which lists this tool checks — and which it deliberately does not

Ten zones are queried on every run, chosen because they are widely consulted by real receivers and because their operators permit public query traffic:

Read the full explanation of email blacklist check results ↓
ZoneWhat it listsDelisting
b.barracudacentral.orgBarracuda Reputation Block List — spam observed by Barracuda appliancesFree web form, usually fast
bl.spamcop.netIPs reported by SpamCop users; entries age out automaticallySelf-service, expires in ~24h if reports stop
dnsbl.sorbs.netSORBS aggregate zone (open relays, proxies, spam sources)Web form
spam.dnsbl.sorbs.netSORBS spam-source-only subsetWeb form
dnsbl-1.uceprotect.netUCEPROTECT Level 1 — the individual IPFree after 7 quiet days, or paid express
dyna.spamrats.comIPs whose rDNS looks like a dynamic/residential poolFix rDNS, then request removal
noptr.spamrats.comIPs with no PTR record at allPublish a PTR, then request removal
all.s5h.nets5h.net aggregate spam and abuse sourcesEmail request
psbl.surriel.comPassive Spam Block List — spamtrap hits onlySelf-service, immediate
bl.blocklist.deIPs reported for SSH/mail/web brute force in the last 48hSelf-service, auto-expires
Spamhaus is intentionally not queried. The free Spamhaus DNSBL feed is licensed for non-commercial, low-volume use only, and an ad-supported public checker does not qualify. Rather than quietly breach their terms — or return a bogus "not listed" because our queries were refused — we leave it out. Check Spamhaus directly at their own lookup page; it is the single most consequential list for Gmail and Microsoft delivery, so do not skip it.

Two other honesty notes. First, a zone that answers SERVFAIL, REFUSED, or times out is shown as no answer, never as "not listed" — several operators throttle busy resolvers, and treating a refusal as a pass would be a lie. Second, SORBS has been largely dormant since 2024; it stays in the list for historical continuity but rarely returns a listing today.

How to read your result

  • Not listed on all ten — good, but not a clean bill of health. Gmail, Microsoft, and Proofpoint run their own internal reputation systems that no public list exposes. If mail is still being deferred, the cause is content, volume, authentication, or a private reputation score.
  • Listed on one aggressive list (UCEPROTECT Level 1, blocklist.de) — usually low impact. Few large receivers consult these. Fix the underlying cause, but do not panic.
  • Listed on Barracuda, SpamCop, or PSBL — act today. These are consulted by a large number of corporate gateways, and PSBL listings mean a spamtrap address received mail from you.
  • Listed on noptr.spamrats.com — you have no PTR record. That is a five-minute fix with your hosting provider and it also fixes rejections from Microsoft and Yahoo independently of the listing.
  • Listed on several lists at once — assume compromise. A hacked CMS, a leaked SMTP credential, or a forwarding loop is sending through you. Find and stop the source before requesting any delisting; relisting after a premature removal is slower to reverse.

Common causes, in the order you should check them

  1. A compromised account. Check your mail queue and your MTA logs for a single authenticated user sending thousands of messages. Rotate the password, then flush the queue.
  2. A vulnerable web application. PHP mail() calls from a compromised contact form are the classic cause on shared hosting. Look for messages whose envelope sender is the webserver user.
  3. A shared or recycled IP. If you moved to a VPS or a new cloud instance, you inherited whatever the previous tenant did. This is common enough that reputable providers will re-assign an address on request.
  4. Missing or generic rDNS. 203-0-113-10.dsl.example.net reads as a residential connection to every filter on the internet. Set a PTR that matches your HELO name — see the reverse DNS lookup tool.
  5. A forwarding loop or mailing list. Forwarded spam is still spam from your IP's perspective. Deploy SRS or stop forwarding unfiltered mail.
  6. Legitimate bulk mail without consent. Purchased lists hit spamtraps. A PSBL listing is nearly always this.

The delisting procedure that actually works

Fix the cause first and verify it is fixed — most lists will refuse a second removal request within a cooling-off window, and some (notably UCEPROTECT) charge for expedited removal after a repeat listing. Then submit the removal form linked next to each listing above. Expect self-service lists (SpamCop, PSBL, blocklist.de) to clear within minutes to 24 hours, Barracuda within a business day, and SORBS/UCEPROTECT to take longer.

Do not stop at delisting. A listing is a symptom; large receivers keep their own memory of your IP for weeks after the public list clears. Warm the address back up with low, consistent volume to engaged recipients, and confirm your authentication is intact with the deliverability snapshot before resuming normal sending.

Doing the same check from your terminal

Every query this tool makes is a plain dig. To check 198.51.100.10 against Barracuda, reverse the octets and resolve:

# Is 198.51.100.10 listed? Reverse the octets, append the zone.
dig +short 10.100.51.198.b.barracudacentral.org A

# An answer in 127.0.0.0/8 means listed; empty output means not listed.
# Fetch the operator's reason when a listing is returned:
dig +short 10.100.51.198.b.barracudacentral.org TXT

# RFC 5782 self-test — every conformant zone MUST list 127.0.0.2
# and MUST NOT list 127.0.0.1. Use this to prove your query path works:
dig +short 2.0.0.127.bl.spamcop.net A    # expect 127.0.0.2
dig +short 1.0.0.127.bl.spamcop.net A    # expect no output
Reproduce any row in the table above with dig

That RFC 5782 pair is worth remembering. If 2.0.0.127.<zone> returns nothing, your query is not reaching the zone at all — you are probably behind a resolver the operator blocks — and any "not listed" result you got is meaningless. This tool runs its own queries through the system resolver for exactly that reason: several DNSBLs return REFUSED to queries arriving from 8.8.8.8 and 1.1.1.1.

Where blacklists fit in the wider picture

Blocklists are a coarse, IP-level signal. They answer "has this address behaved badly recently", nothing more. Modern filtering weighs domain reputation, authentication alignment, engagement, and content far more heavily. If you are diagnosing a delivery problem, run the full deliverability snapshot first — a missing DMARC record or an SPF PermError explains far more rejections than a UCEPROTECT listing ever will. Then confirm the server is reachable with the SMTP connection test and that your MX records point where you think they do.

Frequently asked questions

Why do you not check Spamhaus?
Spamhaus licenses its free DNSBL feed for non-commercial use with low query volumes. A public, ad-supported checker does not meet those terms, so querying it here would breach their licence. We would rather tell you that plainly than either break the terms or show you a false "not listed" caused by our queries being refused. Check Spamhaus directly through their own lookup page — for Gmail and Microsoft delivery it matters more than every list here combined.
I am not on any list but my mail still goes to spam. Why?
Public blocklists are only one input, and a small one for the largest receivers. Gmail and Microsoft run private reputation systems keyed on your domain and IP that no external tool can read. Check authentication first (SPF, DKIM, DMARC alignment), then look at engagement — low open rates, spam-button clicks, and sending to stale addresses damage placement far more than a DNSBL entry.
Should I check my IP or my domain?
Check the IP address your mail actually leaves from. That is what the receiving MTA sees when the TCP connection opens, and it is what these IP-based lists index. Entering a domain here resolves its A record, which is your website — frequently a completely different machine from your mail relay. Find the real sending IP in the topmost Received header of a message you sent, or in your MTA logs.
What does a return code like 127.0.0.4 mean?
It is the operator's reason code, and the meaning is list-specific. SORBS used 127.0.0.4 for open SMTP relays; SpamRats uses 127.0.0.36 for missing rDNS and 127.0.0.38 for dynamic-looking rDNS; UCEPROTECT answers 127.0.0.2 from its Level 1 zone. When a listing is found we also fetch the TXT record at the same name, which usually spells the reason out in English along with the delisting URL.
A zone showed "no answer" — am I listed or not?
Neither. The query failed, so the zone told us nothing. That happens when a list is dormant, when its nameservers are overloaded, or when the operator refuses queries from high-volume resolvers. We show it separately rather than counting it as clean, because reporting an unanswered query as a pass is how checkers give people false confidence. Re-run in a minute, or query that zone directly with the dig command above.
How long does delisting take?
Self-service lists (SpamCop, PSBL, blocklist.de) clear in minutes to 24 hours and re-list immediately if the behaviour continues. Barracuda usually processes requests within a business day. UCEPROTECT removes Level 1 entries automatically after seven days with no further reports, or immediately for a fee. Fix the cause before requesting removal — a re-listing after a premature delisting takes longer to reverse and, on some lists, costs money.
My whole hosting provider is listed, not just me. What can I do?
That is a UCEPROTECT Level 2 or Level 3 style listing, which covers a netblock or an entire ASN. You cannot delist yourself from it and paying for individual removal is generally a waste of money. Raise it with your provider — they are the only party who can clean the range — and in the meantime route outbound mail through a reputable relay on a different network.
Does being on a blacklist affect my website or only email?
Almost always only email. These zones are consulted by receiving mail servers during the SMTP conversation. A small number of web application firewalls consult abuse lists like blocklist.de to score inbound requests, so a listing there can occasionally cause CAPTCHA prompts for visitors sharing your IP, but your site itself is not blocked.