HELO hostname checker: HELO, PTR and A record match for Spamhaus
In short: Enter the HELO/EHLO name (or paste a Received header) and the sending IP: checks the name is a real FQDN, has an A record pointing at the IP, the IP's PTR resolves back, and the PTR matches the HELO, as Spamhaus's sender guidelines ask. Limit: DNS only: it doesn't open an SMTP connection, so it can't see the HELO the server really sends or whether it stays the same between connections.
Enter the hostname your mail server sends in HELO or EHLO, and its public IP, or paste the Received header a receiving server added. The tool checks the name is a fully qualified public hostname, that it resolves to the sending IP, that the IP has a PTR record that resolves back (FCrDNS), and that the PTR and the HELO are the same name. Those are the points Spamhaus's sender guidelines ask for, with enforcement rolling out from November 2026.
Price: this tool is free. Checking a whole email list is from $9/mo, and the first 100 checks are free with Google, no card. See pricing
Sample result
mail.acme.example points at 203.0.113.25, and that IP's PTR is mail.acme.example.
- HELO
- mail.acme.example
- A record
- 203.0.113.25
- PTR
- mail.acme.example
What this means for you
HELO, PTR and A record agree: the setup Spamhaus's sender guidelines ask for.
- FQDN check: no localhost or .local
- HELO A record points at the sending IP
- PTR present and forward-confirmed
- PTR compared with the HELO name
- HELO
- PTR
- Spamhaus
By SimpleVerifier Team · Last updated
How do I check a mail server's HELO hostname?
- Find the HELO name: it's the hostname after
fromin the Received header the receiving server added, or themyhostname/smtp_helo_namesetting in Postfix (the FQDN setting on an Exchange send connector). - Enter it, plus the server's public sending IP. Or paste the whole Received line; the HELO and the IP in square brackets are read from it.
- Press Check HELO. The tool looks up the name's A and AAAA records, the IP's PTR, and the PTR name's A record.
- Fix each failed check: the HELO setting on your server, an A record in your DNS, or the PTR at whoever owns the IP.
Example
- You enter
- The HELO name
mail.acme.exampleand the sending IP203.0.113.25, or a Received header line holding both. - You get
mail.acme.exampleis a valid FQDN and resolves to203.0.113.25; the IP's PTR ismail.acme.exampleand resolves back, so the PTR matches the HELO and every check passes.- Limits
- One HELO name and IP per check and 10 checks a minute per connection. DNS only; it doesn't connect to the mail server.
What does Spamhaus require of the HELO?
Spamhaus's sender guidelines say the hostname in HELO/EHLO should resolve to the sending IP, should stay the same from connection to connection, and shouldn't be a placeholder such as localhost or a name copied from Gmail or Hotmail. Every sending IP should have a PTR naming a fully qualified hostname, and that hostname should resolve back to the IP. Spamhaus says it's gradually rolling out a requirement, from November 2026, for every sending IP to have a valid HELO, a PTR record and a matching A record.
Spamhaus's listing troubleshooter also asks for the PTR to match the HELO domain. The simplest setup that passes every check: HELO mail.yourcompany.com, an A record for mail.yourcompany.com pointing at the IP, and the IP's PTR set to mail.yourcompany.com. More detail is in Spamhaus's HELO and PTR requirement.
Do I need to check this if I send through Google Workspace or an ESP?
Usually not. When mail goes out through Google Workspace, Microsoft 365 or an email platform, their servers send the HELO and they own the IPs and the PTR records. This matters when you run your own server (Postfix, Exim, Exchange, a VPS or dedicated IPs) or an appliance that relays mail, such as a printer, CRM or app server sending direct.
What are the common HELO mistakes?
A HELO of localhost, a bare server name like mail or ubuntu, a name on a private suffix such as .local or .lan, the hosting provider's default name while the PTR says something else, and a HELO set to your bare domain (yourcompany.com) whose A record points at the website rather than the mail server. Postfix rejects some of these itself with reject_invalid_helo_hostname and reject_unknown_helo_hostname, which is why a receiving server may refuse mail with a HELO error.
Who uses this tool, and for what?
- Sysadmins
- Check a Postfix or Exim server's myhostname, A record and PTR line up before Spamhaus's rollout reaches it.
- Cold emailers on their own servers
- Check each VPS sending IP before warm-up starts, then run it through the IP blacklist check.
- MSPs
- Explain a client's HELO rejection with the exact record that's missing.
What can’t this tool tell you?
- DNS only: it doesn't open an SMTP connection, so it can't see the HELO the server really sends or whether it stays the same between connections.
- It shows DNS as it is now; a record you just changed may still be cached for its TTL.
- A pass means the names line up, not that the IP is trusted. A clean HELO on a blocklisted IP still gets mail refused.
- Spamhaus hasn't published every detail of how the rollout is enforced; the checks follow its published sender guidelines.
Common questions
- Does the tool connect to my mail server?
- No. It only runs DNS lookups, so it checks the name you enter, not the one the server actually sends. To see what your server sends, mail an outside inbox and read the Received header the receiving server added.
- Must the PTR exactly match the HELO?
- RFC 5321 doesn't require it, but Spamhaus's listing checks ask for it, and it's the configuration with nothing left to question. A PTR on the same domain as the HELO is shown as a warning, a different domain as a fail.
- Can the HELO be an IP address?
- RFC 5321 allows an address literal such as [203.0.113.25] when a server has no name, but Spamhaus asks for a hostname that resolves to the sending IP, so it's shown as a warning.
- Who sets the PTR record?
- Whoever holds the IP block, usually your hosting or cloud provider. It can't be set in your domain's DNS. The A record for the HELO name is the part you set yourself.
- What if I leave the IP empty?
- The tool checks the address the HELO name resolves to. That's right when the server sends from the IP its name points at; if it sends from another IP, enter that one.
Sources
Authentication and capacity are half of deliverability.
The other half is who you send to. Every hard bounce counts against the domain and inboxes you are sending from, and nothing in DNS can tell you which addresses on your list are dead.
- Bulk verification with real SMTP mailbox checks
- Hard bounces removed before a send, not discovered after
- Catch-all, disposable and role detection on every row
Plans from $9 a month, cancel anytime, no contract. Sign in with Google and your first 100 email checks are free, no card. The free tools stay free either way.