Why Does My Contact Form Stop Working? Common Causes and Easy Fixes

Your contact form was working fine. Then one day you realise you have not received an enquiry in weeks. You test it yourself, fill in the form, hit send, and nothing arrives.
This is one of the most common and most damaging website problems a business can have. Unlike a broken layout or a slow page, a broken contact form fails silently. You do not know leads are being lost until it is too late.
The good news is that the cause is almost always one of a handful of known issues.
Quick Answer
If your contact form has stopped working, it is usually one of these:
- The form submits but emails are not arriving
- Emails are landing in spam or junk
- A plugin update or conflict broke something
- The destination email address is wrong
- Your hosting cannot send emails reliably
- CAPTCHA or validation is blocking real users
- The form itself has a hidden error
Most of the time, the form is not completely broken. Something in the delivery chain has changed.
The Two Types of "Not Working"
Before troubleshooting, it helps to know which type of problem you have:
Type 1: The form submits but the email never arrives. The visitor fills in the form, clicks send, and sees a success message. But the email never reaches your inbox. This is the most common scenario.
Type 2: The form itself does not work. The visitor tries to submit but gets an error, the page reloads, or nothing happens. This is usually a code or plugin issue.
Most of this article focuses on Type 1 because it is the one that causes the most damage. The form appears to work, so nobody notices the problem until leads have already been lost.
1. The Form Submits But Emails Are Not Arriving
This is the most common pattern.
Your form processes the submission correctly. The visitor sees a "thank you" message. But somewhere between the form and your inbox, the email disappears.
Why this happens
- Your web server sends the email, but your email provider rejects or filters it
- The email is sent from an address that does not match your domain
- Your hosting provider has restrictions on outgoing email
- The email is being silently dropped by a spam filter you cannot see
What to check
- Look in your spam and junk folders carefully
- Check whether the form has a notification log or submission history
- Try changing the destination email address temporarily
- Ask your hosting provider whether outgoing emails are being blocked
Plain-English takeaway
The form might be doing its job. The email is just not making it through.
2. Emails Are Landing in Spam or Junk
This is closely related to the first issue but worth separating because the fix is different.
When your website sends an email, it often comes from the server itself rather than from a proper email account. Email providers like Gmail, Outlook, and Yahoo treat these messages with suspicion because they cannot verify who really sent them.
Why this happens
- Your domain does not have SPF, DKIM, or DMARC records set up
- The email is sent from a generic or mismatched address
- The email content triggers spam filters (too many links, certain words)
- Your server shares an IP address with other sites that send spam
What to check
- Search your spam folder for the form sender address
- Ask your developer whether email authentication records are configured
- Check if the "from" address on your form matches your actual domain
- Consider using a dedicated email sending service like SMTP
Plain-English takeaway
Your form emails might be arriving. They are just being put somewhere you are not looking.
3. A Plugin Update or Conflict Broke Something
If your site runs on WordPress or a similar platform, plugin updates can silently break your contact form.
This can happen when the form plugin itself updates, when another plugin conflicts with it, or when a PHP or server update changes how things work behind the scenes.
Why this happens
- The form plugin updated and introduced a bug
- Another plugin conflicts with the form's submission process
- A server or PHP update changed behaviour the plugin depends on
- The form relies on a feature that was removed or changed
What to check
- Check when the form last worked and whether any updates happened around that time
- Try deactivating other plugins temporarily to see if the form starts working
- Check the form plugin's settings for any error messages or warnings
- Look at the plugin's changelog or support forum for known issues
Plain-English takeaway
If the form used to work and nothing obvious changed, a plugin update is one of the first things to investigate.
4. The Destination Email Address Is Wrong
This sounds too simple, but it happens more often than people admit.
Someone updates the form settings, changes a company email, or migrates to a new email provider and forgets to update the contact form destination.
Why this happens
- The email address in the form settings was changed or misspelled
- The company switched email providers but did not update the form
- Multiple forms exist and only some were updated
- A staging or test email address was left in place
What to check
- Open your form settings and verify the exact email address
- Send a test email directly to that address to confirm it works
- Check if there are multiple notification rules and whether all addresses are correct
- Look for typos, extra spaces, or old email domains
Plain-English takeaway
Before investigating anything complicated, double-check the basics.
5. Your Hosting Cannot Send Emails Reliably
Many shared hosting providers limit or restrict outgoing emails.
They do this to prevent spam, but it also affects legitimate emails from your contact form. Some hosts block certain sending methods entirely, while others throttle the number of emails you can send per hour.
Why this happens
- Your host limits outgoing emails per hour or per day
- The server's IP address has been flagged for spam by other users on the same server
- Your host disabled the PHP mail function
- Email sending requires specific configuration your form does not use
What to check
- Ask your hosting provider whether there are any restrictions on outgoing email
- Check whether other email features on your site are also affected
- Look into using an SMTP plugin or external email service to bypass server email
- Check your hosting control panel for any email-related error logs
Plain-English takeaway
If your hosting is cheap and shared, it may not be reliable enough to deliver form emails consistently.
6. CAPTCHA or Validation Is Blocking Real Users
Anti-spam measures are important, but overly aggressive settings can prevent genuine visitors from submitting the form.
An expired CAPTCHA, an invisible reCAPTCHA that fails silently, or strict validation rules on phone numbers and postcodes can all stop real enquiries from getting through.
Why this happens
- reCAPTCHA keys have expired or are misconfigured
- The CAPTCHA challenge is too difficult or broken on certain devices
- Required fields have validation rules that reject legitimate input
- Anti-spam plugins are too aggressive and flagging real submissions
What to check
- Submit a test form yourself on both desktop and mobile
- Try different browsers and devices
- Check whether CAPTCHA is showing errors in the browser console
- Temporarily disable anti-spam features to see if submissions start arriving
Plain-English takeaway
If your form is stopping real users from submitting, you are losing leads even though the form technically "works".
7. The Form Has a Hidden Error
Sometimes the form itself has a bug that prevents submission but does not show a clear error message to the visitor.
This can happen with JavaScript errors, broken AJAX submissions, or CSS issues that hide the submit button or error messages.
What this looks like
- The submit button does nothing when clicked
- The page reloads but no confirmation appears
- The form seems to work on desktop but fails on mobile
- There is a brief loading animation that never resolves
What to check
- Open your browser's developer console (F12) and look for red error messages
- Test the form in a private or incognito window
- Check whether ad blockers or browser extensions are interfering
- Try the form on a different device or browser
Plain-English takeaway
If the form does not respond at all, there is likely a code error that needs a developer to diagnose.
Quick Troubleshooting Checklist
Run through this before contacting a developer:
- Check your spam and junk folders for form emails
- Verify the destination email address in the form settings
- Submit a test form yourself on desktop and mobile
- Check if the form shows a success message after submission
- Look for a submission log or entry history in your form plugin
- Check whether any plugins or themes were recently updated
- Try deactivating other plugins temporarily
- Ask your hosting provider about email sending restrictions
- Test with a different email address as the destination
- Check whether CAPTCHA or anti-spam settings are too strict
If the form has a submission log showing entries but you are not receiving emails, the problem is email delivery. If the log is empty, the form itself is not processing submissions.
How To Avoid Losing Leads Silently
The worst thing about a broken contact form is that you might not notice for weeks. Here are practical steps to prevent that:
- Set up a submission log. Use a form plugin that stores submissions in your website's database, not just via email. This gives you a backup.
- Send yourself a test submission regularly. Once a month, fill in your own form and check that the email arrives.
- Use an external email service. Services like SendGrid, Mailgun, or Amazon SES are more reliable than server-based email and give you delivery tracking.
- Set up a simple alert. If you normally receive a few enquiries per week and suddenly receive none, that should be a red flag.
When To Get A Developer Involved
If your contact form is critical to your business and the quick checks above did not solve the problem, it is worth getting professional help.
A developer should be able to:
- identify whether the problem is the form, the email delivery, or the server
- set up reliable email delivery using SMTP or an external service
- configure email authentication records (SPF, DKIM, DMARC)
- set up submission logging so you never lose leads silently again
- put monitoring in place so you know immediately if something breaks
A broken contact form is not just a technical inconvenience. Every day it stays broken is a day of lost business.
Final Thought
Most contact form problems are not dramatic failures. They are quiet ones.
The form looks fine. Visitors fill it in. The success message appears. But the email never arrives and nobody knows until a customer asks why nobody replied.
The fixes are usually straightforward:
- check spam folders
- verify the destination address
- fix plugin conflicts
- set up proper email delivery
- add a submission log as a safety net
Start with the checklist above. If your form has been unreliable, there is almost always a fixable reason.
On this page
0%
Perlat Kociaj
Full Stack Web Developer
Losing leads because your form is broken?Let's fix it.
If your contact form is not working and you are missing enquiries, I can diagnose the problem, get it working again, and set up monitoring so it does not happen silently.