Contact Forms
Adding a Free Contact Form to WordPress That Actually Delivers Email
A contact form that looks perfect but never lands in an inbox is worse than no form at all — here's how to build one and confirm delivery before publishing it.
Free
Plugin options for a fully working contact form
24/7
Human support for email delivery troubleshooting
Daily
Backups before testing form or plugin changes
NVMe
Storage keeping the form editor responsive
In short
To add a contact form in WordPress for free, install a plugin such as WPForms or Contact Form 7 from the Plugins menu, build a form with name, email, subject, and message fields using the drag-and-drop or shortcode editor, then embed it on a page using the block or shortcode the plugin provides. Send a real test submission afterward to confirm the email actually arrives, and enable a spam-protection option like a honeypot field or CAPTCHA before publishing.
Testing delivery matters more than any other step, because server email settings — not the form plugin — are the most common reason contact form emails silently disappear.
A contact form is one of the few WordPress features where 'it looks like it worked' isn't good enough proof that it worked. The form submits, the visitor sees a thank-you message, and the site owner never hears about it — because the underlying PHP mail function that many themes rely on by default gets flagged as spam or blocked outright by receiving mail servers. This is precisely why testing actual delivery, not just form submission, has to happen before a contact form goes live on a real site.
Both major free plugins — WPForms and Contact Form 7 — solve the building side of the problem well; the reliability side depends more on the hosting environment sending the mail. Hosting Cheap's setup pairs a working SMTP-friendly server configuration with 24/7 human support to troubleshoot delivery if a test email doesn't show up, plus daily backups so a form configuration change that breaks something can be rolled back without redoing the whole build.
Choosing and Installing a Form Plugin
WPForms uses a visual drag-and-drop builder and includes a free version with common field types and pre-built templates, including a ready-made Simple Contact Form template that covers most needs immediately. Contact Form 7 takes a more manual approach, defining fields through shortcode-style tags in a text editor rather than dragging blocks — it's lighter-weight but requires typing tag syntax correctly.
Install either from Plugins > Add New inside the WordPress dashboard, search the plugin name, click Install, then Activate. Both appear as a new menu item in the left-hand sidebar once active — WPForms or Contact Form 7 — where the form builder lives.
Building the Form Fields
A standard contact form needs four fields: Name, Email, Subject, and Message, with Email and Message typically marked required. In WPForms, drag these fields from the panel on the left into the form preview on the right, then click any field to edit its label or mark it required in the settings panel that opens. In Contact Form 7, the default template already includes these four fields as shortcode tags, which can be reordered or relabeled directly in the text editor.
Beyond the basics, a dropdown field for 'reason for contacting us' (general inquiry, support, billing) helps route messages mentally before opening them, and a phone number field is worth adding only if a callback is a realistic next step — extra fields reduce completion rates, so add only what the message actually needs.
Confirming Email Delivery
Both plugins have a Notifications or Mail settings tab controlling which address receives submissions and what the subject line says. Set the destination address, save, then submit the form from the live page exactly as a visitor would — not from inside the plugin's preview, which can behave differently. Check the inbox, and check the spam folder too, since a first-time sender address can land there before a mail server builds trust.
If a test email never arrives anywhere, the issue usually sits at the server's mail configuration rather than the form plugin itself. This is where 24/7 human support earns its keep — confirming whether outbound mail is configured correctly, whether an SPF or DKIM record needs adjusting, or whether the destination address itself is rejecting messages from an unfamiliar sender.
Adding Spam Protection
Both plugins offer a honeypot field by default — an invisible field real visitors never see or fill in, but that spam bots often complete automatically, letting the plugin silently discard the submission. This alone blocks a meaningful share of automated spam without adding any friction for real visitors, so it's worth confirming it's enabled before worrying about anything more visible.
For sites that keep receiving spam past a honeypot, add a CAPTCHA or checkbox-style verification, available as a setting in both plugins' anti-spam options. Keep the visible challenge as light as possible — a simple checkbox generally filters enough spam without frustrating real visitors the way a distorted-text CAPTCHA can.

Reliable Email Delivery Starts With the Server, Not the Plugin
The most common reason a perfectly built contact form never delivers a message is server-side mail configuration, not a plugin setting — this is why testing on the actual live host matters more than testing in a local environment or a plugin's internal preview. A hosting environment configured correctly for outbound mail closes this gap before it becomes an invisible, ongoing problem.
24/7 human support means a delivery issue gets a real answer instead of hours of guessing between plugin settings and DNS records, and daily backups mean any troubleshooting step involving form or plugin changes can be undone instantly if it doesn't help.
- 24/7 human support to troubleshoot silent email delivery failures
- Daily backups before testing form or plugin configuration changes
- NVMe SSD + LiteSpeed for a fast, responsive form-building experience
- Free auto-renewing SSL so submitted form data travels encrypted
Why Hosting Cheap
What you get
24/7 human support
Real help diagnosing why a test contact form email never arrived.
Daily backups
A safe rollback point while testing form settings or new plugins.
NVMe SSD + LiteSpeed
A responsive drag-and-drop form builder without lag in the admin.
Free auto-renewing SSL
Encrypts form submissions in transit, including names and messages.
1-click WordPress installer
Get a fresh WordPress site running fast enough to add a contact form same-day.
30-day money-back guarantee
Test the full setup, forms included, without commitment risk.
How It Works
Get set up in a few steps
Install a free form plugin
Add WPForms or Contact Form 7 from Plugins > Add New and activate it.
Build fields and set the notification email
Add name, email, subject, and message fields, then set where submissions should be delivered.
Test delivery and enable spam protection
Submit the live form as a visitor would, confirm the email arrives, then enable a honeypot or CAPTCHA.
Included
Everything you need, on every plan
- Form plugin installed and activated from the Plugins menu
- Name, email, subject, and message fields added and required fields marked
- Notification email address set correctly in plugin settings
- Form embedded on a live page using the plugin's block or shortcode
- Real test submission sent from the live page, not the plugin preview
- Test email confirmed received, including a check of the spam folder
- Honeypot spam protection confirmed enabled
- CAPTCHA or checkbox verification added if spam continues after the honeypot
FAQ
Frequently asked questions
Is there a truly free way to add a contact form to WordPress?
Yes. Both WPForms and Contact Form 7 offer free versions covering standard fields, email notifications, and basic spam protection — no paid upgrade is required for a functional contact form.
Why isn't my WordPress contact form sending emails?
This is almost always a server-side mail delivery issue rather than a plugin problem. Test with a real submission from the live page, check spam folders, and if nothing arrives, server mail configuration is the likely cause.
WPForms or Contact Form 7 — which is easier for beginners?
WPForms, thanks to its visual drag-and-drop builder and pre-built templates. Contact Form 7 is lighter-weight but requires editing shortcode-style tags directly, which suits users more comfortable with basic markup.
How do I stop spam submissions on my WordPress contact form?
Start with the built-in honeypot field, enabled by default in most form plugins, which silently discards bot submissions. If spam continues, add a CAPTCHA or simple checkbox verification from the plugin's anti-spam settings.
Can I add a dropdown or file upload field to a contact form?
Yes, both major plugins support additional field types including dropdowns, checkboxes, and file uploads, though adding more fields than necessary tends to reduce completion rates.
Do I need to test my contact form after building it?
Yes, always. Submit it exactly as a visitor would from the live published page and confirm the notification email actually arrives, since a successful on-screen submission doesn't guarantee the email was delivered.
Host Your Contact Forms Somewhere Mail Actually Delivers
WordPress hosting from $4.19/mo with 24/7 support to troubleshoot delivery issues fast.
Get Started