Why Your Contact Form Emails Go Missing

Contact form emails can disappear even when the form says the message was sent. The website may have accepted the submission, but that does not guarantee the message was delivered to the recipient inbox.

The usual causes are sender mismatch, missing SMTP authentication, weak DNS authentication, spam filtering, full mailboxes, or form plugin errors.

The Form Sends From the Wrong Address

A form should usually send from an address on your own domain, such as [email protected]. The visitor's email address should go in the reply-to field.

If the form tries to send from the visitor's Gmail or Outlook address, receiving mail servers may reject or distrust it because your website is not authorised to send for that visitor's domain.

PHP Mail Is Too Basic

Basic PHP mail can work, but it gives limited authentication and limited troubleshooting detail. Authenticated SMTP is usually more reliable because the website logs in to a real mailbox or mail service before sending.

For WordPress, use a reputable SMTP plugin and send a test message from the plugin settings after configuration.

DNS Authentication Is Missing

SPF, DKIM, and DMARC help receiving servers decide whether messages from your domain are legitimate. If these records are missing or wrong, form messages are more likely to be filtered or rejected.

This matters especially for quote forms, booking forms, password resets, invoices, and customer support messages.

The Recipient Mailbox Filters It

Check spam, junk, quarantine, and mailbox rules. If test messages arrive at one provider but not another, the issue is probably deliverability rather than the form itself.

The Mailbox Is Full

A full recipient mailbox can reject new messages. In Enhance, open the website, go to Emails, and check the mailbox storage. Clear old mail or increase capacity before testing again.

The Form Plugin Is Failing

Form plugins can fail after updates, PHP version changes, CAPTCHA changes, or security plugin changes. Check the form plugin's submission log if it has one, then check the website error log in Enhance.

How to Troubleshoot in Order

  1. Submit a controlled test and note the exact time.
  2. Check the recipient address in the form settings.
  3. Check spam and quarantine.
  4. Send a test email through SMTP settings.
  5. Check SPF, DKIM, and DMARC.
  6. Check mailbox storage in Enhance.
  7. Check website error logs in Enhance.

Related TekLan Posts

Read How to Check if a Contact Form Is Sending Email, How to Check Email DNS Records, and How to Check Mailbox Storage in Enhance.

← Older How to Check if a Website Is Using Cache Newer → Beginner Guide to FTP, SFTP, and SSH