Why your website contact form has stopped emailing you Print

  • 0

Your website's contact form used to email you every time someone filled it in. Now nothing arrives, and as far as you know nothing has changed. This is one of the most common problems we see, and it's nearly always the same cause.

Why it happens

A typical contact form sends a message from your domain, to your domain, but via your web server rather than your mail provider. Your mailbox receives a message claiming to be from you that didn't come from your mail service. Modern spam filters are right to be suspicious of that, so the message is quietly rejected or sent to spam.

It often seems to start for no reason because the rules tightened at the receiving end: Google, Microsoft and most mail providers have steadily become stricter about checking where email really comes from. A form that worked for years can stop overnight without anyone touching the website.

Check these first

  1. Look in your spam or junk folder. If the messages are there, the form is working and it's a trust problem, covered below.
  2. Check the form's settings for the address it sends to. It's surprisingly common for it to point at an old mailbox.
  3. Submit a test with your own details, so you know exactly when to look for it.

The fix

There are two ways to fix it, and the second is the more reliable.

1. Add your web server to your SPF record

Your domain's SPF record lists the servers allowed to send email for you. If your web server isn't on that list, add it. Our article on SPF, DKIM and DMARC explains how SPF works. Remember that a domain can only have one SPF record: add to the existing one, don't create a second.

2. Send the form through a real mailbox (recommended)

Rather than letting your website send email itself, have it log in to a real mailbox and send through your mail provider, exactly as your email program does. The message then passes every check, because it genuinely comes from your mail service.

On WordPress, an SMTP plugin such as WP Mail SMTP does this. Create a mailbox for the purpose, such as website@yourdomain.co.uk, enter its login details in the plugin, and send a test.

If your mailboxes are on our Professional Email service, use these settings in the plugin:

  • SMTP server: smtp.us.appsuite.cloud
  • Port: 465, with SSL/TLS encryption
  • Username: the full email address of the mailbox
  • Password: that mailbox's password

Our hosting servers don't host mailboxes, so sending through your Professional Email mailbox like this is the reliable way for a website hosted with us to send email.

While you're there, set the form's Reply-To to the visitor's email address, not its From. That way you can still press Reply to answer them, without the form pretending to be them, which is another thing spam filters reject.

Still not arriving?

If you're hosted with us, open a ticket with the address of the page your form is on. We'll check your DNS records and the form's setup, and tell you what's stopping the messages.


Was this answer helpful?

« Back