Gmail 550 5.7.25: sending IP has no PTR record
550 5.7.25Sending IP has no matching PTR recordPermanent: retrying will not helpFrom Gmail and Google Workspace
550-5.7.25 [203.0.113.20] The IP address sending this message does not have a PTR record setup, or the corresponding forward DNS entry does not point to the sending IP. As a policy, Gmail does not accept messages from IPs with missing PTR records. - gsmtp
What it means
Gmail performs a forward-confirmed reverse DNS test on every connecting IP. It looks up the PTR record for the address, then resolves that hostname to A or AAAA records and expects the original IP among them. When either half is missing, Gmail rejects the message with 5.7.25 before content is even considered.
This check sits at the network identity layer, which makes it different from SPF and DKIM failures. Your domain records can be flawless and you will still see this bounce. It is especially common on IPv6, where many hosts never get a PTR, and Gmail is stricter about IPv6 sending than IPv4.
The bounce is permanent, but once DNS is corrected the next message is accepted with no delisting step.
Likely causes
- The server sends over IPv6 and the provider never set reverse DNS for that address.
- The PTR points to a hostname such as mail.example.com that has no A record, or an A record for a different IP.
- A cloud instance or VPS kept its generic provider PTR after the IP was reassigned.
- Mail leaves through a NAT or firewall IP that differs from the one you configured reverse DNS for.
How to fix it
- Copy the IP in square brackets from the bounce. That is the address Gmail saw, which may not be the one you expect.
- Ask whoever owns that IP block (hosting provider, ISP, or cloud console) to set a PTR such as mail.example.com. You cannot publish PTR records in your own domain zone.
- Create or correct the forward record so mail.example.com resolves to exactly that IP.
- If you cannot get IPv6 reverse DNS, configure the MTA to send to Gmail over IPv4 only (in Postfix, `smtp_address_preference = ipv4` or `inet_protocols = ipv4`).
- Retest with a lookup and then resend.
Checks that apply
- Reverse DNS (PTR) Shows the reverse name for the sending IP and whether it resolves forward to the same address.
- SMTP Diagnostics Displays the HELO banner your server presents, which should match the PTR hostname.
- Google/Yahoo Compliance Includes the reverse DNS requirement alongside Gmail’s other sender rules.
FAQ
- Can I add the PTR record in my DNS hosting panel?
- No. Reverse zones belong to whoever holds the IP range. Open a ticket with your host or use the reverse DNS setting in your cloud console.
- Does the PTR hostname need to match my From domain?
- No. Gmail only needs the PTR and forward lookup to agree. Using a name under your own domain is still good practice.