Elevance. Book a 15-min call

Answer

How do I know if my contact form is broken?

Test it by submitting your own form from a phone on cellular data, using an email address you can check, with a message you will recognise. If nothing arrives within five minutes, your form is broken. Most broken forms still display a success message, so a working confirmation proves nothing. The three usual causes are a placeholder handler, an unconfigured endpoint, and unauthenticated server email being silently discarded.

Time to test
5 minutes
What a success message proves
nothing
Cause 1
placeholder handler left from development
Cause 2
form endpoint never configured
Cause 3
server email discarded as unauthenticated
The real fix
store submissions in a database, not just email

Why the success message is meaningless

Almost every broken form we find still tells the visitor their message was sent. That is what makes this fault so expensive — nobody complains, because from the visitor's side everything worked. They wait for a reply that never comes, then hire somebody else.

Developers routinely build the confirmation behaviour before the sending behaviour, using a placeholder that shows the success state so the design can be reviewed. If that placeholder is not removed before launch, the form permanently pretends. We found exactly this on our own site, months after launch.

The five-minute test

Use a phone, on cellular data rather than your office wifi, because that is how your customers arrive. Use a personal email address, not one on your company domain, since same-domain mail can behave differently. Write something unmistakable in the message field so you can search for it.

Submit it. Then check three places: your inbox, your spam folder, and — if you have a form plugin — its entries list inside your website admin. If the entry appears in the admin but not your inbox, your email delivery is broken rather than your form. If it appears nowhere, the form itself is.

Do this once a month. Forms break silently after plugin updates, hosting migrations and DNS changes, and there is no alert when they do.

The three causes, and what each looks like

A placeholder handler shows success instantly or after a fixed delay, and usually clears the fields. In the page source you will often find a comment saying something like 'replace with real endpoint'.

An unconfigured endpoint means the form posts somewhere that does not exist. This one usually produces a visible error, so it is the least damaging of the three.

Silently discarded email is the most common and the hardest to spot. The form works, the server accepts the message, and the receiving mail provider drops it because the sending server is not authorised to send for your domain. Nothing bounces. Nothing errors.

The fix that makes it permanent

Send email through a proper delivery service rather than the web server — Postmark, Brevo, SES or similar. That solves the deliverability half.

Then, more importantly, store every submission in your website's database as well as emailing it. Email should be a notification, never the record. Once submissions are stored, a mail failure costs you a delay rather than a customer, and you can go back and find enquiries you never received.

Related questions we get

How often should I test my form?

Monthly, and after any plugin update, hosting change or DNS change. Put it in a recurring calendar reminder — it takes five minutes and it is the highest-return five minutes in your marketing.

What if submissions go to spam?

That is the same underlying problem as silent discarding — your domain is not authenticating its outgoing mail. Setting up SPF, DKIM and DMARC records, or routing through a delivery service, fixes both.

Should I use a form plugin or a custom form?

A plugin, in almost every case, because plugins store entries in the database by default. A custom form that only emails will lose enquiries the first time mail fails.

Can I find enquiries I already lost?

Only if they were stored somewhere. If the form only ever emailed, they are gone. This is the argument for storing submissions, and it is usually the argument that persuades people.

More answers

Want this checked on your own site?

Send the URL. The audit is free, it takes us about twenty minutes, and it comes back in two working days.

Book a 15-minute call.

Fifteen minutes, no pitch. Tell us what the site is meant to do and what it is doing instead. If we are not the right fit we will say so and point you somewhere better.

Prefer to talk now?

(416) 333-6200

Or email hello@elevancelabs.ca directly.