As your website needs to send emails on behalf of your domain name, it needs to be set up to be authorised to do so.

Email is complicated. Whether you use a third-party app like Google or have your email bundled into a WordPress hosting account with your website, you are going to want to send emails from your website at some point.

These might simply be password reset emails from your WordPress install, but more importantly, they might be form submissions from potential customers.

In order to fight spam, mail servers will try and establish if the server sending the email is authorised to do so, if it’s not, there’s a good chance your emails will not get delivered – even if you are sending them to yourself.

Why is this a potential problem?

When you send an email, it’s the recipient’s mail server that decides if your email is spam or not.

This includes when you have forms on your website that send either you or both you and the person completing the form, a copy of the form entry.

A lot of the time, people rely on the PHP mailer on the server to send this email.

This can lead to problems, as the server may send the email, but it cannot guarantee it is going to get delivered.

Imagine if you had an important contact form on your site, that 100s of people had completed, but you never received an email to let you know – that could be £1000s of lost new business.

Get help fixing WordPress forms

Understanding the problem.

One way to sort this is by ensuring your domains DNS are correctly configured.

At the domain level, you can include an SPF record that tells mail servers that servers on a certain IP address or third-party services like MailChimp are allowed to send an email on behalf of your domain.

You can also include a DKIM record to enforce this further and a DMARC record that aligns with your DKIM and SPF.

What is an SPF record?

An SPF (“Sender Policy Framework”) record a DNS record: it enables a domain to state which servers may send emails on its behalf.


What is a DKIM?

DKIM (DomainKeys Identified Mail) is an email security standard designed to make sure messages aren’t altered in transit between the sending and recipient servers. It uses public-key cryptography to sign an email with a private key as it leaves a sending server. Recipient servers then use a public key published to a domain’s DNS to verify the source of the message, and that the body of the message hasn’t changed during transit. Once the signature is verified with the public key by the recipient server, the message passes DKIM and is considered authentic.


What is a DMARC?

DMARC is a standard that allows you to set policies on who can send an email for your domain based on DKIM and SPF. If you are new to email authentication, we recommend first reading about SPF and DKIM. In combination with SPF and DKIM, a DMARC policy in DNS allows you to set rules to reject or quarantine (junk folder) emails from sources you do not know. Through support from ISPs (Gmail, Yahoo, Microsoft and more) DMARC also allows you to receive reports on sending activity for your domain.


Getting the settings right is crucial to email deliverability.

If you are not sure what you are doing, you should never tinker with your DNS records, you can take down your website or render all emails undeliverable.

Care needs to be taken to set up, check and recheck all DNS records that relate to email.

So why does my WordPress site not deliver form notifications?

Simply put, there is an issue somewhere with your DNS records that some mail servers do not like (yes, it’s often delivered by some and not by others).

The server hosting your website is trying to send emails from itself and its IP address is not registered as one that can send an email for you, so the emails never get delivered.

How to fix the non-delivery of emails sent by your WordPress install?

Use a third-party email sender like Mailgun or Sendgrid to deliver these emails for you.

When you set up an account (often free for limited sends) the apps will make sure all the correct settings are present and deliver everything to you without any problems.

The only issue here is that setting up these apps themselves can be quite complicated, so again, we suggest getting it sorted professionally.

Need help with the issues raised above?

Just give us a call on 01295 266644 or complete the form and we'll get your website sorted.