Configuring MX records for Namecheap's Privateemail on Netlify DNS


Namecheap offers a paid self-hosted email service add-on for their domain names known as Privateemail. It works fine out of the box provided your name servers remain the defaults i.e continue to point to Namecheap.

But often times, we encounter a need to switch nameservers to third-party providers such as Cloudflare, Netlify, etc, and this in turn, often times, messes up our MX(Mail Exchange) records and thus prevents us from receiving incoming mails on our self-hosted email.

In this article, I'd be walking you through how to correctly setup MX records on your Netlify hosted domain(s) to point to Privateemail.

Note: Most of the steps in this tutorial can be replicated for other services and it should still work.

Let's Get Started

Step 1:

On your Netlify site, go to Domains -> Custom domains and click on the options dropdown on any of your listed domains having a Netlify DNS label, then click on Go to DNS panel to proceed.

Step 2

On the DNS panel, click on add new record and enter the following settings:

Record Type should be set to MX

Name defaults to @ which is same as the name of your Netlify site. You should not need to change this.

Priority should be set to 10. This is what most email services recommend, including Privateemail.

Value should be set to

TTL (Time To Live) - this will default to 3600 seconds, which is perfect.

Go ahead and click Save to update your changes.

Step 3(Optional)

set up TXT records

Repeat step 2, this time with the following different configurations:

Record Type should be set to TXT

Value should be set to v=spf1 ~all

Also click Save to update your changes.

Note: The time(wait time) for these settings to propagate may vary, typically between 15 minutes to 1 hour. So be sure to exercise some patience if your changes do not reflect immediately.

Finally, we're all done!

If you followed these steps without any errors, you should now have your MX/TXT records on Netlify DNS properly set to point to your Privateemail servers and should now be able to receive incoming mails.

Thanks for reading!