Why Is My Contact Form Not Sending Me Emails?

Your website almost certainly is sending the message. The problem is what happens next. The email arrives at your mail provider claiming to be from your own domain name, but nothing has told the provider that the website is allowed to send as you, so the message is refused or dropped into junk. The fix is to send the notification through an authenticated route and to add a few records to your domain so the form is permitted to speak for you.

Why this happens

The simplest way for a form plugin to work is to put your own address in the From line. Years ago that was fine. Today the big mail providers, Microsoft 365 and Google among them, check every incoming message against the published rules for the sending domain. A message that claims to be from your domain but was sent by a web server they have never heard of looks exactly like a forged email. The rules were tightened sharply in recent years, so a form that worked for a long time can stop without anyone touching it.

What to check first

  1. Look in the junk folder, and if you use Microsoft 365, look in quarantine as well.
  2. Open the form plugin on the website and find its entries or submissions log. Most plugins keep a copy of every submission whether or not the email went anywhere. If the entries are there, only the email is failing.
  3. Check the notification address in the form settings. It often points to a former staff member or a mailbox that no longer exists.

The fix

There are two parts, and you need both.

First, stop the web server sending email on its own. Set the form to send through an authenticated route instead. For most small businesses that means an SMTP plugin on the website connected to a real mailbox on your business email account, or a transactional email service whose only job is sending automated mail reliably. Either way the message goes out through a sender that is known and trusted.

Second, make sure the DNS records for your domain say that sender is allowed. There are three. SPF lists which servers may send mail for your domain. DKIM adds a signature so the receiver can confirm the message was not altered. DMARC tells receivers what to do when a message fails the first two. These are the same records covered in our guide on why emails go to spam.

Put the visitor address in the Reply To field, never the From field, so you can still answer with one click.

How to test it properly

Fill the form in from a phone on mobile data, using a personal address at a different provider, and check that the notification lands in the inbox, not junk. Then use a free mail testing tool that reads the message headers and confirms SPF, DKIM and DMARC all pass. Finally, reply to the test and make sure the reply goes to the visitor, not back to you. Repeat the test after any change to the website or your email.

What to do next

If the entries log is full of enquiries you never received, reply to each one, then fix the sending route and the DNS records in that order. Keeping forms, plugins and the records behind them working month after month is part of website care and hosting.

Did I lose the enquiries that never arrived?
Usually not. Most form plugins store every submission in the website itself. Open the entries page in the plugin and they should all be there.

Why did the form work for years and then stop?
Mail providers tightened their rules on unauthenticated mail. The form kept working until the receiving side stopped accepting it.

Can I just use a free webmail address as the notification address instead?
You can, but it does not fix the cause. The message is still sent as your domain without permission, and the free provider will junk it just as readily.

If this is happening in your business and you would like it sorted, call DM1 on (08) 6202 6012 or send us a message. We look after IT, Microsoft 365, websites and domain names for Perth small businesses.

Need IT help? Chat with us
DM1
DM1 Assistant
Perth IT Support Guide
Scroll to Top