You submit a test entry, wait, and nothing arrives. Or notifications worked fine for months and suddenly stopped. Or they arrive for some forms but not others. Gravity Forms notification failures are frustratingly common — and because WordPress gives you almost no diagnostic feedback, pinning down the cause takes a methodical approach.
This guide walks through every common cause in order of likelihood, with clear steps to confirm or rule out each one.
Step 1: Check the Gravity Forms Notification Settings
The most common cause of missing notifications is misconfigured settings — a wrong email address, a disabled notification, or a conditional logic rule that's unintentionally filtering out submissions.
Verify the notification is active
In WordPress admin, go to Forms → [Your Form] → Settings → Notifications. You should see at least one notification listed. Check that the toggle next to it is enabled. If you've accidentally created multiple notifications, confirm which ones are active and which are disabled.
Verify the Send To address
Open the notification and check the Send To field. If it's set to "Enter Email" mode, confirm the address is correct and has no typos. If it's set to "Select a Field" mode, make sure it's pointing to the right field — and that the field is actually present and required on the form.
Check conditional logic
If you have conditional logic configured on the notification ("Send this notification if..."), that logic may be preventing delivery for certain submissions. Temporarily disable the conditional logic rule and submit the form again to see if the notification arrives.
Step 2: Check Your Spam Folder
Before assuming the email was never sent, check the spam or junk folder of the receiving address. WordPress email frequently triggers spam filters because it originates from your hosting server without proper authentication headers.
Also check any email filtering rules or forwarding rules that might be routing the message somewhere unexpected.
Step 3: Test WordPress Email With a Diagnostic Plugin
To determine whether WordPress can send email at all from your server, install the free WP Mail Log or Check Email plugin. These send a test email directly from WordPress and show you whether it was accepted by the local mail handler.
If the test email also fails to arrive, the problem is with WordPress email configuration on your server — not with Gravity Forms specifically. Jump to Step 5.
If the test email does arrive, the problem is more likely in the Gravity Forms notification settings. Go back to Step 1 and review more carefully, or check for plugin conflicts (Step 4).
Step 4: Check for Plugin Conflicts
Some plugins intercept wp_mail() and alter how email is handled — SMTP configuration plugins, security plugins, or caching plugins can all interfere with Gravity Forms notifications.
Common conflict sources
- WP Mail SMTP / FluentSMTP / Post SMTP — If configured incorrectly, these plugins can silently drop email rather than send it through the configured SMTP server
- Security plugins (Wordfence, iThemes Security) — Some have email throttling or blocking features
- Caching plugins — In rare cases, aggressive caching can interfere with form submission processing
How to test for conflicts
Temporarily deactivate all plugins except Gravity Forms, submit a test entry, and check if the notification arrives. If it does, reactivate plugins one at a time until the failure reappears — that's your conflict.
Step 5: Diagnose Server-Level Email Problems
If WordPress can't send any email at all, the issue is at the hosting level. These are the most common server-side causes:
Shared hosting IP blocklisted
Your hosting server's IP address may be on a spam blocklist due to abuse from other sites on the same server. Check using a free tool like MXToolbox Blacklist Check — enter your server's IP address and see if it appears on any blocklists. If it does, contact your host.
Port 25 blocked
Many shared hosts block outgoing connections on port 25 (SMTP) to prevent spam. If your server can't reach an outgoing mail server, email silently fails. Your host's support team can confirm this. The fix is to use an external SMTP service with port 587 or 465 instead.
Missing SPF/DKIM records
Without proper SPF and DKIM DNS records, email from your domain is treated as suspicious by receiving mail servers. Check your domain's DNS records using a tool like MXToolbox Email Health. If SPF and DKIM are missing or misconfigured, you'll need to add them via your domain's DNS settings or ask your host to do it.
Step 6: Check Gravity Forms Entry Logs
Gravity Forms has a built-in logging system that records notification activity. To enable it, go to Forms → Settings → Logging and turn on logging. Then submit a test entry and check Forms → Entries → [Entry] → Notes for notification status messages.
The log will show whether the notification was triggered, whether wp_mail() was called, and whether it returned success or failure. A "true" return from wp_mail() means WordPress handed the message to the mail server — it does not confirm the email was received.
Step 7: Switch to a Reliable SMTP Service (Partial Fix)
If server-level email is the problem, adding a dedicated SMTP service is the standard fix. Install WP Mail SMTP and connect it to SendGrid, Mailgun, Postmark, or Gmail's SMTP. This routes all WordPress email — including Gravity Forms notifications — through a proper delivery service with authentication and a clean IP reputation.
This will improve reliability significantly, but it doesn't eliminate the problem entirely:
- Recipient-side spam filters still evaluate the message content
- SMTP services have free-tier limits; beyond those, you pay monthly
- You still have no push notifications — you have to check your inbox
- Email delivery is not guaranteed, even from reputable SMTP providers
The Permanent Fix: Stop Relying on Email for Notifications
Every step above is a workaround for a fundamental limitation: WordPress email was not designed for reliable real-time notifications. You can reduce failure rates with SMTP configuration, but you can't eliminate them.
The permanent fix is to use a notification channel that isn't email. Telegram's Bot API delivers messages via a direct HTTPS call to Telegram's servers. No mail transfer agent, no spam filter, no IP reputation, no inbox to check — your phone buzzes within seconds of every form submission.
What you keep
You don't have to choose between Telegram and email. Keep your existing Gravity Forms email notification active — it provides a useful archive of submissions in your inbox. Add Telegram as your action channel: the instant notification you act on, while email serves as the record. When the email eventually arrives (or goes to spam), you've already responded to the lead.
Setup time
Getting Telegram notifications working takes about 10 minutes: create a free Telegram bot via @BotFather, install JF Notify, and enter your bot token and chat ID in the plugin settings. See the step-by-step setup guide for the full walkthrough.
Troubleshooting Checklist
- Test with a live form submission, not the Gravity Forms preview
- Confirm the notification is enabled in Forms → Settings → Notifications
- Verify the Send To email address has no typos
- Disable conditional logic temporarily and retest
- Check your spam folder and any email filtering rules
- Run a WordPress email test using WP Mail Log or Check Email
- Check your SMTP plugin logs if you have one installed
- Check for plugin conflicts by temporarily deactivating other plugins
- Check your server IP against spam blocklists via MXToolbox
- Enable Gravity Forms logging and review entry notes after submission
If you've worked through the full list and email is still unreliable, that's the system working as designed — WordPress email simply wasn't built for guaranteed real-time delivery. At that point, switching the notification channel is more productive than further SMTP debugging.
Skip the Troubleshooting. Fix It Permanently.
JF Notify sends Gravity Forms submissions directly to Telegram — no email infrastructure, no spam filters, no configuration headaches. $29 one-time, works in under 10 minutes.
Get JF Notify — $29