Back to blog
Reputation··2 min read·WillItInbox Team

Reverse DNS and HELO — the most overlooked deliverability lever

Forward-confirmed reverse DNS is invisible until it's missing, and then it silently kills your mail.

InfrastructureDNS

Most deliverability advice focuses on SPF, DKIM, and DMARC. They matter — but they assume your mail server even gets a chance to deliver. Reverse DNS and HELO checks happen before anything else, and failing them gets you rejected silently at the SMTP transaction.

What a PTR record does

When your server connects to a receiver, the receiver does a reverse DNS lookup on the connecting IP. That lookup queries the PTR record, which maps the IP to a hostname. If there's no PTR, many receivers reject the connection before even seeing the message — Outlook.com is famously strict here.

Forward-confirmed reverse DNS (FCrDNS)

A PTR alone isn't enough. Receivers also do a forward lookup on the hostname returned by the PTR and check that it resolves back to the same IP. This is FCrDNS. Without it, the PTR could point anywhere — receivers treat the hostname as untrusted.

A correctly configured pair looks like:

203.0.113.42  IN  PTR  mail.example.com.
mail.example.com  IN  A  203.0.113.42

HELO/EHLO

Every SMTP transaction starts with the sending server identifying itself: HELO mail.example.com. That hostname should be a real FQDN you control, and it should resolve. Common mistakes:

  • Default Postfix install with HELO localhost.localdomain.
  • Using the IP literal: HELO [203.0.113.42].
  • Using a hostname that doesn't resolve.

Match the HELO to the PTR's hostname when possible — it's not strictly required but it scores well across receivers.

How to fix it

PTR records aren't set in your normal DNS — they're set by whoever owns the IP block. That's almost always your hosting provider. Open a ticket. The fix is a one-line change on their end and usually takes hours, sometimes minutes.

For HELO, edit your mail server config:

  • Postfix: set myhostname to your FQDN.
  • Sendmail: set Dj macro.
  • Most ESPs: configurable in their dashboard, often called "sending domain" or "sender hostname."

If you only do one thing

Check your PTR right now. dig -x <your-sending-ip> should return your mail server hostname. If it returns nothing or a generic ISP-assigned hostname, you have homework.

Keep reading