Error rescue

Contact Form 7 Not Sending Emails: Fix (2026)

By Ali Yasin Jatoi 5 min readUpdated July 2, 2026
Reviewed by Ali Yasin Jatoi, Founder & Lead Engineer· Updated July 2, 2026

Quick answer

Contact Form 7 stops sending for four common reasons: (1) the 'From' address doesn't match your domain — most hosts reject spoofed senders, (2) no SMTP plugin installed and PHP mail() is blocked, (3) reCAPTCHA v3 is silently failing so submissions never reach the mail step, (4) an outdated Flamingo add-on captured the entry but suppressed the email.

Fix #1 — Align the From address

In Contact → Contact Forms → your form → Mail tab, set 'From' to an address on your domain (e.g. wordpress@yourdomain.com). Never use the submitter's email in From — set that in Reply-To instead. This alone fixes about half of CF7 email failures.

Fix #2 — Install SMTP

Install FluentSMTP (free, reliable) or WP Mail SMTP. Connect Postmark, Amazon SES, or your Google Workspace account. Send a test from the plugin's test tab.

Prefer we just fix it?

Host-level throttling, DNS mysteries, and mail-delivery failures disappear on managed hosting. We move you, tune it, and run it — from $99/mo. Learn more about managed hosting & maintenance or grab a slot below.

Fix #3 — Check reCAPTCHA

If you have reCAPTCHA v3 on the form and the score threshold is 0.5+, legit users get blocked silently. Lower to 0.3 or switch to reCAPTCHA v2 checkbox to confirm this is the cause.

Fix #4 — Inspect Flamingo

If Flamingo is installed, submitted entries appear there even when the email fails. Check Flamingo → Inbound Messages to see if the form is actually being submitted. If entries appear but no email arrives, the issue is 100% mail transport (fix with SMTP).

When to call for help

If Contact Form 7 still fails after SMTP setup, deliverability, and reCAPTCHA checks, the issue is usually a hook conflict or a corrupted CF7 template. Our fixed-fee rescue is $99.

Common questions

Why is Contact Form 7 not sending emails?+

The two dominant causes are (1) using the submitter's email in the From header — most hosts reject this as spoofing, and (2) no SMTP plugin, so PHP's unreliable mail() function is used. Fix From alignment first, then install FluentSMTP.

How do I check if Contact Form 7 is submitting entries?+

Install the free Flamingo plugin. Every submission is stored there, even when the email fails. If Flamingo shows entries but no email arrives, the issue is mail transport, not the form.

Does Contact Form 7 work with Gmail SMTP?+

Yes — install FluentSMTP or WP Mail SMTP and connect Google Workspace via OAuth. Free Gmail accounts work too but are rate-limited to 500 messages a day. For business use, Workspace or Postmark is more reliable.

Why did Contact Form 7 stop after a WordPress update?+

WordPress 6.x tightened how wp_mail() handles the From header. If your CF7 form uses a From address on a different domain (like the submitter's email), the update likely started blocking it. Change From to an address on your domain and set the submitter's email in Reply-To.

Want help with this?

The pages below go deeper, by service and by city.

Want this handled for you?

Book a call and we will review your site before recommending anything.

Call Book a call