Skip to content
Email Tools

guide · Email Clients

Zoho Mail Custom Domain Setup: Verify, MX, SPF and DKIM

Set up a custom domain on Zoho Mail the way it really works: add and verify the domain in the Admin Console, point MX records to Zoho, then add SPF and DKIM for deliverability — with the free-plan limits that bite.

Alexis Dollé By Alexis Dollé · ·
Zoho Mail Custom Domain Setup: Verify, MX, SPF and DKIM

An address on a provider’s shared domain is a rental — leave the provider and the address dies with it. A custom domain on Zoho Mail makes the address yours, hosted on a registrar you control. I added one of my own domains to Zoho Mail and walked the full path: add the domain in the Admin Console, verify ownership, point the MX records, then wire up SPF and DKIM so mail actually lands. Here is exactly how each step works, the free-plan limits that trip people up, and how to fix it when mail does not arrive yet.


Why a Custom Domain on Zoho

A custom domain means your Zoho Mail address ends in a domain you own, such as you@yourname.com, instead of a Zoho shared domain. The point is ownership: the address is portable across providers, it carries your brand, and one domain can host multiple users and aliases that all belong to you.

A shared-domain address is convenient until the day you want to leave. Your contacts, logins, and password-reset links are all tied to an address you do not control, so switching providers means changing your address everywhere — a migration most people abandon halfway. A custom domain removes that lock-in. Because the domain lives at your registrar, you can repoint it at any mail host and keep the exact same address.

Zoho is a popular pick for this because its free tier supports a custom domain at all — many providers gate that behind a paid plan. The trade-offs sit elsewhere, in access methods and user count, which the next section covers. But the core win is the same as on any host: the address becomes infrastructure you own, not a feature you borrow. Role addresses like billing@ or hello@, separate mailboxes for a small team, a professional-looking identity — all of it sits on a domain you can carry anywhere.


What You Need First

Two prerequisites: a domain you already own at a registrar, and a Zoho Mail account with admin access. Creating the account itself is a separate step; this walkthrough starts once you are in the Admin Console and ready to attach a domain you control.

The domain comes first. You need a registered domain — bought from any registrar — and access to its DNS settings, because every step here writes records there. If the domain currently points at another mail service, you can still move it; you will just be replacing existing MX and TXT records rather than adding to a blank zone.

The account is the second piece. If you have not created your Zoho Mail account yet, do that first — the full signup flow is covered in the Zoho Mail setup walkthrough, and this guide assumes you are already signed in as an administrator. One plan detail matters before you start: the Forever Free plan supports a custom domain but does not include IMAP or POP, so if you intend to read this mail in a desktop client, you will need a paid plan. The full breakdown of tiers and limits sits in the Zoho Mail pricing guide — worth a look before you commit a domain to the free tier.


Add the Domain in the Admin Console

Sign in to the Zoho Mail Admin Console at mailadmin.zoho.com, open Domains in the left panel, and click the Add button to enter the domain you own. This registers the domain on your account and immediately moves you to the ownership-verification step.

The Admin Console — not the regular webmail — is where domain management lives. To add a domain:

  1. Sign in at mailadmin.zoho.com as an administrator of the account.
  2. Open Domains from the left panel. This is where every domain on your account is listed.
  3. Click Add at the top of the Domains page.
  4. Enter the domain you own at your registrar, exactly as registered.

Per Zoho’s domain-verification help, adding the domain here is what generates your verification record and lets Zoho confirm you actually control it. From this screen the flow moves straight into verification — which is the gate everything else waits on.

A verified custom domain is only useful if you can read the mail comfortably. On a paid Zoho plan, a desktop client like Mailbird connects to your new custom-domain mailbox over IMAP, so your own-domain inbox lives on your desktop instead of only in a browser tab — note this needs a paid plan, since Zoho’s free tier excludes IMAP entirely.

Verify Domain Ownership

Zoho offers three ways to prove you own the domain: add a TXT record (format zoho-verification=zb-xxxx) at your DNS host, add a CNAME record pointing your generated code to zmverify.zoho.com, or upload Zoho’s verifyforzoho.html file to a zohoverify folder on your site. After the record propagates, click Verify.

Verification stops anyone from claiming a domain they do not control, and Zoho gives you three methods so you can use whichever your setup allows:

  • TXT record. Choose “Add a TXT record in the DNS”, copy the generated hash (it looks like zoho-verification=zb-xxxx), and add it as a TXT record at your DNS host. Return and click Verify TXT record. This is the most common route.
  • CNAME record. Choose the CNAME method, copy the generated code, and create a CNAME record whose name is that code and whose target is zmverify.zoho.com. Verify once it propagates.
  • HTML file. Download verifyforzoho.html, create a zohoverify folder in your website’s root, upload the file there, then click Verify. Useful when you control the website but not the DNS directly.

All three need DNS or hosting changes that take time to propagate — Zoho notes typically one to two hours. If verification fails immediately, it usually has not propagated yet; wait and re-check rather than assuming the record is wrong.


Point the MX Records

At your DNS host, set Zoho’s three MX records and remove any others: mx.zoho.com at priority 10, mx2.zoho.com at priority 20, and mx3.zoho.com at priority 50. These should be the only MX records on the domain so all incoming mail routes to Zoho.

MX records are what actually deliver mail to your Zoho mailboxes. Per Zoho’s email-delivery help, the generic configuration is three records:

HostnamePriority
mx.zoho.com10
mx2.zoho.com20
mx3.zoho.com50

Two things matter here. First, these should be the only MX records on the domain — leftover MX entries from a previous host are the single most common reason mail splits or goes missing, so delete the strays. Second, Zoho explicitly warns that the exact hostnames can differ by data-center region (its EU, India, China and other regions use different servers). Always confirm the precise values shown in your Admin Console rather than copying any table — including this one — verbatim. The priorities tell receiving servers which host to try first; lower number, higher priority.


Add SPF and DKIM

Add an SPF TXT record at host @ with the value v=spf1 include:zoho.com -all so receivers trust mail from Zoho. Then generate a DKIM key under Domains, Email Configuration, DKIM in the Admin Console and publish the generated TXT value at selector._domainkey.yourdomain.com to sign your outgoing mail.

MX records make mail arrive; SPF and DKIM make your outgoing mail trusted instead of dumped in spam. Both are TXT records, and both are worth doing the same day you set up the domain:

  • SPF. Add a single TXT record at host @ with the value v=spf1 include:zoho.com -all. This tells receiving servers that Zoho is authorised to send mail for your domain, so your messages are not flagged as spoofed. If you send through multiple Zoho services, Zoho also offers an include:one.zoho.com variant.
  • DKIM. In the Admin Console, open Domains, select your domain, go to the Email Configuration tab, and choose DKIM. Click Add to create a selector (Zoho uses zoho as the example name), and Zoho generates a TXT value. Publish that value as a TXT record at selector._domainkey.yourdomain.com, then return to the console to activate it. DKIM cryptographically signs your mail so receivers can confirm it really came from you.

A third record, DMARC, builds on top of SPF and DKIM to tell receivers how to handle mail that fails authentication. It is optional to start — add it as a TXT record once SPF and DKIM both verify, beginning with a p=none policy and tightening later. Together, these records are the difference between landing in the inbox and landing in spam.


Create Addresses and Aliases

Once the domain verifies and DNS is live, add users under the Users section to create mailboxes on the custom domain, and add aliases for role addresses such as billing@ or hello@. The free plan caps you at five users; paid plans lift the cap and add IMAP and POP for desktop clients.

A verified domain with working DNS is ready for addresses. Your first mailbox — you@yourdomain.com — is created when you add yourself or another user under the Users section of the Admin Console. From there:

  • Users are full mailboxes. On the Forever Free plan you can create up to five, each with 5 GB of storage, all on your custom domain. That is genuinely enough for a small team or family.
  • Aliases are alternate addresses that land in an existing mailbox — spin up billing@, hello@, or support@ to separate roles without burning a user slot, much the same idea as an alias setup on Gmail.

The honest constraint is access, not address count. The free plan’s mailboxes are reachable only through Zoho’s web and mobile apps. To read your custom-domain mail in a desktop client over IMAP, you need a paid plan — the same reason the CTA above flags it. Decide that before you build out five users on the free tier and then find you cannot connect them to Outlook or Mailbird.


When Mail Does Not Arrive

If mail is not arriving yet, the cause is almost always DNS. Verification and MX changes need time to propagate — Zoho notes one to two hours — before servers see them. Confirm Zoho’s three MX records are the only ones on the domain, that no stale records remain, and re-check in the Admin Console until each reads as configured.

A custom domain has a handful of honest failure modes, and nearly all trace back to DNS. Knowing them stops you from declaring the setup broken when it is simply mid-propagation:

  • Records have not propagated. DNS changes are not instant. Zoho’s own estimate is one to two hours for verification and MX records to take effect, so a record you just saved may not work immediately. Wait and re-check before assuming failure.
  • Leftover MX records from an old host. If the domain previously sent mail elsewhere, old MX records may still be present, splitting delivery away from Zoho. Zoho’s three MX records should be the only ones on the domain — delete the rest.
  • Region-mismatched MX hostnames. Because Zoho’s MX values differ by data center, copying a generic table can point you at the wrong servers. Use the exact hostnames your Admin Console displays.
  • A mistyped SPF or DKIM value. One wrong character breaks authentication silently and sends your mail to spam. Re-copy the values from the console rather than retyping them.

When in doubt, return to the Admin Console’s Domains screen. It reports the status of each expected record and tells you which one is missing or wrong far faster than testing by sending yourself messages and waiting to see what bounces.


Verdict

Setting up a custom domain on Zoho Mail comes down to four moves: add and verify the domain in the Admin Console, point the three MX records, then add SPF and DKIM. The free plan supports the domain itself but not IMAP or POP — the one limit that decides whether you can stay free.

Best for: anyone who wants an owned, portable email address without paying upfront. Zoho is one of the few hosts whose free tier supports a custom domain at all — up to five users at 5 GB each, on a domain you control. For a small team that lives in webmail and mobile apps, that is a genuinely strong free package.

Skip if: you need to read mail in a desktop client. The free plan excludes IMAP, POP and Active Sync, so if Outlook, Thunderbird, or a Windows email client is non-negotiable, you are on a paid plan from day one — at which point Zoho competes with everyone else rather than winning on price. Also skip the free tier if you are outside its supported data-center regions.

Start in the Admin Console, verify with whichever method your DNS allows, point the MX records carefully — confirming the region-correct hostnames — then add SPF and DKIM the same day. The result is an email identity that survives any future move, which, once you have it, is hard to give up.

Alexis Dollé, founder of Email Tools
Alexis Dollé
Founder & Editor

Alexis Dollé, email expert for 10+ years. Founder of Email Tools. I test every email client and utility myself, then write about them the way I’d explain them to a friend — no marketing fluff, no sponsored rankings, every claim sourced.

LinkedIn

Sources & references
  1. Zoho Mail Admin Help, “Add and verify your domain” — the Admin Console Domains page and +Add button, plus the three ownership-verification methods: a TXT record (zoho-verification=zb-xxxx), a CNAME record pointing to zmverify.zoho.com, or the verifyforzoho.html file. Accessed 2026-06-20. zoho.com — Domain verification
  2. Zoho Mail Admin Help, “Configure email delivery / MX records” — the three MX records mx.zoho.com (priority 10), mx2.zoho.com (priority 20) and mx3.zoho.com (priority 50), with the note that region-specific values can differ. Accessed 2026-06-20. zoho.com — Configure email delivery
  3. Zoho Mail Admin Help, “SPF and DKIM configuration” — the SPF TXT value v=spf1 include:zoho.com -all at host @, and DKIM generated under Domains → Email Configuration → DKIM and published as a TXT record at selector._domainkey. Accessed 2026-06-20. zoho.com — SPF configuration
  4. Zoho Mail pricing — the Forever Free plan: up to 5 users, 5 GB mail storage per user, custom-domain address supported, IMAP/POP/Active Sync not included, available only in certain data centers. Accessed 2026-06-20. zoho.com — Zoho Mail pricing

Frequently Asked Questions

How do I add a custom domain to Zoho Mail?

Sign in to the Admin Console at mailadmin.zoho.com, open Domains in the left panel, and click Add to enter the domain you own. Zoho then asks you to verify ownership with a TXT record, a CNAME record pointing to zmverify.zoho.com, or an uploaded HTML file. After verification, point the MX records to mx.zoho.com, mx2.zoho.com and mx3.zoho.com, then add SPF and DKIM. Account signup itself is covered separately in the Zoho Mail setup walkthrough.

What MX records does Zoho Mail use for a custom domain?

Zoho’s generic configuration uses three MX records: mx.zoho.com at priority 10, mx2.zoho.com at priority 20, and mx3.zoho.com at priority 50. These should be the only MX records on the domain so mail does not split to an old host. Zoho notes the exact values can differ by data-center region (EU, IN, CN and others), so confirm the hostnames shown in your own Admin Console rather than copying them blind.

Does the Zoho Mail free plan support a custom domain?

Yes. Zoho’s Forever Free plan supports a custom email address on a domain you own, for up to five users with 5 GB of mail storage each. The catch is access: the free plan does not include IMAP, POP or Active Sync, so you read mail only through Zoho’s web and mobile apps — not a desktop client. The free tier is also available only in certain data centers.

What SPF and DKIM records should I add for Zoho Mail?

For SPF, add a TXT record at host @ with the value v=spf1 include:zoho.com -all, which authorises Zoho to send mail for your domain. For DKIM, generate a key in the Admin Console under Domains, Email Configuration, DKIM, then publish the generated value as a TXT record at selector._domainkey.yourdomain.com. SPF stops your mail being flagged as spoofed; DKIM signs it so receivers trust it.

Why is my Zoho custom domain not receiving mail yet?

Almost always DNS. Verification and MX changes need time to propagate before Zoho and sending servers see them, and Zoho notes propagation typically takes one to two hours. Confirm Zoho’s three MX records are the only ones on the domain, that no stale records from a previous host remain, and that the verification TXT or CNAME matches exactly. Re-check in the Admin Console until each record reads as configured.

Can I keep my Zoho custom domain if I switch providers?

Yes — that is the main reason to use one. Because you own the domain at your registrar, the address is portable: if you move off Zoho, you repoint the MX, SPF and DKIM records at the new host and keep the same address. An address on a provider’s shared domain disappears when you leave; an address on your own domain follows you to any host.


Related: How to set up Zoho Mail — the full account walkthrough before you add a domain. Zoho Mail pricing — every tier and limit, including which plans add IMAP. Fastmail custom domain setup — the same job on another provider.