I hear this a lot. Here’s what’s happening…
Like most cloud hosts, our host Cloudways doesn’t provide email services and sending transactional emails (those are receipts, notifications, password resets, two-factor authentications, etc.) can sometimes be hit-or-miss.
If it seems that email is not being sent by your WordPress site, these are the most likely reasons.
1. Transactional emails are being sent but are being flagged as or outright rejected as junk mail.
This is by far the most common problem! It happens when email coming from your site is not authenticated with records at your domain, proving they’re coming from the correct domain.
Your email provider should give you this record to add to your domain DNS records: SPF (sender policy framework) – this can help with mail delivery and also aids in prevention of spoofing and phishing.
2. The server is not configured to send mail.
We can test to see if email is actually being sent with a plugin. In most cases, mail is going out but not getting to the recipient because of reason #1.
3. Your contact form is sending out ‘spoofed’ emails.
This happens when the ‘From’ address in your contact form is from a different domain than your website. For example, your website is xyz.com but your form is coming from [email protected] When those domains don’t match, recipient email servers often block those emails.
What can we do about it?
Fortunately there are some easy ways to improve mail delivery.
1. Make sure your DNS records include an SPF record, which your email provider should have given you.
Google your email provider and SPF if you didn’t get one and add it at your domain registrar or wherever DNS is managed.
2. Make sure your form sender ‘From’ email matches the domain of your website.
This also includes the super-administrator since many notifications will come from that email address – if you’re using an address other than one with the same domain, you’ll need to look at options 3 or 4…
If you’re looking for a good email provider to get a domain-related email, we recommend Rackspace (disclosure: we are a Rackspace affiliate and have used their email services for many years).
3. Add an SMTP plugin to your site.
This allows your site to use a third-party outgoing mail server (typically this will be a Gmail SMTP server or something similar) and this is a pretty good solution much of the time. It can take some time to set up, and is not foolproof, but it reduces the risk of being blocked.
You’d either do 3 or 4, not both.
4. Further authenticate your email with an email delivery service.
This is the best (again not foolproof) way to improve email deliverability. We use Postmark and there are other services like Mailgun and Mandrill that are very similar.
You add a DKIM record (which is like a digital signature on every outgoing email) to your domain’s DNS records to prove that they are authentic, and the chances of being blocked are significantly reduced.
Our Postmark Email Delivery Booster service is only $2/month for our Care Plan clients. This is what we’ve been using since 2017 and we recommend it for any business website where email delivery is critical. Get in touch for more information.