Do you need to add a form to your WordPress site, but have no idea where to start? You’re not alone. With a plethora of form plugins out there, it can be a massive challenge to decide which one will best suit your needs. Let’s see if we can help make the decision a bit easier.
Types of Forms
Probably the most common type of form on websites is the contact form — i.e., one intended for a site visitor to initiate communication with the site owner. In its simplest form, the contact form contains fields for name, email address, phone number (sometimes), and a message. Once properly filled out, the information from the form is automatically emailed to the administrator of the website.
But forms can be much more complicated. For instance, a course registration form might require the user to input their address, level of education, related courses taken, etc. The enrolment fee may be calculated dynamically, based on one or more of those answers. And then the payment will need to be processed online. This is just one example of a complex form.
Most of you reading this are probably interested in how to set up simple contact forms, so we’ll focus mainly on those, but will keep in mind other, more intricate, possibilities.
Popular WordPress Form Plugins
As I mentioned, there are many plugins that help make the process of adding a form to your WordPress site easier than programming one from scratch. We’re just going to focus on three of the most popular plugins here.
Contact Form 7
With more than 5 million active installations, Contact Form 7 is (or at least, was) the most commonly used form plugin. It’s free, so that probably explains its popularity. But another reason for the huge number of installations surely has to do with the fact that it’s been around forever (in WordPress terms).
As you might expect with free software, the interface is quite minimalistic, even a bit clunky — not a lot of bells and whistles. If you’re looking to do anything complex, this is probably not the solution you’re looking for. But if it’s a very basic contact form you need, this might be the one for you.
With this plugin, you can create an unlimited number of forms. Each form has its own generated shortcode (a snippet within square brackets) that you can copy and paste into any page/post or widget on your site — then the form will appear in the location you inserted the code.
You can customize the content of the email that’s sent to the site administrator upon form submission. You can also customize the messages that pop up for such events as an incomplete form or a successfully submitted one. The formatting of those messages isn’t pretty by any means.
Spam protection is available through use of reCaptcha.
Support for the plugin is quite good.
However, I don’t generally recommend this plugin anymore. I just find it to be not user-friendly enough and the end results aren’t overly professional looking.
Gravity Forms is in a different league from Contact Form 7. The interface is far more user-friendly and intuitive, with drag-and-drop functionality to make creating forms quick and easy and the displayed forms look much more professional.
As with Contact Form 7, you can create an unlimited number of forms with Gravity Forms.
You can do many more “high level” functions, such as conditional logic — as described above — e.g., giving certain options or pricing based on previous field choices. For example, if, in a list of options, the last choice is “other” and the user selects that option, you can set it so that a blank text field automatically appears next to “other” for the user to fill in.
There’s the ability to allow the end-user to upload files with their form. This can be very handy if you’re collecting resumes or you want users to have the ability to include a photo with their information.
As with Contact Form 7, Gravity Forms also generates a shortcode that you can copy and paste anywhere in your site.
Spam protection is available via reCaptcha.
Other handy features include the ability to set up quizzes, surveys, and directories.
So, what’s the catch? Why wouldn’t you choose Gravity Forms over Contact Form 7? Well, you might have guessed by now — it’s not free. Yes, the good folks at Gravity Forms have the audacity to charge for their product! (That was sarcasm, people.) The Basic package costs $59US per year. There are also “Pro” and “Elite” packages — with additional features — for $159US and $259US per year — if you require more complex functionality.
If you need a complex form that looks and functions in a professional manner and you don’t mind paying, Gravity Forms is a great solution.
Okay, I’ve saved the best — in my opinion — for last. With over 1 million active installations, Ninja Forms has got a ways to go to catch Contact Form 7 in terms of long-term popularity, but a million is certainly nothing to sneeze at.
Ninja Forms combines the best of both worlds in that it the basic version has a nice, easy-to-use, drag-and-drop interface, which produces professional-looking forms and it’s free. The standard version is more intuitive to work with than Contact Form 7.
As with the other two plugins above, you get unlimited forms and a simple shortcode to paste wherever you like in your WordPress site.
The automated email can easily be edited, as can the error and success messages. If you want, you can save the submissions in your WordPress admin area and/or send automated replies to users.
One thing I really appreciate is that Honeypot is integrated to automatically combat spam, without annoying the user.
If you do need any extra features, such as conditional logic or PayPal integration, you can purchase add-on subscriptions for those services, as needed. I’ve done so for clients’ sites in a few instances where extra functionality was needed and have found those extras to be well worth the cost.
My only criticism of Ninja Forms is that, after the user submits their form, a message says “processing” but it may not be obvious to all that something is actually happening. I’d like to see some sort of animated indicator (like three dots appearing and disappearing) until completed. Otherwise, I’m always happy with how Ninja Forms works.
There are plenty of other WordPress form plugins, such as the popular WPForms and Formiddable Forms that may suit your needs. But of the ones I’ve used over the years, I keep coming back to Ninja Forms and occasionally use Gravity Forms, depending on the scope of the project. My bet, though, is for your contact form, Ninja Forms will fit the bill.