Bluehost WordPress SMTP contact form problems when hosted by Bluehost and using Gmail

Bluehost WordPress SMTP problem with Contact Forms and how I fixed it
Web Hosting

It’s possible other people have faced this Bluehost WordPress SMTP problem. I don’t currently host with Bluehost, but I’ve had a client who is and I faced problems that seem specific to Bluehost. It seems the problem only showed itself when the MX Record was set for Gmail to handle the emails (a popular option as I prefer Gmail myself compared to the usual Cpanel options of Horde etc.).

Essentially, the problem is the email from the contact form doesn’t appear to be sent, despite the contact form displaying a message that the email was sent correctly.

To confirm, I used the popular WordPress plugin Contact Form 7, along with WP-Mail-SMTP. My client also installed the Flamingo plugin which showed the messages that were entered into the contact form and seemed to be accepted. (suggesting that the contact form itself wasn’t the problem).

Bluehost WordPress SMTP problem with Contact Forms and how I fixed it

What did I do first to try and resolve this Bluehost WordPress SMTP problem?

I tried a lot of different things to try and fix the problem. First, I tried the settings on the Contact Form. Then, I tried setting up plugins such as Gmail SMTP to route the contact form messages to the Gmail account my client had set up.

None of these seemed to work.

Bluehost support’s suggestion was to try a different plugin and to contact Google and the makers of the plugins I was using to resolve the issue.

Then, I found this great post from aldrinmercado.com which actually resolved the problem. He quotes a link to WP Beginner who had a relatively similar post about getting SMTP mails to work for contact forms (you can find that here) I’d been to that post by WP Beginner myself, but hadn’t been able to resolve the problem).

This is a pretty specific problem and so I’m not sure how many other people have faced this issue. However, the fix I found on aldrinmercado.com resolved the problem (and it turned out to be some settings in the MX Record on the Bluehost cPanel…).

I thought I’d write a quick account of my experience fixing this issue and following the steps first set out by Aldrin on his website in case they’re of any use to anyone.

Step 1 – Your MX Record settings:

Go to your Bluehost cPanel. Under the Email section, you’ll see a link for MX Entry. Click it. As Aldrin points out, it’ll take you to a page titled DNS Zone Editor.

I’d stay away from most of the settings on this page unless you know you need/want to change something specific.

The section you want here is MX (Mail Exchange). This is the setting that tells the world (i.e. incoming emails) what server is going to handle your emails (so, in this case, you probably already have Gmail set up to handle your emails for your site).

Click the More button (it’ll expand so you can see and change settings).

You’ll see three options – Automatically Detect Configuration, Local Mail Exchanger, and Remote Mail Exchanger.

In Aldrin Mercado’s post, he says it should be currently set on Automatically Detect Configuration. I found my client’s option was set on Local Mail Exchanger. This was despite the emails being handled by Gmail (and they were working as well – before doing this, I tried setting up an email address on cPanel and wasn’t able to log in to that mailbox. Bluehost confirmed that was because the server was set for all emails to be handled by Gmail – seems logical).

Just as Aldrin suggested in his post, you need to change this setting to Remote Mail Exchanger. Then click the Change button just below the options (that’ll save the setting).

Step 2 – Creating an email address through cPanel:

Go back to the main page for cPanel on Bluehost, and go down to the Email section again. This time, click on Email Manager.

The fact you’re facing this problem suggests you have your emails being dealt with by Gmail, so you probably don’t have any email addresses set up.

Click Create an email account and set up an email. Aldrin suggested making an email address that’s close to the email address you’re currently using in your Gmail. It doesn’t need to be similar, just make it logical – something like [email protected] – that way you’ll recognise the email address when the contact form emails come through.

Now that’s set up, keep the email manager page open.

Step 3 – WP-Mail-SMTP plugin:

The WordPress settings for WP-Mail-SMTP to get contact forms to work on Bluehost

Go back to your WordPress login, install and activate the plugin WP-Mail-SMTP.

Go to the settings menu for the plugin (it has its own settings menu inside the mail WordPress settings menu. Just hover over the Settings link on the left side, and you’ll see the WP-Mail-SMTP link to the menu.

I’ll only mention the options you have to change/enter.

From Email:

Input the new email address you created in the email manager ([email protected], or whatever you happened to choose).

From Name:

I don’t think this makes any difference to the end result, but put something logical here. I put ContactForm as the name, again so I’d recognise the emails when they started coming through.

Mailer:

The radio button for Send all WordPress emails via SMTP should already be selected – if it isn’t (and it’s on the PHP Mail() option) change it to Send all WordPress emails via SMTP.

Save your changes – I’m cautious like that.

SMTP Host:

You need to enter box???.bluehost.com (where the ??? is a 3 digit number, essentially the server that Bluehost actually stores your website/emails/information etc.). I found the easiest way to get this information is to try logging in to the [email protected] email address we set up in the cPanel email manager a couple of steps ago (or whatever the email address is that you set up in the email manager).

To do this, go back to the email manager in cPanel (see the previous step if you’ve forgotten how to get there and have closed the page).

You’ll be taken to the webmail login page for Bluehost. Use the login details you set up for this email address. You shouldn’t actually be able to log into this email address (at least I wasn’t able to). However, when you try to log into the email address, the status bar at the bottom of your browser should say something like “waiting for box236.bluehost.com…”. That is the 3 digit number you need (please note, that’s not actually the number for my client’s Bluehost server).

Enter what yours says into the SMTP Host box on the WP-Mail-SMTP settings page.

SMTP Port:

I set this to 465 (yours may already be on this). This setting is to do with the encryption type you select in the next option.

Encryption:

Set this to SSL (which is why you need to set the port to 465 above).

Authentication:

Set this to “Yes: Use SMTP Authentication”. You’ll need to enter the email address you created (your version of [email protected]) and the password to access it.

Click Save Changes.

Step 4 – The Contact Form 7 settings:

This is specific to Contact Form 7 as that’s what I was using, but if you’re using a different plugin there should be some similar options so you should still be able to follow along.

Go into the settings for your contact form in the Contact Form 7 menu. You should be presented with 4 tabs (Form, Mail, Messages, Additional Settings). Click on Mail.

Here’s what you need to enter:

To:

Put in the email address that’s handled by Gmail (presumably the main email address for your business. For example, my main email address for me is [email protected]). This should still be @yourwebsite.co.uk, it’s just that Gmail handles the emails for you…

From:

Put in the email address you created in Step 2.

Subject:

As with the other steps, put something logical in here, like ContactForm.

Message Body:

Now, I’ve read elsewhere that Bluehost reads contact forms slightly differently (I don’t know if this is the case or not, and I don’t know if all host servers do this or not; I haven’t had a chance to test it, so if anyone does know then please let me know). I’ve been informed you must put “From:”, “Subject:”, and then “Message Body:” like this, inside the Message Body box:

From: ContactForm <[email protected]>

Subject: [your-subject]

Message Body:

Message: [your-message]

Customer Name: [your-name]

Customer Email: [your-email]

Contact Number: [your-tel]

 

Once that’s complete, test your contact form! It should now send contact form emails to your Gmail address, from the email address you set up in the email manager in cPanel.

Conclusion:

It took me a while to find Aldrin’s post. The steps that saved me seem to be the MX Record and setting up another email address in the email manager in cPanel.

As I said at the beginning, this is a very specific problem and it may be there are other ways around this. It may also be that there are some options (for example in Contact Form 7) that just aren’t necessary.

If anyone has anything to contribute to this, I’d be really grateful if you could leave some comments in the comment section.

You care about your website's speed, right?

Quick disclaimer: I'm a SiteGround affiliate, and below are some affiliate links. If you click a link and make a purchase with SiteGround, I will receive a small commission from SiteGround. This doesn't cost you any extra, but it helps me keep the lights on. I only recommend SIteGround because I use them myself, recommend them to my web design clients, and personally know the quality of their products and service.

No one wants a slow loading website. I'm sure you're probably aware, but the quality of your website host is one of the biggest factors in your website's loading speed.

I host my own website with SiteGround for a couple of reasons (other than them being one of the WordPress recommended hosts):

  • The quality of their hosting (the speed of their servers and their security). They're one of the best in the industry.
  • Their support team is outstanding. On the rare occasion I've had a problem, or just had a question, they've been on hand incredibly quickly. Plus, they really know their stuff.

Click on the banner below, or follow this link to get a website hosting company who are a cut above the rest.

Web Hosting

By: Scott Cole

November 29, 2017 |

Here're some other posts you might find helpful!

This article shows you how to get the most out of UpdraftPlus for WordPress. How to backup WordPress using Updraft

How to backup WordPress using UpdraftPlus. That’s the aim of this little article. It’s in the name. UpdraftPlus is one of the plugins I will install on basically every WordPress website I create. There are other plugins, such as Yoast SEO, that are just are useful. I’ll probably write detailed “how to” articles on those […]

Can I run my website without cookies? My experiment to see what I can do with less.

Website cookies. They’re everywhere. You’d be hard-pressed to find a website that doesn’t set cookies. Although websites typically have to set a Session cookie, I got to thinking whether I could actually run my website without using cookies at all (aside from that Session cookie). I’ve tried a few different things in my life just […]

WordPress comment form and cookies - one small step towards an almost cookieless website

The WordPress comment form and Cookies. Privacy. Data Protection. These are topics that are at the forefront of people’s minds at the moment (and have been for some time over the last year). It’s for good reason too. We as internet users really should be mindful of what personal data we put out there and […]

25 responses to “Bluehost WordPress SMTP contact form problems when hosted by Bluehost and using Gmail”

  1. Rodrigo says:

    Thanks! Thanks! Thank! You save my day, month, year!

  2. Hal says:

    Wow. After 7 hours of working on this, I found your post. It worked. I was having the same Bluehost issue, WordPress, contact form issue and had been running into roadblocks all day. One thing I couldn’t get to work from your instructions was getting the incoming mail server identification from trying to login to the Bluehost email and watching the status bar. Finally found it in the Bluehost Email Client Configuration tab. Thank you for solving this major issue!

    • Scott Cole says:

      I’m glad it was useful! I found myself working on this problem for quite a few hours as well – hence why I decided to write this guide 🙂 glad to be of service!

  3. Laren says:

    This was a HUGE help to me. Thanks Scott!!!!

    At Step 3 – I chose a different plugin ‘GMAIL SMTP’ which also managed this issue. But it requires quite a few extra steps in the Google Developers Console to authorize the plugin to fully integrate with google gmail. The plugin links to a decent help page explaining the process.

    So if you tried the method here, and still have trouble, you might try this plugin.

    • Scott Cole says:

      Hi Laren,

      I’m really glad this was helpful. Thanks for posting up some info on using a different plugin as well – I hope that’ll be useful for anyone that comes here that has gone your route with that plugin!

  4. Rizwan says:

    my contact form was working fine last year.. i just checked its not working anymore. after clicking the send button it directs me to error page saying:

    [email protected] does not appear to be a valid email address on this server (you cannot send to an external email address).
    Could not get email address, or email address not valid. mailto{addr}

    please help

    • Scott Cole says:

      Hmm that does seem strange – if there’s a problem, I usually only experience the contact form doing nothing (or the page failing to load properly if there’s a problem with the underlying PHP code that makes the form function).

      Can you answer a couple of questions for me please? I’ll see if I can help you resolve it.

      1. Are you using Bluehost hosting, and do you have a Gmail business account handling your host’s emails (or are you using Bluehost’s email system?)
      2. The email address you’ve set to be the one that receives the contact form emails – is that an email address handled by Bluehost (accessible through Bluehost’s cPanel), or is it a Gmail business email address (where you log in to Gmail, but the address is @yourdomain.com)?
      3. The email address that is SENDING the contact form emails – is that an email address set up through Bluehost’s cPanel?

      Hopefully I can help you find a solution!

      Many thanks,

      Scott

  5. Rizwan says:

    Dear Scott,

    Thanks for your response. I have been using this contact form on Bluehost for more than 5 years. And i was shocked when it stopped working.

    • Scott Cole says:

      Hi Rizwan,

      You’re welcome. Based on what you’ve told me, there should be no reason it’s not working (I was surprised when you told me it stopped working after quite some time of being absolutely fine).

      When I’ve faced problems with contact forms before, they typically LOOK as if the contact form email has sent (positive confirmation messages are given on the web page) but the emails just don’t turn up.

      As the email address is one of Bluehost’s, I’d request some help through their live support chat system. There could be a few reasons the form has stopped working, but as the email is Bluehost’s they should be able to look into it for you.

      If you still face problems once you’ve spoken with Bluehost, please let me know and I’ll see if there’s something further I can look into. Feel free to email me at [email protected] if you don’t find a solution through their chat support system.

      Many thanks,

      Scott

  6. Rizwan says:

    Email Address is actually from bluehost CPanel
    [email protected]

  7. Rizwan says:

    Thanks Scott, I have sent you an email. Looking forward to your response. Thanks once again.

  8. Josh Newman says:

    Hi Scott. Thank you so much for this detailed documentation. We were about to give up but your method saved the day!

  9. Penny says:

    I spent hours working on correcting this contact form issue! I thought it had to do with a new theme I was trying. I attempted several different plugins and got the run-around on who’s issue it was as well.

    In Step 3, I had to complete one more action – adding in a FORWARD TO email.

    But these steps helped me update the WPForms plugin (my fav in the contact form arena).
    Thank you!!

    • Scott Cole says:

      Hi Penny,

      I’m glad this little article could be of help! 🙂

      More often than not, I find I get the runaround when trying to resolve problems similar to this. Very rarely does someone say “Yeah it might be us, I’ll look into it for you…”. That’d be nice 🙂

      Thanks for the tip about Step 3 – I tempted to write something similar to this, but a bit more generic and covering more options for contact forms. I have yet to settle on a specific subject/format for that yet.

      Happy WordPress’ing!

  10. srihari says:

    Hi Scott.
    Thank you so much for this detailed documentation.

    But i not find box???.domain.com
    ??? i not able to find!!

    Please Help

    • Scott Cole says:

      Hi Srihari,

      Someone else who comments, Hal, also found the problem with finding the box???.domain.com.

      Hal’s suggestion was to look at the Bluehost Email Client Configuration tab (where you go to find information about the email address to set up your email client (whether it be applications like Outlook, Thunderbird, OSX’s Mail app etc.).

      I hope that gets you the information you need 🙂

  11. Sam says:

    Thanks for taking the time to write / share this. Seriously saved the day.

  12. Ben says:

    I’m pretty sure this webpage prevented me from committing some terrible crime of passion. Thank you, kindly. After several days worth of attempting to fix this problem to no avail, this solution worked wondefully. May the Gods bring you much ******* and beer.

    • Scott Cole says:

      Thanks Ben. I was in exactly the same position myself when I first encountered this problem. My laptop was close to being launched into a low earth orbit at the time! Glad this helped 🙂

  13. Chad says:

    Awesome, this worked for me on the first try.

    I think the instructions are a tiny bit out dated at this point, but nothing substantially changed. In case anyone else runs into this, there was only one notable change:

    my box??? number appeared in my status bar as “cpanel-box????.bluehost.com” with a total of 4 digits. I removed the “cpanel-” part, used the 4 digits, and it still worked.

    • Scott Cole says:

      Hi Chad,

      Glad it was useful! I don’t have access to a Bluehost hosting account anymore, but I’ll look at updating this soon with what you’ve suggested. Thanks for bringing it to everyone’s attention 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *