Problem: I do not receive email, email does not send, or always goes to the Spam folder.
Problem: I do not receive email, email does not send, or always goes to the “Spam” folder. How to troubleshoot mail delivery.
Use this troubleshooting guide if any of the following apply…
- You received an error: “The email could not be sent.”
- You never received the email message at all.
- The email message is received to your spam folder.
- You tried the email test on the form settings page and it failed.
- The email is delayed for a period of time. (see related help page.)
- If you have GoDaddy web hosting, click here: Tip: GoDaddy hosting and Fast Secure Contact Form
- Make sure you have the correct “Email To:” address set on the ‘Basic Settings’ tab of the form edit page.
- Check your spam folder, maybe the email went there.
- (most common problem) This setting on on the ‘Basic Settings’ tab of the form edit page is recommended….
Step 3, part (a): Set the “Return-path address (recommended)” setting. The Return-path address is the server email address the messages are sent from. Some web hosts do not allow PHP to send email unless the Return-path email address is set. It usually must be set to a real email address on your site domain, or mail will NOT SEND! (They do this to help prevent spam.) If your form does not send any email, enter your site email address, then test the form again. This setting is required by Dreamhost, GoDaddy, many others, and is also recommended for gmail users to prevent email from going to spam folder. (it also helps SPF spam check features to work properly).
For best results the “Email To” and the “Return-path address” should be separate email addresses on the SAME DOMAIN as your web site.
Step 3, part (b): Do you have the “Return-path address” and the “Email To” address set to the same email address?
This can cause some servers to reject the mail delivery because spammers sometimes do that.
Try setting these to two different real email addresses on your domain.
Step 3, part (c): If your form still does not send any email, also check the setting just below it(added in version 2.9.7): “ Enable ONLY when web host requires “Mail From” strictly tied to site.(optional, rarely needed)“. (only try this step when Step 3, part (a) or (b) does not fix it, if it does not work, that was not the problem, come back and uncheck it, then continue troubleshooting below)
- Maybe another plugin is conflicting (WordPress only). Do this as a test: Temporarily deactivate (not delete) all your other plugins. Does it work now? If yes, enable the plugins one by one to determine which one conflicts.
- Check if your mail server IP is blacklisted. Sometimes your mail server IP address ends up on a SORBS or RBL spam list and gets blocked by various mail systems. This may not be your fault because many sites on a web hosting server share the same IP. Check if your mail server IP is blacklisted by RBL SORBS http://www.au.sorbs.net/ You can find your email server IP in the header of a received email (if you have one) sent from your site. Contact your web host for support.
- Still not working? Here is another option for you (WordPress only): Get a free gmail account. On the ‘Advanced’ tab of the form edit page, find this setting: “Send Email function:”, make sure it is set to “WordPress”. Install the plugin called WP Mail SMTP, then set it to use gmail SMTP for mail.
Set these settings for “WP Mail SMTP”:
SMTP Host: smtp.gmail.com
SMTP Port: 465,
Username: your full gmail address
Password: your mail password.
Now use gmail to check for your contact form mail, or set gmail to forward the mail to your other address.
- Still not working? Maybe your web server has a broken mail function, contact your web host for support.
I am not receiving mail, my host says a fifth parameter -f must be added to the PHP mail function. This will set the name of the “mail from” email address.
- The solution is to set the “Return-path address (recommended)” setting try step 3a in the above help steps.
Sending the mail offsite
For best results the “Email To” and the “Return-path address” should be separate email addresses on the SAME DOMAIN as your web site. These settings are on the Basic settings tab of the form edit page.
If you wish to forward the email to somewhere else like gmail, outlook.com, yahoo, hotmail, or some other domain, do that separately after the mail is delivered. Use the web host email control panel to setup a forward. Do not use gmail, outlook.com, yahoo, hotmail, or other (not on the same domain) email address directly from the “Email To” address setting of the form. Most web hosts will not let you send directly to (or pretend to be from) web mail because spammers will do that.
Using Google Apps mail with your domain?
If you have configured your web site mail to go to Google Apps, make sure you have removed the mail accounts from your web panel at your web host. Failure to remove the mail accounts from your web panel at your web host will cause your form mail to go there and be stuck, you will NOT receive this mail at your Google Apps mail account. The reason the mail from the contact form will do this is because the form is part of your web site and it will first try to deliver to the mail address locally rather than using DNS to find your Google Apps mail address. But before you go deleting anything, contact your web host for specific instructions. See this Google document: Can’t receive mail from a web form
You must set the “Return-path address (recommended)” setting to an email address on the same web domain as your web site. GoDaddy does not allow PHP to send email unless the Return-path address is on the same web domain as your web site. And they require it to be a real address on that domain that is configured in the GoDaddy Web Panel, or mail will NOT SEND! (They do this to help prevent spam.)
See this help page: Tip: GoDaddy hosting and Fast Secure Contact Form
You must set the “Return-path address (recommended)” setting to an email address on the same web domain as your web site. Dreamhost does not allow PHP to send email unless the Return-path address is on the same web domain as your web site. And they require it to be a real address on that domain that is configured in the Dramhost Web Panel, or mail will NOT SEND! (They do this to help prevent spam.)
Why does the email appear to be from my email address instead of the user who sent the form?
Did you previously set the “Return-path address” as in step 3a of this FAQ? (some servers require it, and that’s good).
If you did and also had to set the setting “Enable ONLY when web host requires “Mail From” strictly tied to site.(optional, rarely needed)”, then the email you receive WILL appear to be from the address you set as the “Return-path address”. But you should still be able to click “Reply” and the message will go to the sender’s email address because the email header “Reply To” will be the sender’s email address. (see exception below).
Every email this form sends has a “Reply To” set to the person who filled out the form unless you disabled the “Email address” field.
In version 3.xx, Some people want to move the Email Address field position on the form. This is done by setting the standard “Email Address field” to ‘Not Available’ (disabled), then setting one of the extra fields for the Email field. If you do this, the confirmation email will NOT WORK. The solution is to upgrade version 4.xx, and make sure the Email Address field is not set to ‘Disabled’ on the Fields tab, then delete the other Email field you had set.
In version 4.xx, all the fields can be re-arranged with the drag and drop ‘Field’ settings interface. Make sure the Email Address field is not set to ‘Disabled’ on the ‘Fields’ tab.
Use the Email test feature on the ‘Basic Settings’ tab of the form edit page., if you are not receiving mail, try it. It might display troubleshooting information.
Do you need help?
Donations by PayPal:
Donations by cash or check:
PO Box 819
Long Beach WA 98631