
A broken form is the worst fault a business website can have, because nothing looks broken. The visitor gets a thank you message, you get nothing, and neither of you knows. The fault may have been there for months before somebody calls and asks why their message was ignored.
Fill in the form as a visitor would and send it. Use a real email address and recognisable text so you can find the message later. See whether it arrives within a minute.
Form messages look suspicious to a mail server, because they are sent from the site while the sender is set to the visitor's own address. Check the spam folder and look for mailbox rules that move messages out of sight.
The lasting fix is to set the sender to an address on your own domain and the visitor's address as the reply address. The message then passes the checks and replying still works with one click. The authentication records involved are covered in our guide on SPF, DKIM and DMARC.
If no message sent by the site arrives, the fault is not in the form but in the sending. The same fault breaks password resets and order confirmations. It is covered in our guide on WordPress not sending email.
The form's own spam protection can silently reject genuine messages. That happens in particular when the protection needs something from the browser that the visitor's browser blocks. Try a submission with the protection off for a moment. If the message arrives, the protection needs adjusting rather than removing.
The most reliable arrangement is to store submissions in the site database as well as sending them by email. Then no enquiry is lost even if email fails. In most form tools this is a single setting.
Do not test the form by sending a message to your own mailbox from the same address the form sends to. It may pass while a message from outside would not. Test with a real external address.
We find out whether the message is lost in sending, in transit or on arrival, and fix it. We also store submissions on the site, so no enquiry disappears even if email fails.