The forms people finish ask for five things or fewer, put labels above the fields, bring up the right keyboard on a phone, stop spam without puzzles, and tell the person what happens next. Most forms fail on at least two of those. The contact form is the one part of a website with a direct line to revenue, and it’s usually the part nobody has tested since launch. We regularly find forms that have been quietly broken for months, sending enquiries to an old staff member’s inbox or into spam. The owner just thought it was a slow patch.
So before anything else: go to your site now, fill in your own form, and check it arrives. Then come back and read the rest.
A before and after
This is the kind of form we typically find on a local builder’s site:
Before (11 fields): Title (dropdown: Mr/Mrs/Ms/Dr), First name, Last name, Email, Confirm email, Phone, Address, Suburb, Postcode, How did you hear about us? (required), Message. Then a CAPTCHA asking you to pick all the traffic lights.
Every one of those fields had a reason when someone added it. Together they make a phone user give up halfway.
After (5 fields): Name, Phone, Suburb, What do you need? (dropdown: new build, renovation, extension, repairs, something else), Tell us a bit about the job (optional). Spam protection runs invisibly.
The “after” asks for what the builder needs to decide whether to call back and how to prepare: who, how to reach them, where, and what kind of job. Address, postcode and “how did you hear about us” can wait for the phone call.
Ask only what you need to respond
For each field, ask yourself: if this was missing, could I still respond to the enquiry? If yes, cut it or make it optional.
A few that are usually safe to drop:
- Title. Nobody needs it, and it creates awkwardness.
- Separate first and last name. One “Name” field is fine.
- Confirm email. Annoying on a phone, and autofill means typos are rarer than they used to be.
- Full address. Suburb is enough to know if you service the area.
- “How did you hear about us?” Useful, but never compulsory. Ask on the phone instead.
There’s one good reason to add a field: to filter out enquiries you don’t want. A dropdown for job type, a budget range, or a suburb field all help you prioritise. Just don’t add more than one or two.
Labels and errors
Put a clear label above every field. Placeholder text inside the box (“Your name”) disappears as soon as someone starts typing, so they lose track of what the field was for. It’s also harder for people using screen readers.
Mark optional fields as “(optional)” rather than putting asterisks on required ones. It’s clearer, and if most fields are required, you’ll notice you have too many.
When something’s wrong, say what and where, in plain words, next to the field: “Please enter a phone number we can call you on.” Not a red banner at the top saying “There was an error with your submission.”
The right field types for phones
Most form enquiries come from phones, and the field type controls which keyboard appears. Getting this right is a small build detail that makes a real difference.
| Field | Set it up as | What the visitor sees |
|---|---|---|
| Phone | Telephone field | Number pad |
| Email field | Keyboard with @ and .com | |
| Suburb or postcode | Text field (or number for postcode) | Standard keyboard / number pad |
| Job type | Dropdown or radio buttons | A list to tap, no typing |
| Message | Multi-line text area, optional | Space to type if they want |
Most form builders, including Elementor Forms, let you pick these field types directly. Also make sure fields support the browser’s autofill, so a phone can fill in name, email and phone number in one tap. And keep form text at 16 pixels or larger, or iPhones will zoom in on every field.
Spam protection that doesn’t punish humans
Spam is real. Every public form gets it. But the fix shouldn’t be making customers prove they’re human by clicking on blurry bicycles.
In order of what we’d try:
- A honeypot field. A hidden field that humans never see but bots fill in. Submissions with it filled are discarded. Most form plugins have this built in, and it stops a large share of basic spam on its own.
- An invisible challenge. Google reCAPTCHA v3 or Cloudflare Turnstile check visitors in the background without a puzzle. Turnstile is free and works without routing your site through Cloudflare.
- Simple rules. Blocking submissions containing links, or messages in scripts your business never receives, catches a lot of the rest.
Puzzle CAPTCHAs are a last resort. They frustrate real people, particularly older customers and anyone using assistive technology.
What should happen after someone hits submit
This is where most forms drop the ball. Someone has just asked you for help. Tell them what happens now.
On the screen. Send them to a thank-you page, or show a clear message in place of the form. Say when to expect a reply and what to do if it’s urgent: “Thanks Sarah, we’ve got your message. We reply within one business day. If it’s urgent, call us on 0400 000 000.” A separate thank-you page also makes it easy to track enquiries in Google Analytics.
In their inbox. An automatic confirmation email with a copy of what they sent. It reassures them the message went through and gives them something to reply to.
In your inbox. The notification should go to someone who checks email daily, with the visitor’s email set as the reply-to address so you can just hit reply. If notifications go to spam or don’t arrive at all, the cause is usually how WordPress sends email. Our guide to why emails from your WordPress site go missing explains the fix.
As a backup. Store submissions on the site as well as emailing them, so nothing is lost if email fails.
If you run a health practice, be careful about what you invite people to send through a general form. Our article on privacy and contact forms for health practices covers that in detail.
Your form checklist
- Tested this week, and the enquiry arrived
- Five fields or fewer, with optional ones marked
- Labels above fields, not placeholders
- Phone and email fields bring up the right keyboard
- Spam protection with no puzzle for real people
- Clear message after submitting, with response time
- Auto-reply to the customer
- Notifications going to an inbox someone checks
- Submissions stored on the site as a backup
Where the form sits matters too: it should be on your contact page and within reach at the end of each service page, which we cover in how many pages a small business website needs.
Failing more than two of these? Fixing a form is usually an hour or two of work, not a project, so it’s worth doing before the next enquiry goes missing. Our WordPress and Elementor fixes start from $150 + GST. Tell us what’s going on with yours, or have it built right first time as part of a new website.