Zoho Mail

Pair Zoho Mail with Webflow for custom-domain email and form delivery.

→
↗
►
↓
←
↑
Install app
→
↗
►
↓
←
↑
View website
→
↗
►
↓
←
↑
View lesson
→
↗
►
↓
←
↑
A record settings
→
↗
►
↓
←
↑
CNAME record settings
Zoho Mail

Webflow runs your site but not your mailboxes. Its hosting overview states plainly that Webflow does not provide email hosting services, and that you keep your existing email host or set up a new one with any provider. Webflow will still deliver form notifications to an address there. Zoho Mail fills that gap for a site that launches with a contact form and needs an address such as hello@yourdomain.com.

The integration gives teammates domain-based inboxes and connects Webflow form activity to email.

Freelancers and agencies can provision email for client sites, while founders can centralize contact-form leads in a shared inbox. The API path supports advanced delivery requirements.

How to integrate Zoho Mail with Webflow

What is Zoho Mail? Zoho Mail is a business email service with custom-domain addresses for every user in an organization. Admins manage domains and users from the Admin Console. It also exposes a REST API, outgoing webhooks, and connectors for Zapier, Make, and IFTTT.

Teams pair the two when a Webflow site and its email need to live on one domain. Zoho Mail handles notifications and team email; ZeptoMail is the Zoho product for transactional sending such as receipts and one-time codes.

The Zoho Mail-Webflow integration supports 3 approaches:

  • DNS records and form settings connect your Webflow domain to Zoho Mail and route form notifications to a Zoho inbox without writing code.
  • Zapier, Make, IFTTT, viaSocket, and Zoho Flow let you send Zoho Mail emails from Webflow form, order, and Webflow CMS events, and create CMS items from incoming mail.
  • The Webflow Data API and Zoho Mail APIs give you full control over webhook handling, attachments, and data-center routing, but require server-side development.

Most implementations combine two or more of these methods depending on the complexity of the setup.

Connect your Webflow domain and forms to Zoho Mail

Email delivery depends on DNS at your provider, while each form's notification settings determine the recipient. This setup uses settings at your DNS provider and in Webflow, with no custom code or paid automation platform required. You need a paid Site plan to connect a custom domain, and a Zoho Mail organization with your domain added.

Add Zoho Mail MX, SPF, and DKIM records for your Webflow domain

Your registrar or DNS host stores the DNS records. Webflow does not store them. Webflow's article on domain error statuses says only Webflow's own values should appear as the A and CNAME records for your root domain and subdomains; it places no constraint on MX or email TXT records, which sit alongside them untouched. Zoho supports Domain Connect one-click verification for domains at IONOS by 1&1, GoDaddy and Cloudflare, and its Cloudflare DNS walkthrough is the provider-specific guide for sites on Cloudflare-managed DNS.

To set up email delivery:

  1. In Webflow, open Site settings > Publishing > Production and confirm your current hosting records. Webflow's current set is an A record at @ pointing to 198.202.211.1, a CNAME at www pointing to cdn.webflow.com, and a TXT record at _webflow whose value begins one-time-verification=, per the custom domain guide. A site created before April 21, 2025 may still show two A records instead, so read the values in Site settings rather than copying them from anywhere else.
  2. In the Zoho Mail Admin Console, go to Domains > Add, enter your domain, and click Add. Personal Zoho accounts must first click Enable Mailhosting.
  3. Select the domain, click Verify Domain Ownership, and choose the TXT, CNAME or one-click method described in the domain verification guide. Add the record at your DNS provider, then return to the console and verify. Zoho also documents an HTML file method, which you cannot use on Webflow hosting because it needs a zohoverify folder uploaded to your site root.
  4. Open Email Configuration > MX and add the three MX records at your DNS provider. Zoho's reference values are mx.zoho.com at priority 10, mx2.zoho.com at priority 20 and mx3.zoho.com at priority 50, but Zoho states the TLD varies with the data center your organization sits in, so copy the exact hosts from Tools & Configurations in your console instead of typing these, per the configure email delivery guide. Remove any non-Zoho MX records, because an old entry at an equal or lower priority number will keep taking your mail.
  5. Open Email Configuration > SPF and add the TXT record at your DNS provider. Zoho publishes v=spf1 include:zohomail.com -all as the value, or v=spf1 include:one.zoho.com -all if you send through several Zoho services. Click Verify SPF Record once the record is live. Keep exactly one SPF record per domain and fold any other senders into it, as the SPF configuration guide requires.
  6. Open Email Configuration > DKIM and click Add to create a selector, choosing a 1024-bit or 2048-bit key. Copy the generated TXT record and add it at your DNS provider under the name <selector>._domainkey. Click Verify, then set the selector as default and enable DKIM per the DKIM configuration guide.

Both platforms use TXT records, but at different hostnames. Webflow verification uses _webflow. Zoho's hostname depends on the verification method: the TXT method puts the record at @ with a value shaped zoho-verification=zb********.zmverify.zoho.***, where that final TLD again follows your data center, while the CNAME method uses the zb******** string itself as the hostname. SPF usually sits at @, and DKIM sits at <selector>._domainkey. One timing issue affects older sites: since January 13, 2026 a custom domain still pointing at Webflow's legacy records (75.2.70.75, 99.83.190.102, or the proxy-ssl.webflow.com CNAME) cannot publish at all until you migrate your DNS records. Handle that migration before or alongside the Zoho MX change so you can publish form setting updates afterward.

Send Webflow form notifications to a Zoho Mail address

Any email address can receive form notifications, including a Zoho Mail address on your own domain. Recipients are set per form in Webflow, while site-level defaults and stored submissions live in Site settings > Forms. Webflow's guide to adding forms documents both locations.

To route notifications to Zoho Mail:

  1. Select the form on the canvas or in the Navigator and open the Settings panel on the right.
  2. Click the add icon next to Send to and select Email notifications, then click Email notifications again to open its settings.
  3. In the To field, enter your Zoho Mail address, such as leads@yourdomain.com, or pick a Workspace member from the dropdown. Press Return after each address to add another. Click Apply.
  4. For a site-wide default, open Site settings > Forms and fill in the fields under Default form email notifications, including Send form submissions to.

The notification settings include a few behaviors worth knowing:

  • Most fields take variables, but the To field does not: Reply to, Subject and Body all accept form field values, and the site-level defaults also accept {{siteName}}, {{formName}}, {{formData}} and {{formDashboardUrl}}.
  • The submitter is never automatically a recipient: because the To field holds addresses rather than variables, an auto-reply to whoever filled in the form is not something native notifications can do.
  • Starter caps the recipient list: on the free Starter Site plan, notifications go to a maximum of 5 recipients and all of them must be Workspace members, per the Form submissions article.
  • The from address is fixed: you can set a Sender name but not the address the mail comes from, and Webflow sends from one of no-reply@webflow.com, no-reply@webforms.io or no-reply-forms@webflow.com, which the notification troubleshooting article asks you to allowlist.

For external URL posting, the Custom action option cannot be combined with Webflow storage or email notifications, so a form using it is neither stored in Webflow nor emailed by Webflow. Sending from your own domain requires the automation or API methods below.

Connect with Zapier, Make, IFTTT, viaSocket, or Zoho Flow

Zapier, Make, IFTTT, viaSocket and Zoho Flow each connect a Webflow event to a Zoho Mail action without any code on your site. Zapier is the only one that ships ready-made templates for this exact pair, two of them, both firing a Zoho Mail send from a new Webflow form submission. IFTTT and viaSocket publish Webflow and Zoho Mail combination pages you assemble yourself. Zoho Flow lists Webflow and Zoho Mail as separate connected apps rather than publishing a joint page, so you build that pairing in its own workflow builder.

To build the Zapier lead-alert flow:

  1. Open Zapier's template for form submission emails and connect your Webflow site.
  2. Set the trigger to Webflow New Form Submission and pick your form.
  3. Connect Zoho Mail and set the Send Email action. Map To, From, Subject, and Body to form fields.
  4. Submit the form on your live site to test the flow, then turn the Zap on.

Zoho's own Zapier guide covers the Zoho side of the connection. The following pairings are documented across the platforms:

  • Webflow New Form Submission → Zoho Mail Send Email (Zapier template; build it yourself in IFTTT, viaSocket, and Zoho Flow)
  • Webflow New Order or Updated Order → Zoho Mail Send Email (Zapier)
  • Webflow Watch Events webhook → Zoho Mail Send an Email (Make, including CMS item events)
  • Webflow Collection item created or updated → Zoho Mail Send email (Zoho Flow)
  • Zoho Mail New Email → Webflow Create Live Item (Zapier; CMS Collections need a paid Site plan, and reference or multi-reference fields cannot be mapped, per Zapier's Webflow guide. That article still calls it a CMS site plan, a Webflow plan name that no longer exists)
  • Zoho Mail New Email → Webflow Create collection item (build in IFTTT's applet builder)
  • Zoho Mail New Email or New Email Matching Search → Webflow Create Item (build in viaSocket)

Inbound Zoho Mail triggers poll rather than push, so none of these flows is instant in that direction. Make's Watch Emails module takes only messages received in the last 30 minutes, per Zoho's Make guide. IFTTT checks its polling triggers every 5 minutes for Pro and Pro+ accounts and every hour on the free tier. Budget for that lag before you promise anyone a real-time alert off an incoming email.

Build with the Webflow and Zoho Mail APIs

OAuth credentials and webhook verification require a server-side receiver. A Webflow form_submission webhook posts to your endpoint in real time, your code exchanges a Zoho OAuth token, and the Zoho Mail API sends the message from any address in your organization. Zoho Mail has no client-side widget, and browser API calls would expose OAuth credentials.

The following APIs and event sources are available:

  • Zoho Mail API handles sending messages, searching mail, managing folders, and adding organization users
  • Webflow's Data API handles Webflow CMS collection items and form submissions at https://api.webflow.com/v2
  • Webflow webhooks trigger real-time events for 14 triggerType values, including form_submission, collection_item_published, and ecomm_new_order
  • Zoho Mail outgoing webhooks in Settings > Integrations > Developer Space post to your endpoint when an email arrives, with optional filter conditions

Zoho Mail API base URIs differ by data center. Zoho's API getting started page tabulates nine of them: mail.zoho.com, mail.zoho.eu, mail.zoho.in, mail.zoho.com.au, mail.zoho.jp, mail.zohocloud.ca, mail.zoho.com.cn, mail.zoho.ae and mail.zoho.sa. Trust that table over the prose beside it, which still says there are seven. Do not reuse the api_domain value that comes back with an OAuth token here: it names Zoho's general API host, and a Zoho Mail request sent there is rejected as an unknown endpoint. Take the location value from the authorization response and map it to the matching mail.zoho.* base URI instead.

Send a Zoho Mail email from a Webflow form_submission webhook

Webflow signs each real-time form_submission delivery before posting it to your endpoint. The submitted fields become the content for a Zoho Mail send request from your branded address after signature verification.

To implement this:

  1. Register the webhook with the sites:write scope. POST https://api.webflow.com/v2/sites/{site_id}/webhooks with body {"triggerType": "form_submission", "url": "https://your-receiver.example.com/webhook"}. You can also add it in Site settings > Apps & integrations > Webhooks > Add webhook.
  2. Verify each delivery. Read the x-webflow-timestamp and x-webflow-signature headers and compute a SHA-256 HMAC over timestamp + ":" + JSON.stringify(request_body). Reject requests whose timestamp is older than 300,000 ms, per the working with webhooks guide.
  3. Parse the payload. The form_submission event includes name, siteId, formId, submittedAt, a data object of field values, and a schema array with fieldName, fieldType, and fieldElementId.
  4. Get a Zoho token from https://accounts.zoho.com/oauth/v2/token (or your data center's accounts server) with scopes ZohoMail.messages.CREATE and ZohoMail.accounts.READ. Tokens last 3,600 seconds, so cache and refresh them. Create the client at https://api-console.zoho.com per the OAuth guide.
  5. Fetch your accountId with GET https://mail.zoho.com/api/accounts and the header Authorization: Zoho-oauthtoken {access_token}, per the accounts endpoint.
  6. Send the message with the send email endpoint:
POST https://mail.zoho.com/api/accounts/{accountId}/messages
Authorization: Zoho-oauthtoken {access_token}
Content-Type: application/json

{
  "fromAddress": "leads@yourdomain.com",
  "toAddress": "sales@yourdomain.com",
  "subject": "New contact form submission",
  "content": "Name: {data.Name}\nEmail: {data.Email}\nMessage: {data.Message}"
}

Failed deliveries retry up to 3 times at 10-minute intervals, and repeated failures deactivate the webhook and email you about it, so return a 200 quickly and make the Zoho call asynchronously. To include a file, first POST /api/accounts/{accountId}/messages/attachments as multipart form data per the upload attachments endpoint, then pass the returned storeName, attachmentPath, and attachmentName in the send request per the send with attachment endpoint.

Create Webflow CMS items from new Zoho Mail messages

Press mentions or reader questions received by email can become collection items through the Data API.

To implement this:

  1. Get a Zoho token with scopes ZohoMail.messages.READ and ZohoMail.accounts.READ and fetch your accountId from GET /api/accounts.
  2. Poll for new mail with GET https://mail.zoho.com/api/accounts/{accountId}/messages/search?searchKey=newMails&limit=50, per the search emails endpoint, where limit accepts 1 to 200 and defaults to 10. Note that receivedTime is an upper bound, the Unix millisecond time before which emails were received, so it is not a resume marker: keep the newest timestamp you have processed yourself and drop anything at or below it.
  3. Authenticate to Webflow with the cms:write scope from the scopes reference.
  4. Create and publish the item with POST https://api.webflow.com/v2/collections/{collection_id}/items/live and body {"fieldData": {"name": "{email subject}", "slug": "{generated-slug}"}}. Both name and slug are required, and the create live item endpoint returns HTTP 202.
  5. To stage a draft instead, post to /collections/{collection_id}/items without /live. Send either a top-level fieldData object or an items array, never both, or the API returns a 400.

Staged items stay invisible on the live site until you publish. Batch updates through PATCH /collections/{collection_id}/items or /items/live are capped at 100 items per call, per the update items reference.

What you can build with the Zoho Mail Webflow integration

Most of what teams build here is unglamorous and durable: an address on the company domain, and a reliable place for form mail to land once it exists.

  • Branded email on every client site: An agency can provision hello@client.com alongside a Webflow launch. Zoho's CSV import adds up to 200 users at once, so a multi-seat client is one upload rather than a morning of typing.
  • Lead alerts from your own address: A consultancy's contact page fires the Zapier template, and the alert uses leads@yourdomain.com as its sender. The Zap maps the form's Name, Email, and Message fields into the Zoho Mail Send Email action, so the reply thread starts in the same inbox the team already watches.
  • Shared inbox for contact-form triage: A SaaS site routes form notifications to a Zoho shared mailbox such as sales@company.com, so any teammate can claim and answer a lead without forwarding.
  • Order notifications for a Webflow store: An ecommerce site sends new and updated order alerts to a Zoho Mail fulfillment address through Zapier's New Order and Updated Order triggers. The Process and manage orders article points to Zapier for routing order emails to other apps.

Use the API path when sender verification or the API requirements above rule out an automation platform. If the problem is the notification email itself rather than where it lands, see customizing notification emails.

Frequently asked questions

  • Yes. Zoho Mail works with any domain whose DNS you can edit, and Webflow does not host email, so the two never contend for the same records. You keep Webflow's A and CNAME records pointing the website at Webflow, and add Zoho's verification, MX, SPF and DKIM records for the mail, all in the same DNS zone at your registrar.

  • Add them at your registrar or DNS host, never in Webflow, which does not store them. Zoho's add domains guide covers verification, MX, SPF, DKIM and DMARC in one place, and the MX hosts it shows are specific to the data center your organization sits in. Changes can take 12 to 24 hours to propagate when TTLs are high.

  • No. Webflow's native notifications always send from a Webflow no-reply address, and the SMTP integrations page lists alternatives. To send from your own domain, use an automation platform or a server-side call configured with Zoho's SMTP settings: paid organization users on a domain-based address use smtppro.zoho.com on port 465 for SSL or 587 for TLS.

  • No. There is no Zoho Mail listing in the Webflow Marketplace. The one Zoho listing we can find is Zoho Flow, Zoho's own integration platform, which carries Webflow's Approved by Webflow review label; note that Webflow states the label means it reviewed the app, not that it endorses or certifies it. Zoho Mail's own integrations page does not name Webflow either. Email automation therefore runs through Zoho Flow, Zapier, Make, IFTTT or viaSocket, or through direct API calls. The Code Embed element is no help here, because Zoho Mail ships no embeddable inbox widget.

  • Use the base URI for your organization's data center, not the api_domain returned alongside your OAuth token, which points at Zoho's general API host rather than Zoho Mail. Take the location value from the authorization response, documented in Zoho's multi-DC client authorization guide, and map it to the matching mail.zoho.* host. Register your OAuth client at api-console.zoho.com before the first token request.

Zoho Mail
Zoho Mail
Joined in

Description

Run custom-domain Zoho Mail on a Webflow-hosted domain and route form submissions through native settings, automations, or APIs.

→
↗
►
↓
←
↑
Install app

This integration page is provided for informational and convenience purposes only.


Other Email hosting services integrations

Other Email hosting services integrations

Neo Mail

Neo Mail

Connect Neo Mail with Webflow to run branded mailboxes on your custom domain and route form leads to a Neo inbox.

Email hosting services
Learn more
SMTP

SMTP

Send Webflow form and order email through SMTP.com so each message leaves from your own SPF-authorized and DKIM-signed domain. Webflow's native notifications keep sending from a fixed webflow.com address unless you remove that destination.

Email hosting services
Learn more
Gmail

Gmail

Connect Gmail, Google's email and communication platform, with Webflow to route form submissions to inboxes, send branded confirmation emails, and trigger multi-step workflows across your marketing stack.

Email hosting services
Learn more

Related integrations

No items found.

Get started for free

Try Webflow for as long as you like with our free Starter plan. Purchase a paid Site plan to publish, host, and unlock additional features.

Get started — it’s free