Use a custom domain to send emails with Gmail using Cloudflare email routing
jay.gooby.org
jay.gooby.org
[0] https://blog.cloudflare.com/sending-email-from-workers-with-...
[1] https://github.com/celzero/otp/blob/f6bb5593c5173a2844178638...
[2] https://mailchannels.zendesk.com/hc/en-us/articles/712284923...
If you really want your emails to be delivered to most recipients Inbox – I would not recommend this.
To validate – please go to https://www.mail-tester.com – in 15 seconds it will evaluate and print your email score (you send it a dummy email). The main thing I see with using free gmail as a custom domain proxy SMTP is: It does not do DKIM (email signatures) except for @gmail.com or google workspace accounts. This reduces the sender score by a LOT.
Edit: The same is also true with forwardemail.net or any "incoming" email routing (free or paid). Because incoming email is just one step of using a custom domain. The main thing is the "Outgoing" email server. Unless outgoing email has full DKIM support for your custom domain, your emails are going to struggle reaching the recipient.
-0.5 from SpamAssassin (FREEMAIL_FORGED_FROMDOMAIN & HEADER_FROM_DIFFERENT_DOMAINS) -1 for not being DKIM signed -1 Because Google is in some blacklists
The critical steps, which I think people often gloss over are the SPF (https://jay.gooby.org/2022/05/06/use-a-basic-gmail-account-t...) and DKIM ones (https://jay.gooby.org/2022/05/06/use-a-basic-gmail-account-t...) without these, you'll definitely have deliverability issues.
Further, considering I am regularly inexplicably blocked from accessing websites because they use Cloudflare "protection" (which doesn't like OpenBSD + Firefox strict privacy setting), and considering their recent conduct, there's zero way I'd ever consider using Cloudflare's services regardless of potential usefulness. Not to mention giving up even more control of the internet to these "superpowers" seems like a terrible idea for everyone's sake, IMO.
One thing I don't understand: why can't I pay $100 today and get some kind of proof of ownership for life? Is that just impossible with the domain system as it is?
Because Annual Recurring Revenue (ARR) is everything in this business, and the registries (Verisign etc) are monopolies for a given TLD.
The registrar's minimum cost to hold annual registration on a .com domain is a bit higher than $9.15 ($8.97 to Verisign registry, $0.18 plus accreditation and variable fees to ICANN).
The rest of your registration fee is revenue to the registrar (minus payment processing fees, and plus any upsells).
Registrar pricing is all over the place. GoDaddy used to be low-cost, high upsell. Now they are on the high end of normal pricing (and still high upsell! Don't use GoDaddy!).
A quick survey of .com annual renewal prices:
$ 9.15 Cloudflare
9.73 Porkbun
12.00 Google
14.76 Namecheap
20.17 GoDaddy
NOTE: Cloudflare apparently absorbs the accreditation and variable ICANN fees without passing them on to the customer. These fees total ~$20-45K/yr depending on domain volume -- assume the maximum for Cloudflare. So they are losing a very small amount of money with every domain they register. Loss leader, etc, I'm sure it's a smart marketing write off for them.https://domainnamewire.com/2022/02/10/verisign-announces-ano...
https://www.icann.org/resources/pages/registrar-fees-2018-08...
The "via forwardmail" part is subtle enough that it's not a big deal for me and if you start looking out for it, you'll see it a lot.
EDIT: I was trying out Cloudflare email routing yesterday so I checked one of the test emails I sent. There's no "via Cloudflare" visible, and actually it's sent from smtp.gmail.com so that's probably reputable enough to get high deliverability. All I see in the from field is "abc@mysite.com".
That is you have your MX records pointing to `mx.example.com` in your example.com zone config, and enable the Cloudflare proxying of it (usual orange cloud in the UI).
Now, once it's proxied, Cloudflare returns the IP of their mailserver instead of yours on public lookup, just as they do when returing the IP of a proxied webserver.
So this Cloudflare MX server gets your mail, and then as it knows your 'real' MX server it connects to that server and delivers it to you, maybe adding some header or other on the way.
I don't like the fact they use bog-standard forwarding as it necessitates messing with your SPF records, getting crazy forwarding headers and having to navigate ARC etc.
There just seems to be a cleverer way to do this than just do what everyone else does, and they're generally ahead of the curve technically. Must be something I'm missing.
Define 'properly'.
It's a bog-standard forwarding specifically because this is the only way to have to separate systems to operate.
Gmail doesn't know what `yourdomain.tld`[0] is yours and what if it receives anyhting to *@yourdomain.tld it should route it to yourmailboxname@gmail.com.
If you don't point yourdomain.tld MX records to Cloudflare then Cloudflare would never receive anything to @yourdomain.tld, because MX doesn't point at them.
[0] the only way to for it know that is to run some Google Business or whatever it called now, where you actually ... point yourdomain.tld MX records to Gmail and it would process them... but it would not deliver them to yourmailboxname@gmail.com!
BTW it would be absolutely the same idea if instead of Cloudflare you would use Google Business (again, whatsitsname). You would setup 'Send As' in yourmailboxname@gmail.com as a usual SMTP identity which would allow you to use Gmail interface to send from somename@yourdomain.tld, and similar you need some way to explain to Google/Gmail what all mails at *@yourdomain.tld should be forwarded to yourmailboxname@gmail.com.
I understand the vagaries wrt forwarding to an acount of a different name and you're spot on there.
Support for such use cases is imminent: https://blog.cloudflare.com/announcing-route-to-workers/
Domains and subdomains are handled by DNS which is why Cloudflare can E2E proxy them. Email mailboxes are handled by an application running on a server.
Obviously if there's any recipient address trranslation in play forwarding becomes necessary.
After doing stuff like this for years, I’ve ended up going to Migadu, unlimited domains for under $100 year (cheapest plan is $19/yr for almost unlimited domains)
The Missing Email Service For Domains
Can anyone who has done this exact setup report on their experience with deliverability?
It means I have email setup for all my side/small projects and spare domains, all forwarding to the few active inboxes I keep.
Have not tested it yet, but it looks good. Their customer service is salty though. Definitely a service geared towards people who already know what they are doing, so ah... wish me luck!
Along the way I did evaluate Cloudflare email routing and it's great, for what it does (no opinion on whether your emails will end up in spam though, I guess we'll find out as more people use it). For personal email on a custom domain through a gmail account, I set everything up in 15 minutes. You end up using the gmail smtp server. Presumably you can use any provider with smtp if you don't like gmail. However... No pop/imap which was a deal breaker for me and why I'm moving on from forwardmail in the first place, hence moving to Mxroute.
I also tested Zoho mail. Not great, not awful. Very confusing UI.
It works great. I don't use Cloudflare email routing service but use something else. But I did a manual test with Cloudflare and it worked really well (thinking of changing it actually).
They aren't setting up a mailserver
They are just using Cloudflare's email routing to do what your registrar is doing
It seems like everything else is mostly the same except your alias approach has some downsides that the OP's maybe doesn't:
"Important: While these directions let you send emails from a custom email alias at your domain, email recipients can still find your personal Gmail address if they inspect the email headers. Emails from your alias are not digitally signed and are more likely to be flagged as spam."
... What? Cloudflare has nothing to do with the email sending so it doesn't mess up any sender fields. If you mean for receiving emails, the sender field has always been totally fine for me. I don't see anybody complaining about it, I think you are misunderstanding other comments
Also it's not even accurate, if you setup the alias correctly that doesn't happen