Zoho CRM7 min read

Zoho CRM Email Deliverability: Why Leads Do Not Get Your Follow-Ups

Zoho offers several sending paths — ZeptoMail, Zoho Mail, custom SMTP, IMAP relay — and each one has a different deliverability profile. Test the path you actually use before you blame the template.

Zoho CRM's email setup is more configurable than any comparable CRM — and that is precisely where the deliverability problems start. The same follow-up email can leave your CRM through four entirely different sending paths, depending on how a given user's account is configured. Each path has a different authentication profile, a different sending IP, and a different placement outcome. Reps assume "email sent" means the message arrived. Often it did not.

The fix is not to switch CRMs — Zoho is a capable platform. The fix is to know which path you are actually using, verify authentication for that specific path, and seed-test placement before you scale an outreach cycle.

The four sending paths in Zoho CRM

When a user sends an email from Zoho CRM — from a lead record, from a deal, from Cadences, from a campaign — one of four transport mechanisms carries it:

  • ZeptoMail (transactional). Zoho's own transactional ESP. High deliverability for transactional flows, strict policy against marketing or bulk. DKIM is configured via CNAME selectors on your sending domain.
  • Zoho Mail (hosted inbox). If the user's primary email is hosted on Zoho Mail, CRM sends as that user through Zoho Mail's own MTA. Authentication ties back to your Zoho Mail domain verification.
  • IMAP/SMTP connection to a third-party inbox. User connects their Gmail, Microsoft 365, or another SMTP server. Outbound sends traverse that provider's infrastructure with that provider's authentication.
  • OAuth connection to Gmail or Microsoft 365. The cleaner variant of the above. Zoho uses the provider's API to send, messages appear in the user's Sent folder, and authentication inherits from the connected account.

The paths are not interchangeable for deliverability purposes. A DKIM setup that works for ZeptoMail does not cover the case where a rep is sending through their connected Gmail. Teams routinely configure one path and assume it blankets the others.

First diagnostic question

Open the raw headers of a recent outbound message from Zoho CRM. Look at Received: and the DKIM-Signature. If the signing host is zeptomail.zoho.com, you are on ZeptoMail. If it is .google.com, you are on connected Gmail. If it is .outlook.com, Microsoft 365. That tells you which authentication chain you actually need to fix.

From, Reply-To, and the alignment trap

The most common Zoho CRM deliverability bug is a misalignment between the From header, the Reply-To, and the envelope sender. Here is how it happens:

  1. The rep uses their personal company address in the Fromanna@your-corp.com.
  2. Zoho CRM, because the user did not connect a mailbox, falls back to sending via ZeptoMail under a different envelope sender (MAIL FROM).
  3. DKIM signs as ZeptoMail's configured selector — fine.
  4. But the From domain DMARC policy is p=reject, and ZeptoMail's signing was never explicitly authorised under your domain's DMARC alignment. Placement crashes.

The whole chain needs to line up. Either the sending path must be fully aligned with the From domain (DKIM signs under your-corp.com, envelope sender subdomain is under your-corp.com), or the From has to use a subdomain that is explicitly delegated to the sending platform.

Why Zoho CRM follow-ups land in Promotions specifically

Beyond authentication, Zoho CRM follow-ups have specific content patterns that Gmail Promotions flags:

  • Open-tracking pixel on low-engagement threads. A one-line follow-up ("just checking in") with a tracking pixel has a pixel-to-text ratio that looks bulk-like. Gmail pushes these to Promotions.
  • Link tracking through a shared Zoho domain. Unbranded link tracking domains have accumulated spam scores from every Zoho customer who ever used them. Moving to a branded tracking domain measurably improves Gmail placement.
  • Auto-appended unsubscribe footer on 1:1 email. If Zoho's campaign module is mis-wired to append a marketing-style unsubscribe footer to sales follow-ups, the messages trip Gmail's "bulk" classifier even at single-recipient volume.
  • Image-heavy signatures. Logo + headshot + social icons in a three-line follow-up inverts the image-to-text ratio. Strip to plain text for first touches.
CRM integration in beta

A native integration for leading CRMs is in private beta — placement tests inside the CRM, alerts on drops.

→ Join the beta waitlist

Seed testing the path you actually use

The placement test has to fire through the same sending path your real outbound uses. A test that leaves via ZeptoMail when your reps are sending via connected Gmail is measuring the wrong surface.

Setup

  1. Identify, per user, which path that user is sending on. Zoho's email configuration page tells you, or the header of a recent sent message confirms.
  2. Take a real outbound template from that user's current Cadence or deal workflow, rendered with real merge fields.
  3. Send the message from the user's actual CRM path to a seed set covering Gmail personal, Gmail Workspace, Outlook.com, Microsoft 365, and any regional providers your prospects use.
  4. Record inbox vs Promotions vs Junk per provider per user.

Cadence

Monthly for every active sending user. Plus triggered tests when a user changes their connected inbox, when a new template is rolled out team-wide, or when outbound performance drops more than twenty percent week-over-week.

A pragmatic remediation order

When a seed test comes back bad, fix in this order — cheapest and highest-impact first:

1. Authentication
   - Verify SPF for the actual sending path.
   - Verify DKIM for the actual sending path.
   - Verify DMARC alignment.

2. Content
   - Strip signature images from first-touch templates.
   - Disable open tracking for first-touch emails.
   - Reduce link count to 0 or 1 on the first send.

3. Infrastructure
   - Move to branded link-tracking domain.
   - If using ZeptoMail, verify your domain is in good standing.
   - If using connected Gmail/O365, audit that user's warm-up history.

4. Template rewrite
   - Only after 1-3 are clean is there value in A/B testing copy.

FAQ

How do I tell whether my CRM is sending via ZeptoMail or via the user's connected inbox?

Open Zoho CRM email settings for the user and look at "Email Configuration" or equivalent. If no personal mailbox is connected, Zoho typically falls back to ZeptoMail (or Zoho Mail if hosted there). The authoritative answer is always in the raw headers of a recent sent message — the Received: chain does not lie.

Does Zoho's Cadences module use a different sending path from 1:1 email?

Not inherently — Cadences sends through whichever path the individual user has configured, same as ad-hoc 1:1 email. The volume and pattern differ (scheduled, multi-step), but the transport is the same.

Should we use ZeptoMail for sales outreach or only for transactional?

ZeptoMail's terms explicitly restrict it to transactional traffic. Using it for sales outreach is a policy violation that will eventually get your account suspended. For sales, send through the rep's connected inbox or use a platform designed for sales outreach.

Our Zoho Mail domain is verified — does that fix DKIM for CRM emails?

Only for the subset of users whose CRM email is actually routed through Zoho Mail. Users on connected Gmail or Microsoft 365 inherit DKIM from their provider, not from Zoho Mail's configuration. Verify each path separately.
Related reading

Check your deliverability across 20+ providers

Gmail, Outlook, Yahoo, Mail.ru, Yandex, GMX, ProtonMail and more. Real inbox screenshots, SPF/DKIM/DMARC, spam engine verdicts. Free, no signup.

Run Free Test →

Unlimited tests · 20+ seed mailboxes · Live results · No account required