Provider & MTA setup

Zoho SMTP test — smtp.zoho.com ports & app passwords

Zoho SMTP test online for smtp.zoho.com and regional hosts on port 587 with STARTTLS. App-specific passwords, sending limits, ZeptoMail notes, 535 fixes.

9 min read Credentials redacted No signup

Connection settings

Host
smtp.zoho.com
Port
587
Security
STARTTLS

Zoho Mail provides SMTP submission for personal, family, and business mailboxes. Use this Zoho SMTP test online guide to verify smtp.zoho.com (or your regional host), port, TLS mode, and credentials before configuring WordPress, a CRM, or a custom app.

Recommended settings

Setting Value
Host smtp.zoho.com (US/global) or your regional host
Port 587 (STARTTLS) or 465 (implicit TLS)
Username Your full Zoho email address, e.g. you@yourdomain.com
Password App-specific password if 2FA is on, otherwise your Zoho password
Auth method Auto, PLAIN, or LOGIN
From address The authenticated mailbox or an allowed alias

If you want a refresher on what the test actually does before you start, see what an SMTP test is.

Regional SMTP hosts and how to pick the right one

Zoho hosts mailboxes in several data regions, and each region has its own SMTP endpoint. Pick the host that matches where your mailbox is hosted:

Region SMTP host
US / global smtp.zoho.com
Europe smtp.zoho.eu
India smtp.zoho.in
Australia smtp.zoho.com.au
Japan smtp.zoho.jp

The most reliable ways to confirm your region:

  1. Check the webmail URL you use. If you sign in at mail.zoho.eu, your mailbox is in the EU and your SMTP host is smtp.zoho.eu. The same pattern applies to .in, .com.au, and .jp.
  2. Check the admin console. For organization mailboxes, the Zoho Mail Admin Console shows the data region for the account. Use the matching host.
  3. Ask whoever set up the account. Region is fixed at signup (or migration) and cannot be inferred from your domain alone. A yourdomain.com mailbox can just as easily live in the EU or India data center as in the US.

Using the wrong regional host is a common failure mode. The connection often succeeds, but authentication fails with a generic 535 error that looks exactly like a bad password. If you are confident the credentials are correct and 2FA is handled, the region mismatch is the first thing to check. The test transcript will show a successful TLS handshake followed by a failed AUTH, which points at host or credentials rather than networking.

Username: always the full email address

Zoho expects the SMTP username to be the complete email address, not a bare local part:

This trips up people migrating from servers where a short username worked. If AUTH fails and the password is definitely right, print the username field from your saved profile and check for truncation, a missing domain, or a stray space.

App-specific passwords (required with 2FA)

If multi-factor authentication is enabled on your Zoho account, your normal login password will not work for SMTP. Zoho rejects it with an authentication error, and you need an app-specific password instead:

  1. Sign in to your Zoho account at accounts.zoho.com (or your regional equivalent, e.g. accounts.zoho.eu) and open SecurityApp Passwords.
  2. Generate a new password, giving it a name such as smtp-test or the name of the client you are configuring.
  3. Copy the generated password immediately. Zoho shows it only once.
  4. Use your full email address as the SMTP username and the app password as the SMTP password.

Without 2FA, your regular Zoho password may work, but app passwords are still the better choice for third-party apps. You can revoke one client's password without resetting your main login, and you can delete the test password when you are done.

Testing with SMTP Tester

  1. Host: smtp.zoho.com (or your regional host), port 587, security STARTTLS.
  2. Username: full Zoho email address.
  3. Password: account password or app-specific password.
  4. From: the same mailbox (or an allowed send-as alias).
  5. To: any recipient for a delivery test.
  6. Click Run and confirm 235 after AUTH in the transcript.

Enable handshake-only first if you only want to verify TLS and credentials without sending mail. It runs connect, TLS, EHLO, AUTH, and a QUIT, which is enough to prove the credentials and region are correct.

What each stage of the transcript means

Sending limits by Zoho Mail plan

Zoho applies daily sending limits that vary by plan, with per-message recipient caps on top. The Free plan is the most restricted, paid plans scale up with tier, and organization plans depend on the specific Workplace bundle. Exact numbers change as Zoho revises its plans, so treat any figure quoted in a blog post or forum thread (including this one) as out of date until you confirm it in Zoho's own documentation or your admin console.

What stays true regardless of plan:

Zoho Mail SMTP vs Zoho Transactional Email (ZeptoMail)

Zoho operates several email products, and they are not interchangeable:

Do not paste a ZeptoMail token into Zoho Mail SMTP settings or vice versa. If you are evaluating transactional providers in general, the SendGrid SMTP test, Mailgun SMTP test, and Amazon SES SMTP test guides cover the same credential-and-domain verification pattern.

Zoho Mail vs Zoho Workplace / organization mail

If smtp.zoho.com fails with connection errors for a business tenant, try the hostname listed in your admin documentation.

Testing with Node.js and nodemailer

Once SMTP Tester confirms the credentials work, here is the equivalent nodemailer configuration for your app:

const nodemailer = require("nodemailer");

const transporter = nodemailer.createTransport({
  host: "smtp.zoho.com",        // or smtp.zoho.eu / .in / .com.au / .jp
  port: 587,
  secure: false,                // STARTTLS on 587; use true only for 465
  auth: {
    user: "you@yourdomain.com", // full email address
    pass: "your-app-specific-password",
  },
});

transporter
  .verify()
  .then(() => console.log("SMTP ready"))
  .catch((err) => console.error("SMTP failed:", err.message));

The verify() call maps to the same handshake SMTP Tester performs, so a passing test should mean a passing verify(). If your app runs on port 465, set secure: true; on 587, keep secure: false so STARTTLS is used. For a deeper look at why this distinction exists, see port 587 vs 465.

Common errors

535 authentication failed

550 sender rejected

Connection timeout

TLS errors

Privacy note

Frequently asked questions

I get "authentication failed" but my password is correct. Why?

Most often one of three things: 2FA is enabled and Zoho requires an app-specific password, the username is not the full email address, or you are pointed at the wrong regional host (e.g. smtp.zoho.com for a mailbox hosted on smtp.zoho.eu). Test all three before assuming a lockout.

How do I know which region my Zoho mailbox is in?

The URL you use for webmail is the easiest signal: mail.zoho.eu means EU, mail.zoho.in means India, and so on. For organization accounts, the Admin Console shows the data region. There is no way to detect it from your domain alone.

Can I use my normal Zoho password for SMTP?

Only if 2FA is disabled on the account. With 2FA on, Zoho rejects the login password for SMTP and IMAP clients and requires an app-specific password generated from the account Security page.

Does the Free plan of Zoho Mail allow SMTP?

The Free plan has the tightest restrictions of any Zoho Mail tier, historically including limits around external SMTP and IMAP access. If your test fails at AUTH on a Free account, confirm in Zoho's current plan documentation that SMTP client access is included before debugging further.

Should I use Zoho Mail SMTP or ZeptoMail for my application?

Use Zoho Mail SMTP when you send as a real mailbox at low volume (password resets from a small site, replies, internal notifications). Use ZeptoMail when an application generates higher-volume transactional email such as receipts and account confirmations, since it offers dedicated sending infrastructure and higher throughput rather than mailbox-level limits.

Zoho Mail rejected my message with a sending limit error. What now?

You have hit the daily sending limit for your plan, or a per-message recipient cap. Wait for the limit window to reset, reduce recipients per message, or move high-volume sending to a transactional provider. Zoho Mail is designed for mailbox-level use, not bulk delivery.

Where to go next

Try it on your own server

Run these settings against your SMTP server and watch the live, credential-redacted protocol transcript.

Open SMTP Tester