Solving Form Delivery Issues

Forms. You have to have them, but sometimes you just can’t get them to work. Recently I was hired to revamp a website and when I logged in for the first time, I discovered that there were four different form plugins! I was shocked. Why would anyone need four different form plugins? So I asked.

They installed the first one, and weren’t getting submissions. So they installed another one. Same problem. So they tried a third one. You can see where I’m going with this. After four form plugins, they still weren’t getting emails from the form and needed help.

This is the kind of problem that I love to troubleshoot. You hit submit, and an email should be sent to you immediately. But how do you troubleshoot it if it doesn’t arrive? I have a few steps and a pretty solid solution.

Is the problem your form or your email?

The problem might not actually be your form plugin. The problem might be your email account. Have you had any issues having it arrive? Have you tried sending yourself an email? Have you asked others to send you email to test? Do these things, because it’s really possible that the problem isn’t your form at all but is your email. Don’t forget to check that spam folder, because that’s a pretty common place for form submissions to wind up.

If you determine that your email seems to work fine when you get regular email, the next step is to try directing the form to another email. Say my form is set up to send to my work email address, I would change that to a gmail address and try the form again. If you receive it at gmail and not at your work email, it could be that the form and your website are having a disagreement. 🙂 (And don’t even try Yahoo. Yahoo email almost never receives form submissions.)

Your Next Steps

Once you’ve established that it’s not your email that’s the problem, we need to figure out what the problem is and how to fix it, and this can take some trial and error. My favorite first course of action is to set up an email service like MailGun or SendGrid. These are cloud based transactional email services that help ensure deliverability and track your messages.

I have used both MailGun and SendGrid. They are both free up to a certain amount of messages, so unless your form is sending thousands of messages each month, you likely won’t have to pay anything for them.

The majority of the time, after I set up an email system on a site, that solves the problem.

How to set up a transactional email service

If you aren’t tech savvy, this may prove to be difficult. There are a few steps and some require knowledge of DNS settings. If you need help, guess what? I have set up a TON of these an I can help so long as you have access to your domain’s DNS zones.

Because it can be very confusing to give DNS directives in a blog post, and because different registrars and hosts have different ways to changing DNS records, I’m not going to go into tech details about how to do this. But here’s a basic overview.

  • Step one is to create and set up your account with the service you want to use, like MailGun or SendGrid.
  • Step two is to verify your domain, which is where you’ll need some DNS changes.
  • Step three is to add a plugin to your site and configure it to start using the transactional mail service.
  • And step four is to test your form and see if it works.

What I like about using a transactional mail service is that I have a record of all the emails I’ve sent, as well as info about whether it was received, whether it was opened, whether any links were clicked. And if you think you should be getting those emails, but aren’t, it can give you details about what’s going on and help you figure out where the emails are getting stuck.

Posted in , | Tagged with
Amy Masson, Web Developer

Amy Masson

Amy is the co-owner, developer, and website strategist for Sumy Designs. She's been making websites with WordPress since 2006 and is passionate about making sure websites are as functional as they are beautiful.

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.