Troubleshooting13 min read

Website Contact Form Not Working? Complete SMTP & DNS Fix Guide

Your contact form stopped sending emails — and you are losing leads. Here is the complete diagnostic and fix process, step by step.

May 9, 2026 13 min read Step-by-Step Fix

It starts with a sinking feeling: "Did we get any leads this week?" You check your inbox — nothing. Check the website — the contact form looks fine. Submit a test message — silence. Your contact form, the primary lead generation tool for most small businesses, has gone dark.

This is one of the most common website issues we see, and it is almost always fixable in under 30 minutes. The problem usually falls into one of eight categories — from hosting provider policy changes to missing DNS records. This guide walks you through diagnosing the exact cause and fixing it step by step.

Quick Fix (If You Are in a Hurry)

  1. 1Install WP Mail SMTP plugin (free) from WordPress plugin directory
  2. 2Sign up for free SendGrid account at sendgrid.com (100 emails/day free)
  3. 3In WP Mail SMTP settings, choose "SendGrid" and paste your API key
  4. 4Send a test email. Done — this fixes 80% of contact form issues.

8 Root Causes of Contact Form Email Failures

Click any cause to expand the full fix details:

Hosting Provider Changed Email Policy

Critical

Fix: Switch to external SMTP relay (SendGrid, Mailgun, Brevo). Most shared hosts disabled PHP mail() in 2024-2025.

Estimated time: 15-30 min

SPF Record Missing or Wrong

Critical

Fix: Update DNS SPF record to include your web host or SMTP relay. Check with MXToolbox SPF checker.

Estimated time: 5-10 min

DKIM Not Configured

High

Fix: Enable DKIM in your email provider admin panel. Publish CNAME records in DNS.

Estimated time: 10-15 min

Emails Landing in Spam

High

Fix: Check spam folders, verify sender reputation at Mail-Tester.com, warm up new sending domain.

Estimated time: 5-10 min

Contact Form Plugin Broken

Medium

Fix: Update plugin, check form settings, verify recipient email, test with default theme.

Estimated time: 10-20 min

DNS MX Records Changed

Medium

Fix: Verify MX records point to the correct mail server. Check with MXToolbox MX lookup.

Estimated time: 5-10 min

IP Address Blacklisted

High

Fix: Check blacklist status at MXToolbox or MultiRBL. Request delisting if listed. Switch to dedicated SMTP.

Estimated time: 20-60 min

No SMTP Authentication Set Up

Critical

Fix: Install WP Mail SMTP plugin. Configure with SendGrid API key or Google Workspace app password.

Estimated time: 15-20 min

Expert Help Available

Have questions about this topic?

Our migration specialists can help. Chat live or request a free consultation.

Contact Us

Step-by-Step Contact Form Fix Process

1

Check Your Spam Folder

60% of "missing" contact form emails are in spam. Check spam/junk folders in your inbox and any forwarding rules.

Check Now
2

Test PHP mail() Function

Create a simple test file that calls PHP mail() to verify your server can send email at all.

How to Test
3

Check SPF, DKIM, DMARC Records

Use MXToolbox to verify your DNS records. Incorrect SPF is the #1 cause of contact form emails going to spam.

Check DNS
4

Set Up WP Mail SMTP Plugin

Install WP Mail SMTP and configure it with SendGrid, Mailgun, or your email provider's SMTP credentials.

Set Up SMTP
5

Verify Contact Form Settings

Check recipient email address, form fields, and notification settings in your contact form plugin.

Check Settings
6

Test & Monitor Deliverability

Send test emails and check deliverability with Mail-Tester.com. Monitor for 48 hours.

Test Delivery

How DNS Records Affect Contact Form Deliverability

When your contact form sends an email from noreply@yourcompany.com, the receiving server checks three DNS records to verify the email is legitimate. If any are wrong, your emails go to spam or get rejected.

SPF Record

Tells the world which servers are allowed to send email for your domain. Must include your web host and SMTP relay.

v=spf1 include:sendgrid.net include:_spf.google.com ~all

DKIM Record

Cryptographic signature that proves the email was not modified in transit. Adds a layer of trust.

CNAME record pointing to your email provider's DKIM selector

DMARC Record

Tells receiving servers what to do with emails that fail SPF or DKIM. Start with p=none to monitor.

v=DMARC1; p=none; rua=mailto:dmarc@yourdomain.com

Best SMTP Services for Website Contact Forms

ServiceFree TierSetup DifficultyDeliverabilityBest For
SendGrid100 emails/dayEasy — API key onlyExcellent (98%+)Small business, low volume
Mailgun5,000/mo (3 months)Moderate — API key + domain verifyExcellent (99%+)Growing businesses, developers
Brevo300 emails/dayEasy — API key onlyVery Good (97%+)Marketing + transactional
Google Workspace SMTP2,000/day (Workspace)Moderate — app password neededExcellent (99%+)Existing Workspace users
Microsoft 365 SMTP10,000/day (E3+)Moderate — app password neededExcellent (99%+)Existing M365 users
Amazon SES62,000/mo (from EC2)Hard — requires AWS setupExcellent (99%+)Enterprise, high volume
Free Consultation

Need Help Fixing Your Contact Form?

Our web development team diagnoses and fixes contact form issues, SMTP configuration, and DNS record problems. Get your lead generation working again.

Contact Page
24hr responseNo obligationFree quote

Get a Free Migration Quote

No spam, just expert advice.

Frequently Asked Questions: Contact Form Issues

QWhy did my website contact form suddenly stop working?
The most common reason is a change in your hosting provider's email policy. Many shared hosting providers (GoDaddy, Bluehost, HostGator) have recently disabled PHP mail() or imposed strict sending limits. Other causes include: your domain's SPF record was changed during a migration, your IP was blacklisted, your form plugin needs an SMTP plugin update, or your DNS MX records were modified. The fix is usually configuring a proper SMTP relay like SendGrid, Mailgun, or your email provider's SMTP server.
QHow do I know if the problem is my contact form or my email server?
Run this diagnostic: (1) Check if your web host's server can send email by creating a simple PHP test script that calls mail(). If that fails, the issue is server-side. (2) If PHP mail() works but your contact form does not, the issue is likely your form plugin or configuration. (3) Check your spam folder — 60% of "missing" contact form emails are in spam. (4) Look at your server's error logs for mail delivery failures. (5) Use a tool like Mail-Tester.com to check your email deliverability score.
QWhat is the best SMTP service for website contact forms?
For most small businesses, these are the best options: (1) SendGrid — free tier includes 100 emails/day, excellent deliverability, easy WordPress integration. (2) Mailgun — free tier includes 5,000 emails/month for 3 months, great for higher volume. (3) Brevo (formerly Sendinblue) — free tier includes 300 emails/day, includes marketing features. (4) Your existing email provider's SMTP — if you use Google Workspace or Microsoft 365, you can use their SMTP server (with app-specific passwords). Avoid using your web host's built-in mail() function — it has terrible deliverability.
QHow do I set up SMTP for a WordPress contact form?
The easiest way is using the WP Mail SMTP plugin by WPForms: (1) Install and activate WP Mail SMTP from the WordPress plugin directory. (2) Go to WP Mail SMTP > Settings and choose your mailer (SendGrid, Mailgun, Gmail, Outlook, etc.). (3) Enter your SMTP credentials (API key or username/password). (4) Send a test email to verify. (5) If using Google Workspace, create an app-specific password in your Google Account settings — do not use your regular password. The entire process takes 10-15 minutes and fixes 90% of WordPress contact form issues.
QHow do SPF, DKIM, and DMARC affect contact form deliverability?
SPF, DKIM, and DMARC are DNS records that authenticate your emails. When your contact form sends from your domain (e.g., noreply@yourcompany.com), receiving servers check these records. If SPF does not authorize your sending server, emails go to spam. If DKIM is not configured, emails lack cryptographic signatures. If DMARC is set to p=quarantine or p=reject, unauthenticated emails get rejected entirely. After any domain or hosting change, always verify your SPF, DKIM, and DMARC records are still correct. Use MXToolbox or Google Admin Toolbox to check.
QCan I use Google Workspace SMTP for my website contact form?
Yes, but with caveats. Google Workspace SMTP requires: (1) SMTP server: smtp.gmail.com, port 587 (TLS) or 465 (SSL). (2) Username: your full Google Workspace email address. (3) Password: an app-specific password (not your regular password — you must enable 2FA first). (4) Google limits SMTP relay to 2,000 emails/day for Workspace accounts. For high-traffic sites, use a dedicated transactional email service like SendGrid instead. Also, sending from noreply@yourdomain.com via Google Workspace SMTP requires that address to exist in your Workspace directory.

Still Can't Fix Your Contact Form?

Our web development team diagnoses and fixes contact form issues, SMTP configuration, and DNS problems. Get your leads flowing again.

Ready to migrate without the headaches?

Zero downtime · Zero data loss · 100% money-back guarantee

5.0· 600+ reviews

Professional email migration services for Microsoft 365 and Google Workspace. 14 years experience. Zero downtime guaranteed.

5.0
600+ verified client reviews

Services

Company

Resources

1,000+
Migrations Completed
600+
Five-Star Reviews
14 Years
Industry Experience
0%
Downtime Guarantee

© 2026 Workspace Migration. All rights reserved.

Talk with Us