Contact Form in WordPress Not Working? Here’s How to Fix It
A non-functioning contact form in WordPress can be frustrating for both you and your visitors. Whether you’re using plugins like Contact Form 7, WPForms, or Ninja Forms, issues with email delivery, plugin conflicts, or misconfiguration are common.
In this guide, we’ll explore why your WordPress contact form may not be working and walk through practical solutions to fix it—step by step.
Why Your WordPress Contact Form Isn’t Sending Emails
Most contact form problems boil down to one core issue: email delivery failure. Here are the most common causes:
1. Emails Are Not Being Sent
Your web server may not be configured to send PHP-based emails. Many shared hosting environments block or limit the PHP mail()
function, which most form plugins rely on.
2. Emails Are Sent But Not Delivered
Even if the form says “Message Sent,” emails may land in spam folders or get rejected by the recipient’s mail server. This happens when messages are sent from unverified or unauthenticated domains.
3. Plugin Conflicts or Errors
Outdated plugins, JavaScript errors, or theme conflicts can stop your contact form from working correctly.
4. Missing or Incorrect SMTP Configuration
If you’re not using an SMTP plugin, email delivery may fail silently—especially on platforms like Gmail or Outlook.
How to Fix a Contact Form That’s Not Working in WordPress
✅ Step 1: Test with a Default WordPress Theme
Switch to a default theme like Twenty Twenty-Four to check if your active theme is causing a conflict.
- Go to Appearance > Themes
- Activate a default theme temporarily
- Test the form again
If it works, the problem is in your theme’s scripts or styles.
✅ Step 2: Deactivate Other Plugins
A plugin conflict can interfere with form functionality.
- Go to Plugins > Installed Plugins
- Deactivate all plugins except the form plugin
- Test the form
- Reactivate each plugin one by one until the issue reappears
This helps identify the plugin causing the problem.
✅ Step 3: Set Up SMTP for Reliable Email Delivery
SMTP (Simple Mail Transfer Protocol) ensures your form emails are actually delivered.
Recommended Plugin:
- WP Mail SMTP (free and easy to configure)
Steps:
- Install and activate WP Mail SMTP
- Choose an email provider (like Gmail, SendLayer, SendGrid, or SMTP.com)
- Enter your email credentials or API key
- Send a test email from the plugin settings
This step alone fixes 80–90% of contact form email issues.
✅ Step 4: Use a Verified “From” Email Address
Make sure the “From” address in your form settings matches the domain of your website.
- Example: If your website is
example.com
, useyourname@example.com
- Avoid using
noreply@gmail.com
or any address unrelated to your domain
Misaligned email addresses are a common cause of SPF and DKIM failures.
✅ Step 5: Check Contact Form Plugin Settings
For Contact Form 7:
- Go to Contact > Contact Forms
- Click “Edit” under your form
- Under the Mail tab, check the “To,” “From,” and “Subject” fields
- Make sure all fields use proper shortcodes (e.g.,
[your-name]
,[your-email]
)
For WPForms:
- Go to WPForms > All Forms
- Edit your form > Settings > Notifications
- Verify the email addresses and message content
- Make sure notifications are enabled
✅ Step 6: Enable Logging (Optional)
Use plugins like Email Log to track what emails are being sent and where they fail. This helps identify silent failures caused by your host or plugin settings.
Alternative Solution: Use a Third-Party Form Service
If SMTP still doesn’t solve the problem, consider embedding a form from a reliable third-party platform like:
- Google Forms
- Typeform
- Formspree
- JotForm
These services handle email delivery for you and reduce dependency on your hosting provider.
Bonus Tips to Prevent Future Form Issues
- Keep your WordPress core, theme, and plugins up to date
- Use reCAPTCHA to prevent spam submissions
- Always test forms after updates or server changes
- Regularly backup your site before making changes
Conclusion
A WordPress contact form not working is often the result of email delivery problems, plugin conflicts, or incorrect settings. By implementing SMTP email delivery, checking plugin configurations, and using verified email addresses, you can resolve most contact form issues quickly.
Recommended first step: Install WP Mail SMTP and configure it with a trusted email provider. It’s the most reliable fix.
For more in-depth WordPress troubleshooting and tutorials, keep following KnowbaseWP.