Cloudflare Email Routing lets you create custom email addresses that forward to your existing inboxes, all for free.

Let’s say you own example.com and want an email address like info@example.com that forwards to your personal Gmail, your.name@gmail.com. Cloudflare makes this a reality without needing a dedicated email server.

Here’s how it works in practice.

First, you need to add your domain to Cloudflare if you haven’t already. Once your domain is active and using Cloudflare’s nameservers, navigate to the "Email" tab in your Cloudflare dashboard.

Click on "Email Routing" and then "Create a Custom Email Address."

You’ll be presented with two fields:

  1. Custom Address: This is the part before the @ symbol for your new forwarding address. For our example, you’d enter info.
  2. Forwarding Address: This is the existing email address where you want the emails to be delivered. Here, you’d put your.name@gmail.com.

After you click "Create," Cloudflare will prompt you to verify that you own the destination email address. An email will be sent to your.name@gmail.com with a verification link. Click that link.

Once verified, any email sent to info@example.com will be routed through Cloudflare and delivered to your.name@gmail.com. It’s that simple.

But there’s more under the hood. Cloudflare doesn’t just proxy the emails; it handles the DNS records required for this to work. When you set up Email Routing, Cloudflare automatically creates or modifies the necessary MX (Mail Exchanger) and TXT records for your domain.

The MX records tell other mail servers where to send email for your domain. Cloudflare’s MX records point to their own mail servers, which then receive the incoming email.

The TXT records, specifically SPF (Sender Policy Framework) records, are crucial for email deliverability. Cloudflare adds an include:_spf.mx.cloudflare.net to your domain’s TXT record. This tells receiving mail servers that Cloudflare’s servers are authorized to send email on behalf of your domain, preventing your forwarded emails from being marked as spam.

You can see these records in the "DNS" section of your Cloudflare dashboard. For example, your MX records might look like this:

Type Name Mail Server Priority TTL
MX example.com example.com.mx.cloudflare.net 10 Auto
MX example.com example.com.mx.cloudflare.net 20 Auto

And your TXT record for SPF might be:

Type Name Content TTL
TXT example.com "v=spf1 include:_spf.mx.cloudflare.net ~all" Auto

The "Priority" in MX records determines the order in which mail servers are tried. Lower numbers mean higher priority. Cloudflare uses multiple MX records for redundancy. The ~all in the SPF record means that emails from servers not listed are treated as "soft fail" – they might still be delivered but are more likely to be marked as spam.

This setup allows you to create a professional-looking email address for your business or personal branding without the cost and complexity of managing your own mail server or paying for a separate email hosting service. You can create multiple custom addresses, like sales@example.com, support@example.com, all forwarding to the same or different existing inboxes.

One subtle but powerful aspect is the ability to use wildcard forwarding. If you set up *@example.com to forward to your.name@gmail.com, any email sent to an unspecified address at example.com (e.g., random_user_123@example.com) will be routed to your Gmail. This is incredibly useful for testing or for capturing emails sent to potential typos.

The biggest limitation, and something to be aware of, is that Cloudflare Email Routing is a forwarding service only. It cannot send emails from your custom domain address. When you reply to an email that was forwarded by Cloudflare, your reply will appear to come from your personal forwarding address (your.name@gmail.com), not info@example.com. To send emails from your custom domain, you would need a full email hosting solution.

If you need to send emails from your custom domain, you’ll need to look into services like Google Workspace, Microsoft 365, or Zoho Mail, and configure your domain’s MX records to point to those services instead of Cloudflare’s Email Routing.

Want structured learning?

Take the full Cloudflare course →