Disclosure: Some of the links in this post are ‘affiliate links’. This means if you click on the link and make a purchase, I will receive an affiliate commission. Thank you for helping support this blog!
A contact form is a must-have for any WordPress site. There are several options available to you to create it: plugins, integrations of external services and, finally, contact modules available with some themes and page builders. In this article, we will determine your needs and the best way to create a good form.
Be aware that no matter what option you choose (plugin, external service, theme, custom code, etc.), forms remain one of the potentially vulnerable points of a website. You will therefore absolutely need to choose a trusted editor.
1. Features of a good contact form
A contact form is a great way to improve your work processes and save you valuable time. By collecting exactly the data you need with a well thought-out form, you can filter out important, urgent or unnecessary messages straight away.
To achieve this, you should first think about the purpose of your form. What data is necessary or superfluous? There is no point, for example, in collecting phone numbers if you have no intention of calling your contacts.
For example, a hairdresser’s website could create a form with an option to book an appointment with an online payment method. Similarly, a construction company could set up a “request a quote” form. Finally, an online shop might provide a contact form to handle physical product returns.
In all three cases, the form is intended to automate some of the company’s administrative processes and free up time for more important tasks.
On the other hand, forms are not always the most fun to fill in. That is why they should be concise, clear and easy to fill in. They should give sufficient instructions to the user who fills them in. And in case of errors, the causes should be precisely indicated.
Finally, a good contact form should be accessible to everyone. In other words, think about how it looks on mobile phones, the age of your users, or those who use a screen reader.
2. How a good contact form works
To be effective, your form will first need to collect the data entered by the person completing it. Then, when it is sent, you should receive an email notification.
Optionally, you can choose to send a confirmation message to the sender. Finally, the data collected will need to be stored in WordPress, which is equivalent to a backup if you don’t receive the notification email, for example. Finally, your form should have a mechanism to prevent spam and abuse.
3. WordPress contact form plugins
Creating a contact form using a plugin is still the most popular and certainly the most straightforward solution. It will be ideal for you if you don’t want to use an external service or if your theme doesn’t have a proper contact form module.
Remember the two golden rules when choosing to install a plugin on your site. First, it must have been recently updated. The WordPress directory will warn you if a plugin has not been tested with the most recent versions of the software. Secondly, it must have a significant number of installs and if not, it must be developed by a trusted source.
We will look at five of the most widely used plugins that meet these criteria.
WPForms allows you to create contact forms with simple fields and offers many templates. Its free version doesn’t store submissions in WordPress, which proves to be a significant drawback. It also lacks other features you may need, such as complex fields or conditional logic. Still, its interface is easy to use.
To get more functionalities, you’ll need to upgrade to the paid version, which starts at $79 per year for one site.
3.2 Ninja Forms
Similar to WPForms, Ninja Forms offers form creation with simple fields and also has many templates. However, the submissions are actually stored in WordPress, which gives it a real advantage over WPForms. The interface is very fluid and easy to use.
But if you want more advanced options, the cost is higher and starts at $99 per year for one site.
3.3 Formidable Forms
With Formidable Forms you can also create simple contact forms. Its free version doesn’t have templates, but allows you to store submissions in WordPress. Its interface is also easy to use.
To create more complex forms, you’ll need to upgrade to the paid version, which starts at $79 per year for one site.
3.4 Gravity Forms
Gravity Forms is a plugin that doesn’t have a free version. It therefore immediately offers many features that will satisfy the most demanding users. The forms need to be styled and some knowledge of CSS will be useful. Gravity Forms is the plugin I prefer and use on my clients’ sites.
Less expensive than the paid versions of the previous plugins, it starts at $59 per year for one site.
3.5 Contact Form 7
Contact Form 7 is a staple in the WordPress directory. With over 5 million installations, it is the most popular contact form plugin. However, popularity does not necessarily mean ease of use.
Contact Form 7 allows you to build simple or complex forms, but for the latter, you will have to use HTML. If this is not your cup of tea, I would not recommend this plugin.
For the more adventurous, be aware that Contact Form 7 doesn’t store submissions in WordPress by default, but there are add-on plugins that can make it much more functional.
Contact Form 7 is often criticised by developers, probably because it is not very beginner friendly. Nonetheless, I think it can be very useful for those who are willing to spend some time reading the knowledge base and doing some research online.
Contact Form 7 is completely free and therefore does not have a paid version.
3.6 Other plugins
There are obviously many other plugins that meet the criteria set. Here is a non-exhaustive list if you wish to test more.
- Everest Forms
- HubSpot All-In-One Marketing
- Flo Forms
- Simple Basic Contact Form
- Visual Form Builder
- Contact Form by BestWebSoft
- Form Maker by 10Web
- Calculated Fields Form
- WP Fluent Forms
- JetPack (module de contact)
4. External forms to embed on your WordPress site
Services that allow you to create online forms and then embed them into your site can also be a great choice. Especially if you need more complex functionality, but can’t afford to invest.
You have, indeed, a complete enough application to create relatively sophisticated forms. For example, you can add an appointment booking function or accept payments. Note that these features are usually available in the paid versions of the plugins mentioned above.
In addition, these services often offer a WordPress plugin that allows you to add your forms to your site painlessly. In addition, the submissions are stored and backed up on their servers and not in your WordPress database. This limits the possibilities of hacking.
On the other hand, you don’t create the forms directly on your site, but in the app. There is also the issue of your users’ data confidentiality and protection. The two services below take care of this.
Typeform allows you to create simple or complex forms according to your needs. It supports appointment scheduling and other advanced functionalities. The free version offers quite a few options but limits both the number of monthly submissions you can receive and the number of questions per form to 10.
Furthermore, Typeform is known for its clean and user-friendly look. In addition, there is a WordPress plugin to embed your forms into your site without code. The drag-and-drop interface is fluid and easy to use, and the styling options are sophisticated enough to incorporate your branding into your forms.
The service is free for less than 10 submissions and less than 10 questions per form and starts at 252€ per year beyond. Note that Typeform adds its logo to your free forms.
JotForm is similar to Typeform in its offerings and options. This application also allows you to create simple or complex forms and offers all its features for free. But there are fewer restrictions. Each month, you will be allowed 100 submissions, five forms, 1000 views of your forms and 10 payments.
If these constraints don’t restrict you, but you want very advanced functionalities, JotForm proves to be a great option. You get over 10,000 templates and a WordPress plugin to add your forms to your site in a few clicks.
The service is free with the limits mentioned above and starts at $288 per year beyond. JotForm also adds its logo to your free forms.
5. Popular themes that contain a contact form module
Some themes and page builders come with a contact form module. While they are not always the most advanced, they may be perfectly suitable for your needs. If you have already purchased a theme and it has a contact form module that is sufficient for you, there is no need to install an additional plugin. The main advantage is that you can easily apply styles.
The Divi theme includes a fairly powerful contact form module. The latter is almost capable of replacing a plugin with the only downside the lack of submission storage in WordPress. Nevertheless, I would recommend this option if you need to create complex forms and already have a Divi license. Also, if you were planning to build your site with Divi, do test its module first before investing in a third-party plugin.
Close to Divi in its features, Elementor also offers a full contact form module. However, an obvious advantage over Divi is that submissions can be stored in WordPress. Therefore, if you already own the Pro version of Elementor or intend to purchase it, this module replaces the paid version of a plugin entirely.
6. Where to place your contact form?
This is another important question and one whose answer should be guided by your business needs and flows. The options are endless and it will be up to you to distinguish the most appropriate location(s).
6.1 On a dedicated page
This is the popular “contact” or “contact us” page. Simple and effective, you can add your form here, but also all your contact information such as your phone number, address and even a Google Map if your customers travel to your establishment. Depending on what you want to accomplish, such as receiving emails or phone calls, your form can be the focal point of this page or it can be relegated to the background.
6.2 In the sidebar
The sidebar of your pages can also be a good place to have a contact form. As one of the most visible and noticeable locations on your site, it can push visitors to take action and contact you. In my opinion, it also has the effect of making you very accessible by inviting users to get in touch with you straight away.
6.3 In the footer
The footer is also a location that makes sense, especially if other contact information is already included there. As opposed to the sidebar, your form will be more discrete. Which is why I advocate the footer as an additional place to add it rather than the main place.
6.4 At the bottom of an article
Finally, you can add a contact form at the bottom of your articles. If someone is interested enough to read an entire article, he or she may want to contact you, but not necessarily through a public comment.
7. Protecting your contact form from spam and attacks
As mentioned at the beginning of this article, contact forms can be exploited by hackers if they are not well coded. This is a vulnerability in any system that allows a user to send data to your site. Therefore, it is imperative to choose a trusted editor.
Also, forms are the target of many spam messages. Some seem harmless, but others contain phishing links and can be dangerous.
In this case, one of your best defences is a captcha. Most plugins, themes and integrations contain a captcha option which should reduce the number of these messages.
8. Conclusion: the solution for you
I hope this overview of WordPress contact forms has proved useful. In summary:
8.1 You need a simple contact form
Then opt for a plugin. I recommend Ninja Forms or Formidable Forms.
8.2 You need a complex contact form at a low price
Opt for an integration or the contact module of your theme. If you are not satisfied with your theme, I recommend you test Typeform and/or JotForm’s free packages and choose the service that best fits your needs. By choosing this solution, you will also have the choice to upgrade at the appropriate time.
8.3 You need a complex contact form without restrictions
Invest in a plugin or an integration. I recommend Gravity Forms or Typeform. Note that Gravity Forms offers a 30-day money-back guarantee. So you can get a full refund of your purchase if the plugin doesn’t work for you.
Do you use another solution that I haven’t mentioned? Let me know in the comments!