SMTP test

Connects to your mail server and checks the greeting, EHLO, STARTTLS, the TLS certificate and reverse DNS, with the time each step took.

Port
Showing an example: gmail.com, port 25Never sends a message: it stops after EHLO and STARTTLS
7of 7
steps of the session passed

Ready for mail

gmail-smtp-in.l.google.com:25TLSv1.3

gmail-smtp-in.l.google.com answers on port 25 (server-to-server delivery) with TLSv1.3 with a trusted certificate. The greeting, EHLO, STARTTLS and reverse DNS all check out. The session took 179 ms.

4 pass
Connect
2 ms
142.251.127.27
Greeting
33 ms
mx.google.com
TLS
TLSv1.3
Trusted certificate
Whole session
179 ms
MX of gmail.com
4 passed, 1 for information
Nothing to do here. Open it to see the detail.
The greeting name differs from reverse DNSReverse DNS confirmedGreeting in 33 msSTARTTLS works, TLSv1.3EHLO lists 6 extensions
ShowHide
The greeting name differs from reverse DNS
The server calls itself mx.google.com; its IP reverses to lcfrai-in-f27.1e100.net. Large providers do this all the time and receivers don't penalize it.
Reverse DNS confirmed
142.251.127.27 reverses to lcfrai-in-f27.1e100.net, which resolves back to it.
lcfrai-in-f27.1e100.net
Greeting in 33 ms
mx.google.com ESMTP ffacd0b85a97d-48dfd5304d4si10968360f8f.435 - gsmtp
mx.google.com
STARTTLS works, TLSv1.3
TLS_AES_256_GCM_SHA384, with a trusted certificate from WE2, valid 65 more days.
mx.google.com
EHLO lists 6 extensions
SIZE 157286400, 8BITMIME, ENHANCEDSTATUSCODES, PIPELINING, CHUNKING, SMTPUTF8

Session

Each step of the conversation, in order, with how long the server took.
1DNS MX gmail-smtp-in.l.google.com, 142.251.127.27
OK60 ms
2Connect, port 25 Connected
OK2 ms
3Greeting 220 mx.google.com
OK33 ms
4EHLO 250, 7 extensions
OK16 ms
5STARTTLS Accepted
OK15 ms
6TLS handshake TLSv1.3
OK21 ms
7EHLO inside TLS 250, 6 extensions
OK
179 ms for the whole session, then QUIT. No MAIL, RCPT or DATA was sent.

Certificate

TLSv1.3, TLS_AES_256_GCM_SHA384.
Issued to
mx.google.com
Names it covers
mx.google.comsmtp.google.comaspmx.l.google.comalt1.aspmx.l.google.comalt2.aspmx.l.google.comalt3.aspmx.l.google.comand 20 more
Issuer
WE2
Valid until
2026-12-21 (65 days left)
Chain
Trusted
Name match
Covers gmail-smtp-in.l.google.com
SHA-256
2C:3C:6A:81:79:EF:0A:92:C5:26:5F:8D:80:B0:06:C7:CB:39:22:4D:F7:4F:0B:0D:9F:C4:5A:BA:5A:B3:DB:51

EHLO extensions

What the server says it supports.
Before TLS
SIZE 1572864008BITMIMESTARTTLSENHANCEDSTATUSCODESPIPELININGCHUNKINGSMTPUTF8
After STARTTLS
SIZE 1572864008BITMIMEENHANCEDSTATUSCODESPIPELININGCHUNKINGSMTPUTF8

MX records for gmail.com

The test used the first one. Test the others too: senders fall back to them.
Priority
Mail server
5
gmail-smtp-in.l.google.com
Tested
10
alt1.gmail-smtp-in.l.google.com
20
alt2.gmail-smtp-in.l.google.com
30
alt3.gmail-smtp-in.l.google.com
40
alt4.gmail-smtp-in.l.google.com
Transcript, 22 lines
C is our test, S is the server. Our test host's name and IP are hidden.
ShowHide
S: 220 mx.google.com ESMTP ffacd0b85a97d-48dfd5304d4si10968360f8f.435 - gsmtp
C: EHLO our-test-host
S: 250-mx.google.com at your service, [our test IP]
S: 250-SIZE 157286400
S: 250-8BITMIME
S: 250-STARTTLS
S: 250-ENHANCEDSTATUSCODES
S: 250-PIPELINING
S: 250-CHUNKING
S: 250 SMTPUTF8
C: STARTTLS
S: 220 2.0.0 Ready to start TLS
C: EHLO our-test-host
S: 250-mx.google.com at your service, [our test IP]
S: 250-SIZE 157286400
S: 250-8BITMIME
S: 250-ENHANCEDSTATUSCODES
S: 250-PIPELINING
S: 250-CHUNKING
S: 250 SMTPUTF8
C: QUIT
S: 221 2.0.0 closing connection ffacd0b85a97d-48dfd5304d4si10968360f8f.435 - gsmtp

SMTP settings for common providers

For mail clients, apps and sequencers. Mailbox providers take the full email address as the username; the email APIs give you SMTP credentials in their dashboards.
Provider
Server
Port and security
Gmail and Google Workspace
smtp.gmail.com
587 STARTTLS, 465 TLS
Microsoft 365
smtp.office365.com
587 STARTTLS
Outlook.com
smtp-mail.outlook.com
587 STARTTLS
Yahoo Mail
smtp.mail.yahoo.com
465 TLS, 587 STARTTLS
iCloud Mail
smtp.mail.me.com
587 STARTTLS
Zoho Mail
smtp.zoho.com
465 TLS, 587 STARTTLS
Fastmail
smtp.fastmail.com
465 TLS, 587 STARTTLS
SendGrid
smtp.sendgrid.net
587 STARTTLS, 465 TLS
Mailgun
smtp.mailgun.org
587 STARTTLS, 465 TLS
Postmark
smtp.postmarkapp.com
587 STARTTLS

Next

Email me this report
The verdict, every step with its time, the certificate and the fixes, with a link to the saved report.
Every step with its timeFixes worst firstSaved for 90 days
One email with the report. No sequence, no sales call.
Put Ken on the rest of your outbound
Add your domains and Ken watches DNS, blacklists and bounce rates for you, and pauses an inbox before it does damage.
Start free - 1,000 credits, no card

What the SMTP test does

Enter a domain, a mail server's name or its IPv4 address, and pick a port. For a domain, the test connects to its highest-priority MX; a name with no MX is tested as the server itself. It records the 220 greeting and the EHLO reply, upgrades the connection with STARTTLS, checks the certificate, then looks up the IP's reverse DNS and confirms that name resolves back to the same address.

The session ends with QUIT right after EHLO and STARTTLS. The test never sends MAIL, RCPT or DATA, so no message is sent.

How to read the session

  • Greeting: the 220 reply and the name the server gives itself.
  • EHLO: the extensions the server supports. STARTTLS should be listed, and AUTH should appear only after TLS starts.
  • STARTTLS and TLS: whether the upgrade works and which TLS version it negotiates.
  • Certificate: whether the chain is trusted, whether it covers the server's name, and how long it has left.
  • Reverse DNS and FCrDNS: the IP's PTR name, and whether that name resolves back to the same IP.

Each step shows how long the server took. A greeting that takes several seconds is often a deliberate pause against spam bots.

Ports 25, 587 and 465

Port 25 carries mail from server to server, and TLS on it is opportunistic. Port 587 is the submission port from RFC 6409, used by mail clients and apps with STARTTLS and a login. Port 465 is submission over implicit TLS, which RFC 8314 now recommends for clients. Each run tests one port.

Most cloud providers block outbound port 25 by default, so a test from a laptop or a cloud server can fail even when the mail server is fine. This test runs from a server with port 25 open, so a timeout here means the mail server or its firewall didn't answer.

Why it matters for cold email

If you run your own sending servers, Gmail requires valid forward and reverse DNS for every sending IP and TLS on the connection. A missing PTR record, or one that doesn't resolve back, gets mail rejected or junked at many receivers.

If you send through Google Workspace or Microsoft 365, their servers handle this. Test your own MX instead, to confirm replies can reach you, and any SMTP relay your sequencer sends through.

Questions

How do I test an SMTP server?
Enter the server's name or IPv4 address, or a domain to test its first MX, and pick port 25, 587 or 465. The test connects, runs EHLO and STARTTLS, and checks the certificate and reverse DNS. It never sends a message.
Does the test check for an open relay?
No. It stops after EHLO and STARTTLS and never sends MAIL or RCPT, so no message is ever sent. Testing relaying needs a RCPT command to an outside address, which this test doesn't make.
What is FCrDNS?
Forward-confirmed reverse DNS. The IP's PTR record gives a host name, and that host name's A record points back to the same IP. Gmail requires it for sending IPs, and many other receivers distrust mail without it.
Why does the SMTP test time out?
Nothing answered on that port within 8 seconds. The server may be down or behind a firewall, or it doesn't listen on that port. Some servers also delay or drop connections from IPs they don't know. If mail to the server works, check its firewall and connection limits.
Which SMTP port should I use to send email?
From an app or mail client, use 587 with STARTTLS or 465 with implicit TLS, and log in. Port 25 is for servers delivering to other servers, and most home and cloud networks block it outbound.
How often can I test a server?
Five times a day per server. A clean result is reused for six hours, so a popular server stays testable all day. After you change something, use Re-test to skip the stored result.

More in Deliverability

30 tools.