How to send and receive custom domain email with Gmail for free
This process will take about an hour. If you find this tutorial going over your head, just shoot me a question and I’ll answer + update the tutorial.
A little history
You love Gmail, but you don’t love sending professional email from NightElfMohawk1989@gmail.com. Getting a Gmail inbox with your new domain name for free used to be easy. From 2006 to 2012, Google offered a free tier of Google Apps for custom domain email addresses. After that, we were able to use Gmail Aliases as a workaround until August 2014, when Google stopped providing SMTP servers for external addresses. As a bootstrapped upstart, you can’t afford $5–$10 per address per month, and as a Gmail fan, you don’t want to switch to a competitor. What are you to do?
Every puzzle has an answer
We can’t change Google’s pricing, but we can find our own free SMTP server. We’ll set up a free Zoho account for our mail server, then use a Gmail alias to give us the familiar interface and features we desire. No POP3 or IMAP, just some domain record configuration. I’ll break it down in 3 steps:
- Enable email forwarding
- Set up Zoho SMTP Server
- Add Gmail aliases
Enable email forwarding
The first step is pretty easy. Load your registrar’s website and log in. For the non-technical, this is where you bought your website’s domain name. GoDaddy and Namecheap are my two favorites. Every registrar is a little bit different, but this setting is relatively easy to configure. Find “Manage domain” or something similar, then locate settings for “Email forwarding”. Type in the addresses you want and where you want their mail forwarded. Here are some screenshots of how to do it on Namecheap with an example domain of mine:
Set up Zoho SMTP server
Zoho is great. It’s probably the best and only quality business email that still has a free tier. If you aren’t as stubborn as I am about using Gmail, you could even stop reading this tutorial and just use their service normally. Their free tier allows up to ten accounts. If you need more, you can probably afford to pay for one of these services (Zoho, Google Apps, Office 365, etc.).
Get started with their free plan and use the forwarding address you created in the previous step when asked. You’ll need to verify ownership of your domain, and for that, Zoho gives three options: CNAME, TXT, and HTML verification. I prefer the HTML method because it works instantly, but the CNAME method will work without access to your file server.
For the CNAME method, you’ll need to go back to your registrar’s page to manage your domain. Find the “All Host Records” page so you can add a new CNAME record. For TTL, just put 1800. Here are some more screenshots to help:
Now with your domain verified, you can add user accounts to Zoho. This is when you choose up to 10 addresses from which you want to send mail. I like to set up with ray@domain, hello@domain, and sometimes developer@domain.
Zoho will probably tell you that there are more things you need to do, but once you’ve created the email accounts, you’re ready to move on to the next step.
Add Gmail aliases
Hard part’s over. Open up the gmail account that receives emails forwarded by your registrar. Go to Settings > Accounts and Import. There’s a section labeled “Send mail as” where you need to click “Add another email address you own.”
A pop-up window opens and walks you through setup. Type in the name you want to show up in emails you send, an email address you created with Zoho, and leave the box “Treat as an alias” checked. Click next step.
On the next screen, you need to enter SMTP data. Google used to let you use their servers to do this, but their policy changed and that’s why we’re using Zoho. Clear the fields preset data and fill it in with the following:
SMTP Server: smtp.zoho.com
Username: An email address you created on Zoho.com
Password: The Zoho.com password for the aforementioned email
Leave SSL selected and ignore the TLS option. Click through with the “Add Account” button and the final page of the pop-up will tell you it needs a verification code. If you set up your email forwarding correctly* in the first step, you’ll receive an email from Google in your inbox within a minute or two. Once you add that code, you’ll be good to go!
*Note: If the new alias you try to verify is set by the registrar to forward mail to the same @gmail account you’re adding it to (the forwarding address from step 1), the verification email will fail and likely the fail message will go to spam. If it happens to you, tell the registrar to forward email to a different email while you verify the alias on google. Then simply switch it back to the desired account after you receive and submit the verification code.
Make sure to check another box on the Accounts and Import tab that says “When replying to a message: Reply from the same address the message was sent to”.
You might have noticed that this isn’t the only way to use Zoho to access your domain email via Gmail. Instead of using your registrar’s email forwarding, you can alternatively configure the MX records to let you send and receive directly through Zoho’s servers without redirects. This might actually speed up the performance, but it will prevent you from having a catch-all email address. With forwarding, most registrars allow a catch-all address with the * symbol. Email forwarding and MX records are mutually exclusive.
In my example, I set up email@example.com to send to firstname.lastname@example.org, but I could also set up many more email addresses to both send and receive at email@example.com. At Budgie, we use Devin@, Hello@, and Ray@ all in one Gmail inbox, using some inbound filters to automatically label each incoming address.
Hope this helps! If you use this tutorial, shoot us an email at firstname.lastname@example.org to test it!