Create Accountor Login

Email Delivery for Cloudflare

Send WordPress Email Through Cloudflare

MountDev Email Delivery for Cloudflare is a free plugin that hands every email WordPress sends to Cloudflare Email Service, so your web server no longer does the sending. It takes over wp_mail, which means core notices and messages from other plugins all go out over an authenticated connection.

What makes it different

  • One provider, not twenty
  • Free with nothing held back
  • Honest about the beta
  • No snippets in functions.php
  • Your log, your database
  • Built by people who run sites

In detail

What each part actually does

One decision shapes the whole plugin: it replaces the WordPress mail function itself rather than patching one plugin at a time.

It replaces wp_mail

Password resets, comment notifications, order receipts, form submissions and plugin alerts all take the same authenticated route, because they all call wp_mail underneath.

You do not configure WooCommerce separately, and you do not configure your form plugin separately. Anything built on the standard mail function is covered.

The connection itself

Sending goes through Cloudflare’s Email Sending API over HTTPS, using your Cloudflare Account ID and an API token. There is no SMTP host, port or username to set.

The token is encrypted with AES-256 before it is saved. Configure it once and every message afterward goes out against your own Cloudflare account rather than whatever your host happens to permit.

Sender identity you set once

WordPress ships with a generic sender name and address that rarely matches anyone’s brand, and plugins inherit it. The usual fix is a snippet in the theme functions file, which works until the theme updates and the snippet disappears with it.

Here the from name and address live in the plugin settings and apply across the site.

A send log in your own database

Every message is recorded with recipients, subject, body, headers, timestamp, delivery status and Cloudflare’s response. That answers the question you actually have when someone says an email never arrived: did it leave, and when.

The log is a table in your own WordPress database. It is not pushed to a hosted dashboard.

Retention you control

Entries can be kept for 7, 14, 30, 60, 90, 180 or 365 days, or forever, with 30 days as the default and a cleanup button that applies the setting immediately.

It is a trade: enough history to settle a dispute, without a table that grows unchecked and turns up later as a backup that has doubled in size.

A test send

Setup fails in predictable ways, so the plugin includes a test send to prove the credentials and sender identity work before real mail depends on them.

Your Cloudflare account, your log. Delivery runs against your own account at Cloudflare’s rates, and the record of what was sent stays in your database rather than on a dashboard of ours.

What you get

What the Email Delivery for Cloudflare plugin includes

All 7 of these ship in the free plugin, which you install and run yourself.

Messaging

  • Replaces wp_mail completely
  • Cloudflare Email Sending API
  • Custom from address
  • Custom from name, used even when another plugin sets its own
  • Test send and verification

Data and records

  • Full email log
  • Log retention controls

Ready to install Email Delivery for Cloudflare?

It takes a few minutes to install yourself, and the setup guide covers each step.

This plugin compared with a general purpose SMTP plugin

A general SMTP plugin talks to every provider, which helps while you are still deciding. After you settle on Cloudflare, all that extra range turns into settings you never touch.

What to compareHow it works here
Cloudflare setup vs generic SMTP formThe settings screen asks only for what Cloudflare needs, right down to the token username it expects.
Free in full vs free tier with upsellWith many SMTP plugins the log, the second sender or the fallback route needs a paid license, so the free copy is really a trial. Here nothing is held back.
Log in your database vs external dashboardThe log stays in your own database. Tools that ship it to a hosted dashboard add an account, a login, and a copy of your email metadata on a server you do not control.
Retention setting vs unbounded growthYou choose how long entries are kept. Without that control the table keeps growing, and people usually notice when a backup of their busiest site has doubled in size.
Test send built in vs deploy and hopeA test send runs from the settings screen during setup. Skip that step and the first sign of trouble is a customer whose password reset never arrived.
Named requirements vs vague promisesWe state it plainly: nothing sends until you have a Workers Paid plan and a domain onboarded for sending.

Cost

What it costs

The plugin is free. Delivery runs on your own Cloudflare account rather than through us.

The plugin

Free on WordPress.org, with no per site license. Install it wherever you need it.

Your Cloudflare account

Sending goes through your own account at Cloudflare’s rates. We never resell delivery, so there is no margin added between your site and the mail leaving it.

Your hosting

It runs inside the WordPress site you already pay to host, with nothing extra to stand up.

If you would rather hand the whole thing over, managed email delivery is one of our services, separate from this plugin.

Who Email Delivery for Cloudflare is for

Sites already running on Cloudflare Workers

Your DNS already lives on Cloudflare, your Workers run there, and you pay for the plan. Adding a separate email vendor would mean another bill, another API key and another dashboard.

Get started

WooCommerce stores losing order receipts

Customers notice when a receipt or shipping notice fails to arrive, and unauthenticated mail from the host is where those messages usually go missing. Sending wp_mail through an authenticated service takes care of delivery.

Get started

Agencies standardizing a fleet of sites

Putting one provider and one settings screen across many sites is far simpler than juggling twenty. Every site gets the same configuration, the log is in the same place everywhere, and no site needs its own license key.

Get started

How to get started

1. Get your Cloudflare account ready

WordPress comes later. First you need a Cloudflare account on the Workers Paid plan, your sending domain onboarded for Email Sending, and an API token that is allowed to send. The plugin cannot do any of this for you, which is why most setup trouble starts at this step.

Get started

2. Install and connect the plugin

Install the plugin from the Plugin Directory, activate it and open its settings screen. Add your Cloudflare Account ID, then paste in the API token.

Get started

3. Run a test send and check the log

Send a test message from the settings screen. When it lands, wp_mail is running through Cloudflare, and every plugin on the site picks that up right away.

Get started

Free on WordPress.org

MountDev Email Delivery for Cloudflare

Find it in the WordPress plugin directory, or search for it from your own dashboard under Plugins, Add New. The plugin is free, licensed under the GPL and published by Cascadia Web Services.

Documentation

Setup, the Cloudflare credentials, sender identity, the send log and retention, the test send, and when a different plugin is the better answer.

Read the documentation

Ready to get started?

Three steps. Only the first needs any real thought.

What clients say about working with Cascadia

“I’ve always dreaded website management, but Cascadia has done an incredible job with my WordPress site, making it one less thing for me to worry about.”
Alex R.Cascadia client

Questions about Email Delivery for Cloudflare?

Talk to us

Ask us

Questions we get asked about this plugin

Comparing us with something else? Our comparison pages go through the main alternatives one at a time.

See the comparisons
What does the Email Delivery for Cloudflare plugin actually do?

WordPress stops sending mail from your web server and sends it through Cloudflare Email Service. The plugin takes over the wp_mail function, so core notifications and messages from other plugins all reach Cloudflare through its Email Sending API. It also logs every send, sets one from name and from address for the whole site, and includes a test send so you can confirm the setup.

Is the plugin really free?

Yes. There is no charge, no paid tier, no license key and nothing locked behind an upgrade. It installs from the WordPress Plugin Directory like any other free plugin. The sending service behind it is a different matter, because that belongs to Cloudflare, and the next answer covers it.

Do I need to pay Cloudflare to use it?

Yes, though the payment goes to Cloudflare. Email Sending needs the Cloudflare Workers Paid plan on the account you send from, and the sending domain has to be onboarded for Email Sending on the account that owns your API token. The plugin has no way around either. If you are already on Workers Paid, you have nothing more to buy.

What is Cloudflare Email Service?

It is the email product Cloudflare offers developers, with outbound sending and inbound routing in one service. It is meant for transactional mail such as password resets, order confirmations, verification messages and alerts. Workers can reach it through a native binding, any platform can use its REST API, and there is authenticated SMTP as well. This plugin talks to the REST API, so a normal WordPress site can use it without custom code.

How is this different from Cloudflare Email Routing?

Email Routing deals with incoming mail and forwards messages sent to addresses on your domain. Email Sending deals with outgoing mail. Both live under Cloudflare Email Service, but they do opposite jobs. The plugin only handles mail leaving your WordPress site, so you do not need Routing, and turning it on will not make the site send email.

What do I need before I install it?

You need three things: a Cloudflare account on the Workers Paid plan, the domain you plan to send from onboarded for Email Sending on that account, and an API token with send permission. Get them ready first, because the plugin uses them and cannot create them. With the token in hand, setup inside WordPress takes a couple of minutes.

How do I connect the plugin to Cloudflare?

Install and activate it, then open the settings screen. Enter your Cloudflare Account ID, paste the API token, and fill in the from address and from name the site should use. Save, then run the test send. If the test message arrives, WordPress is sending through Cloudflare and setup is finished.

Will it cover emails from WooCommerce, Contact Form 7, and other plugins?

Yes, provided the plugin uses wp_mail, and nearly all of them do. Since this plugin replaces wp_mail itself instead of hooking into plugins one by one, anything built on the standard WordPress mail function is covered as soon as you activate it. The exception is the rare plugin that opens its own connection and skips wp_mail altogether.

Why are my WordPress emails not sending in the first place?

Many shared hosts block outbound mail, or send it unauthenticated from an IP address with no reputation. A mailbox provider then sees a message that claims to be from your domain with nothing to back it up, and it drops the message or files it as spam. No error appears anywhere, so the site looks healthy while receipts and password resets quietly vanish.

What does the email log record?

Every entry records the recipient, the subject, when the message went out and the delivery status returned by the send. That answers the usual question: did it leave, and when? When a customer says a receipt never came, the log tells you right away whether to look at your site or at their inbox.

How long are log entries kept?

As long as you choose. Retention is a setting, so you decide how much history to keep. A quiet site can hold months of entries without trouble, while a busy store sending hundreds of messages a day will want a shorter window, since the log sits in your database and a table that never shrinks makes every backup heavier.

Can I change the from name and from address?

Yes, both, and the setting covers the whole site. WordPress ships with a generic default sender that seldom matches your brand, and plugins usually inherit it. Setting the from address and from name once fixes every message the site sends, without theme edits or a snippet in functions.php that the next update could wipe out.

How do I know the connection actually works?

Run the test send from the settings screen. It sends a real message over the connection you set up and reports what happened. A wrong token, a domain not yet onboarded for sending, or a from address the account may not use will all show up right there, during setup, instead of in a complaint from a customer whose receipt never came.

Is Cloudflare Email Service production ready?

It is still in beta, and Cloudflare says features and APIs may change before general availability. Email Sending entered public beta in April 2026. Plenty of sites use it in production, but make that call with open eyes and do not assume the stability guarantee of a mature product. The email log helps here, because you can watch real delivery results instead of guessing.

Where do I get the plugin, and who supports it?

The plugin is listed in the WordPress Plugin Directory, so you can install it from the Plugins screen in your own admin without downloading anything. Questions about the plugin come to us. Questions about your Cloudflare account, plan, domain onboarding or API tokens go to Cloudflare, because we have no access to anything inside your account.

Ask Us Anything

We’d love to hear from you!